Rychlý Start: nasazení prvního modulu IoT Edge do virtuálního zařízení se systémem Linux
Platí pro:
IoT Edge 1,1 jiných verzí: IoT Edge 1,2
Platí pro:
IoT Edge 1,2 jiných verzí: IoT Edge 1,1
Vyzkoušejte si Azure IoT Edge v tomto rychlém startu nasazením kontejneru kódu na virtuální Linux IoT Edge zařízení. IoT Edge vám umožní vzdáleně spravovat kód na svých zařízeních, abyste mohli do hraničních zařízení odesílat další úlohy. Pro tento rychlý Start doporučujeme použít pro zařízení IoT Edge virtuální počítač Azure, který vám umožní rychle vytvořit testovací počítač a po dokončení ho odstranit.
V tomto rychlém startu se naučíte:
- Vytvořit IoT Hub.
- Zaregistrovat zařízení IoT Edge do centra IoT Hub.
- Nainstalujte a spusťte modul runtime IoT Edge na virtuálním zařízení.
- Vzdáleně nasadit modul na zařízení IoT Edge.

Tento rychlý Start vás provede vytvořením virtuálního počítače se systémem Linux, který je nakonfigurován jako zařízení IoT Edge. Pak modul nasadíte z Azure Portal do svého zařízení. Modul použitý v tomto rychlém startu je simulovaný senzor, který generuje data o teplotě, vlhkosti a tlaku. Ostatní kurzy Azure IoT Edge sestavují na práci, kterou tady provedete, nasazením dalších modulů, které analyzují Simulovaná data pro Business Insights.
Pokud nemáte aktivní předplatné Azure, vytvořte si bezplatný účet před tím, než začnete.
Požadavky
Připravte prostředí pro rozhraní příkazového řádku Azure CLI.
V nástroji použijte prostředí Bash Azure Cloud Shell.
Pokud tomu dáváte přednost, můžete nainstalovat Azure CLI a spouštět referenční příkazy CLI.
Pokud používáte místní instalaci, přihlaste se k Azure CLI pomocí příkazu az login. Pokud chcete dokončit proces ověřování, postupujte podle kroků zobrazených na terminálu. Další možnosti přihlášení jsou popsané v tématu Přihlášení pomocí Azure CLI.
Po zobrazení výzvy nainstalujte rozšíření Azure CLI při prvním použití. Další informace o rozšířeních najdete v tématu Využití rozšíření v Azure CLI.
Spuštěním příkazu az version zjistěte verzi a závislé knihovny, které jsou nainstalované. Pokud chcete upgradovat na nejnovější verzi, spusťte az upgrade.
Cloudové prostředky:
Skupina prostředků pro správu všech prostředků, které v tomto rychlém startu použijete. V tomto rychlém startu používáme příklad názvu skupiny prostředků IoTEdgeResources a následujících kurzech.
az group create --name IoTEdgeResources --location westus2
Vytvoření centra IoT
Začněte s rychlým startem vytvořením služby IoT Hub pomocí Azure CLI.

Pro tento rychlý start můžete použít bezplatnou úroveň IoT Hubu. Pokud jste v minulosti používali IoT Hub a už máte vytvořeného centra, můžete použít toto centrum IoT.
Následující kód vytvoří bezplatný rozbočovač F1 ve skupině prostředků IoTEdgeResources. Nahraďte {hub_name} jedinečným názvem vašeho centra IoT. Vytvoření IoT Hub může trvat několik minut.
az iot hub create --resource-group IoTEdgeResources --name {hub_name} --sku F1 --partition-count 2
Pokud dojde k chybě kvůli tomu, že vaše předplatné již jedno bezplatné centrum obsahuje, změňte skladovou položku na S1. V každém předplatném může být jenom jeden bezplatný IoT Hub. Pokud se zobrazí chyba, že název IoT Hub není k dispozici, znamená to, že někdo jiný již má centrum s tímto názvem. Zkuste nový název.
Zaregistrovat zařízení IoT Edge
Zaregistrujte zařízení IoT Edge do nově vytvořeného centra IoT.

Vytvořte identitu zařízení pro zařízení IoT Edge, aby mohla komunikovat se službou IoT Hub. Identita zařízení se uchovává v cloudu a k přidružení fyzického zařízení k identitě zařízení se používá jedinečný připojovací řetězec zařízení.
Vzhledem k tomu, že se zařízení IoT Edge chovají a dají se spravovat jinak než typická zařízení IoT, deklarujte tuto identitu pro IoT Edge zařízení s --edge-enabled příznakem.
V Azure Cloud Shell zadejte následující příkaz, který ve svém rozbočovači vytvoří zařízení s názvem myEdgeDevice .
az iot hub device-identity create --device-id myEdgeDevice --edge-enabled --hub-name {hub_name}Pokud se zobrazí chyba týkající se klíčů zásad iothubowner, ujistěte se, že na Cloud Shell běží nejnovější verze rozšíření Azure-IoT.
Zobrazení připojovacího řetězce pro vaše zařízení, který propojuje fyzické zařízení s jeho identitou v IoT Hub. Obsahuje název vašeho centra IoT, název vašeho zařízení a pak sdílený klíč, který ověřuje připojení mezi nimi. Až nakonfigurujete zařízení IoT Edge, budeme se k tomuto připojovacímu řetězci znovu odkazovat v další části.
az iot hub device-identity connection-string show --device-id myEdgeDevice --hub-name {hub_name}
Konfigurace zařízení IoT Edge
Vytvořte virtuální počítač s modulem runtime Azure IoT Edge.

Modul runtime IoT Edge se nasadí na všechna zařízení IoT Edge. Skládá se ze tří částí. IoT Edge démon zabezpečení se spustí pokaždé, když se spustí IoT Edge zařízení, a spustí agenta IoT Edge. Agent IoT Edge usnadňuje nasazení a monitorování modulů na zařízení IoT Edge, včetně centra IoT Edge. Centrum IoT Edge spravuje komunikaci mezi moduly v zařízení IoT Edge a mezi zařízením a IoT Hub.
Během konfigurace modulu runtime zadáte připojovací řetězec zařízení. Toto je řetězec, který jste získali z Azure CLI. Tento řetězec přidruží vaše fyzické zařízení k identitě zařízení IoT Edge v Azure.
Nasazení zařízení IoT Edge
Tato část používá šablonu Azure Resource Manager k vytvoření nového virtuálního počítače a instalaci IoT Edge modulu runtime. Pokud místo toho chcete použít vlastní zařízení se systémem Linux, můžete postupovat podle pokynů k instalaci v části Ruční zřízení jednoho zařízení se systémem linux IoT Edgea pak se vraťte k tomuto rychlému startu.
Pomocí následujícího příkazu rozhraní příkazového řádku vytvořte zařízení IoT Edge na základě předem sestavené šablony iotedge-VM-Deploy .
Pro uživatele bash nebo Cloud Shell zkopírujte následující příkaz do textového editoru, nahraďte zástupný text vašimi informacemi a pak zkopírujte do svého bash a Cloud Shell okna:
az deployment group create \ --resource-group IoTEdgeResources \ --template-uri "https://aka.ms/iotedge-vm-deploy" \ --parameters dnsLabelPrefix='<REPLACE_WITH_VM_NAME>' \ --parameters adminUsername='azureUser' \ --parameters deviceConnectionString=$(az iot hub device-identity connection-string show --device-id myEdgeDevice --hub-name <REPLACE_WITH_HUB_NAME> -o tsv) \ --parameters authenticationType='password' \ --parameters adminPasswordOrKey="<REPLACE_WITH_PASSWORD>"V případě uživatelů PowerShellu zkopírujte do okna PowerShellu následující příkaz a potom zástupný text nahraďte vlastními informacemi:
az deployment group create ` --resource-group IoTEdgeResources ` --template-uri "https://aka.ms/iotedge-vm-deploy" ` --parameters dnsLabelPrefix='<REPLACE_WITH_VM_NAME>' ` --parameters adminUsername='azureUser' ` --parameters deviceConnectionString=$(az iot hub device-identity connection-string show --device-id myEdgeDevice --hub-name <REPLACE_WITH_HUB_NAME> -o tsv) ` --parameters authenticationType='password' ` --parameters adminPasswordOrKey="<REPLACE_WITH_PASSWORD>"
Pomocí následujícího příkazu rozhraní příkazového řádku vytvořte zařízení IoT Edge na základě předem sestavené šablony iotedge-VM-Deploy .
Pro uživatele bash nebo Cloud Shell zkopírujte následující příkaz do textového editoru, nahraďte zástupný text vašimi informacemi a pak zkopírujte do svého bash a Cloud Shell okna:
az deployment group create \ --resource-group IoTEdgeResources \ --template-uri "https://raw.githubusercontent.com/Azure/iotedge-vm-deploy/1.2.0/edgeDeploy.json" \ --parameters dnsLabelPrefix='<REPLACE_WITH_VM_NAME>' \ --parameters adminUsername='azureUser' \ --parameters deviceConnectionString=$(az iot hub device-identity connection-string show --device-id myEdgeDevice --hub-name <REPLACE_WITH_HUB_NAME> -o tsv) \ --parameters authenticationType='password' \ --parameters adminPasswordOrKey="<REPLACE_WITH_PASSWORD>"V případě uživatelů PowerShellu zkopírujte do okna PowerShellu následující příkaz a potom zástupný text nahraďte vlastními informacemi:
az deployment group create ` --resource-group IoTEdgeResources ` --template-uri "https://raw.githubusercontent.com/Azure/iotedge-vm-deploy/1.2.0/edgeDeploy.json" ` --parameters dnsLabelPrefix='<REPLACE_WITH_VM_NAME>' ` --parameters adminUsername='azureUser' ` --parameters deviceConnectionString=$(az iot hub device-identity connection-string show --device-id myEdgeDevice --hub-name <REPLACE_WITH_HUB_NAME> -o tsv) ` --parameters authenticationType='password' ` --parameters adminPasswordOrKey="<REPLACE_WITH_PASSWORD>"
Tato šablona používá následující parametry:
| Parametr | Popis |
|---|---|
| Skupina prostředků | Skupina prostředků, ve které se prostředky vytvoří. Použijte výchozí IoTEdgeResources , který jsme používali v rámci tohoto článku, nebo zadejte název existující skupiny prostředků v rámci vašeho předplatného. |
| identifikátor URI šablony | Ukazatel na šablonu Správce prostředků, kterou používáme. |
| dnsLabelPrefix | Řetězec, který se použije k vytvoření názvu hostitele virtuálního počítače. Nahraďte zástupný text názvem pro váš virtuální počítač. |
| adminUsername | Uživatelské jméno pro účet správce virtuálního počítače. Použijte vzorový azureUser nebo zadejte nové uživatelské jméno. |
| deviceConnectionString | Připojovací řetězec z identity zařízení v IoT Hub, který se používá ke konfiguraci modulu runtime IoT Edge na virtuálním počítači. Příkaz CLI v rámci tohoto parametru přiřadí připojovací řetězec za vás. Zástupný text nahraďte názvem služby IoT Hub. |
| authenticationType | Metoda ověřování pro účet správce. V tomto rychlém startu se používá ověřování hesla , ale můžete tento parametr nastavit i na sshPublicKey. |
| adminPasswordOrKey | Heslo nebo hodnota klíče SSH pro účet správce. Zástupný text nahraďte zabezpečeným heslem. Heslo musí mít aspoň 12 znaků a musí obsahovat tři ze čtyř z následujících znaků: malá písmena, Velká písmena, číslice a speciální znaky. |
Po dokončení nasazení byste měli v rozhraní příkazového řádku (CLI) zobrazit výstup ve formátu JSON, který obsahuje informace SSH pro připojení k virtuálnímu počítači. Zkopírujte hodnotu veřejné položky SSH v části výstupy :

Zobrazení stavu modulu runtime IoT Edge
Zbývající příkazy v tomto rychlém startu se uskuteční na svém IoT Edge samotném zařízení, abyste viděli, co se děje na zařízení. Pokud používáte virtuální počítač, připojte se k tomuto počítači teď pomocí uživatelského jména správce, které jste nastavili, a názvu DNS, který byl vydaný příkazem nasazení. Název DNS můžete také najít na stránce Přehled na svém virtuálním počítači v Azure Portal. Pokud se chcete připojit k virtuálnímu počítači, použijte následující příkaz. Nahraďte {admin username} a {DNS name} vlastními hodnotami.
ssh {admin username}@{DNS name}
Po připojení k virtuálnímu počítači ověřte, že se modul runtime úspěšně nainstaloval a nakonfiguroval na IoT Edge zařízení.
Zkontrolujte, jestli IoT Edge proces démon zabezpečení běží jako systémová služba.
sudo systemctl status iotedge
Tip
Ke spouštění příkazů
iotedgepotřebujete zvýšená oprávnění. Vaše oprávnění se automaticky aktualizují, jakmile se po instalaci modulu runtime IoT Edge odhlásíte z počítače a poprvé se k němu opět přihlásíte. Do té doby použijtesudopřed příkazy .Pokud potřebujete řešit potíže se službou, načtěte protokoly služby.
journalctl -u iotedgeZobrazte všechny moduly spuštěné na vašem zařízení IoT Edge. Vzhledem k tomu, že jde o první spuštění služby, měl by se zobrazit pouze spuštěný modul edgeAgent. Modul edgeAgent běží ve výchozím nastavení a pomáhá nainstalovat a spustit všechny další moduly, které nasadíte do zařízení.
sudo iotedge list
Zkontrolujte, jestli IoT Edge spuštěná. Následující příkaz by měl vrátit stav OK, pokud IoT Edge spuštěná, nebo uveďte případné chyby služby.
sudo iotedge system statusTip
Ke spouštění příkazů
iotedgepotřebujete zvýšená oprávnění. Vaše oprávnění se automaticky aktualizují, jakmile se po instalaci modulu runtime IoT Edge odhlásíte z počítače a poprvé se k němu opět přihlásíte. Do té doby použijtesudopřed příkazy .Pokud potřebujete řešit potíže se službou, načtěte protokoly služby.
sudo iotedge system logsZobrazte všechny moduly spuštěné na vašem zařízení IoT Edge. Vzhledem k tomu, že jde o první spuštění služby, měl by se zobrazit pouze spuštěný modul edgeAgent. Modul edgeAgent běží ve výchozím nastavení a pomáhá nainstalovat a spustit všechny další moduly, které nasadíte do zařízení.
sudo iotedge list
Teď je zařízení IoT Edge nakonfigurované. Je připravené na spouštění modulů nasazených v cloudu.
Nasazení modulu
Pokud budete zařízení Azure IoT Edge spravovat v cloudu, můžete nasadit modul, který bude odesílat telemetrická data do služby IoT Hub.

Jednou z klíčových funkcí služby Azure IoT Edge nasazení kódu do vašich IoT Edge zařízení z cloudu. IoT Edge moduly jsou spustitelné balíčky implementované jako kontejnery. V této části nasadíte předem sestavený modul z oddílu IoT Edge Modules v Azure Marketplace přímo z Azure IoT Hub.
Modul, který v této části nasadíte, simuluje senzor a odesílá generovaná data. Tento modul je užitečnou částí kódu, když začínáte s IoT Edge, protože simulovaná data můžete použít pro vývoj a testování. Pokud chcete přesně zjistit, co tento modul dělá, můžete si prohlédnout zdrojový kód simulovaného senzoru teploty.
Podle těchto kroků spusťte průvodce nastavením modulů a nasaďte svůj první modul z Azure Marketplace.
Přihlaste se k Azure Portal a přejděte do centra IoT.
V nabídce na levé straně v části Automatické Správa zařízení vyberte IoT Edge.
V seznamu zařízení vyberte ID cílového zařízení.
Když vytvoříte novou IoT Edge zařízení, zobrazí se stavový kód v
417 -- The device's deployment configuration is not setAzure Portal. Tento stav je normální a znamená, že zařízení je připravené přijmout nasazení modulu.Na horním panelu vyberte Nastavit moduly.

Moduly
Prvním krokem průvodce je výběr modulů, které chcete na zařízení spustit.
V IoT Edge Module(Moduly) otevřete rozevírací nabídku Add (Přidat) a pak vyberte Marketplace Module (Modul Marketplace).

V IoT Edge Module Marketplace vyhledejte a vyberte modul Simulated Temperature Sensor . Modul se přidá do části IoT Edge Modules s požadovaným stavem spuštění.
Vyberte Runtime Nastavení a otevřete nastavení modulů edgeHub a edgeAgent. V této části nastavení můžete spravovat moduly runtime přidáním proměnných prostředí nebo změnou možností vytvoření.
Aktualizujte pole Image pro moduly edgeHub i edgeAgent tak, aby se používá značka verze 1.2. Například:
mcr.microsoft.com/azureiotedge-hub:1.2mcr.microsoft.com/azureiotedge-agent:1.2
Vyberte Uložit, aby se změny aplikují na moduly modulu runtime.
Vyberte Další: Trasy a pokračujte dalším krokem průvodce.

Trasy
Na kartě Trasy odeberte výchozí trasu, trasu a pak vyberte Další: Zkontrolovat a vytvořit. Pokračujte dalším krokem průvodce.
Poznámka
Trasy se konstruuje pomocí párů název-hodnota. Na této stránce byste měli vidět dvě trasy. Výchozí trasa, trasa, odesílá všechny zprávy do IoT Hub (která se nazývá $upstream ). Druhá trasa SimulatedTemperatureSensorToIoTHub se vytvořila automaticky při přidání modulu z Azure Marketplace. Tato trasa odesílá všechny zprávy ze simulovaného modulu teploty do IoT Hub. Výchozí trasu můžete odstranit, protože je v tomto případě redundantní.

Zkontrolovat a vytvořit
Zkontrolujte soubor JSON a pak vyberte Vytvořit. Soubor JSON definuje všechny moduly, které nasadíte do svého IoT Edge zařízení. Zobrazí se modul SimulatedTemperatureSensor a dva moduly runtime edgeAgent a edgeHub.
Poznámka
Když do zařízení IoT Edge odešlete nové nasazení, do zařízení se nic nevloží. Zařízení místo toho pravidelně odesílá do IoT Hubu dotazy týkající se nových pokynů. Pokud zařízení najde aktualizovaný manifest nasazení, použije informace o novém nasazení k vyžádání imagí modulu z cloudu a potom začne spouštět moduly místně. Tento proces může trvat několik minut.
Po vytvoření podrobností o nasazení modulu vás průvodce vrátí na stránku s podrobnostmi o zařízení. Podívejte se na stav nasazení na kartě Moduly.
Měly by se zobrazit tři moduly: $edgeAgent, $edgeHub a SimulatedTemperatureSensor. Pokud má jeden nebo více modulů v části ZADANÉ V NASAZENÍ hodnotu ANO, ale ne v části HLÁŠENO ZAŘÍZENÍM , IoT Edge zařízení stále spouští. Počkejte několik minut a pak aktualizujte stránku.

Zobrazit vygenerovaná data
V tomto rychlém startu jste vytvořili nové zařízení IoT Edge a nainstalovali jste na něj modul runtime IoT Edge. Pak jste použili Azure Portal k nasazení modulu IoT Edge, který se spustí na zařízení, aniž byste museli provádět změny samotného zařízení.
V tomto případě modul, který jste nasadili, generuje ukázková data prostředí, která můžete použít pro pozdější testování. Simulovaný senzor monitoruje počítač i prostředí kolem počítače. Tento senzor může být například v serverové místnosti, v továrně nebo na větrné turbíně. Zpráva obsahuje okolní teplotu a vlhkost, teplotu a tlak počítače a časové razítko. V IoT Edge se data vytvořená v tomto modulu používají jako testovací data pro analýzu.
V zařízení IoT Edge znovu otevřete příkazový řádek nebo použijte připojení SSH z Azure CLI. Zkontrolujte, že modul, který jste nasadili z cloudu, běží na zařízení IoT Edge:
sudo iotedge list


Prohlédněte si zprávy odesílané z modulu senzoru teploty:
sudo iotedge logs SimulatedTemperatureSensor -f
Tip
IoT Edge příkazy rozlišují velká a malá písmena při odkazování na názvy modulů.

Zprávy přicházejíné do centra IoT můžete sledovat také pomocí rozšíření Azure IoT Hub pro Visual Studio Code.
Vyčištění prostředků
Pokud chcete pokračovat dalšími kurzy o IoT Edge, použijte zařízení, které jste zaregistrovali a nastavili v tomto rychlém startu. Jinak můžete vytvořené prostředky Azure odstranit, abyste se vyhnuli poplatkům.
Pokud jste virtuální počítač a centrum IoT vytvořili v nové skupině prostředků, můžete odstranit tuto skupinu a všechny související prostředky. Zkontrolujte obsah skupiny prostředků a ujistěte se, že není nic, co byste měli zachovat. Pokud nechcete odstranit celou skupinu, můžete místo toho odstranit jednotlivé prostředky.
Důležité
Odstranění skupiny prostředků je nevratné.
Odeberte skupinu IoTEdgeResources. Odstranění skupiny prostředků může trvat několik minut.
az group delete --name IoTEdgeResources --yes
Skupinu prostředků můžete potvrdit tak, že si zobrazíte seznam skupin prostředků.
az group list
Další kroky
V tomto rychlém startu jste vytvořili zařízení IoT Edge a pomocí Azure IoT Edge cloudového rozhraní nasadíte kód do zařízení. Teď máte testovací zařízení, které generuje nezpracovaná data o prostředí.
V dalším kurzu se dozvíte, jak monitorovat aktivitu a stav zařízení z Azure Portal.
