Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Platí pro:
IoT Edge 1.1
Důležité
Datum ukončení podpory ioT Edge 1.1 bylo 13. prosince 2022. Informace o tom, jak se tento produkt, služba, technologie nebo rozhraní API podporují, najdete v životním cyklu produktů Společnosti Microsoft . Další informace o aktualizaci na nejnovější verzi IoT Edge najdete v tématu Aktualizace IoT Edge.
Tento článek obsahuje kompletní pokyny k automatickému zřízení jednoho nebo více IoT Edge pro Linux na zařízeních s Windows pomocí certifikátů X.509. Zařízení Azure IoT Edge můžete automaticky zřídit pomocí služby pro zřizování zařízení Azure IoT Hub (DPS). Než budete pokračovat, pokud neznáte proces automatického zřizování, projděte si přehled zřizování.
Úkoly jsou následující:
- Vygenerujte certifikáty a klíče.
- Vytvořte individuální registraci pro jedno zařízení nebo skupinovou registraci pro sadu zařízení.
- Nasaďte virtuální počítač s Linuxem s nainstalovaným modulem runtime IoT Edge a připojte ho ke službě IoT Hub.
Použití certifikátů X.509 jako mechanismu ověřování představuje skvělý způsob škálování produkčního prostředí a zjednodušení zřizování zařízení. Certifikáty X.509 jsou obvykle uspořádány v řetězu certifikátů důvěryhodnosti. Počínaje certifikátem podepsaným svým držitelem nebo důvěryhodným kořenovým certifikátem podepíše každý certifikát v řetězu další nižší certifikát. Tento model vytvoří delegovaný řetěz důvěryhodnosti z kořenového certifikátu směrem dolů přes každý zprostředkující certifikát až po konečný certifikát podřízeného zařízení nainstalovaný na zařízení.
Požadavky
Cloudové prostředky
- Aktivní centrum IoT
- Instance služby IoT Hub device Provisioning v Azure propojená s centrem IoT
- Pokud nemáte instanci služby zřizování zařízení, můžete postupovat podle pokynů v vytvoření nové služby zřizování zařízení IoT Hubu a propojení centra IoT a služby zřizování zařízení v rychlém startu služby zřizování zařízení IoT Hubu.
- Po zprovoznění služby zajišťování zařízení zkopírujte hodnotu ID rozsah ze stránky přehledu. Tuto hodnotu použijete při konfiguraci modulu runtime IoT Edge.
Požadavky na zařízení
Zařízení s Windows s následujícími minimálními požadavky:
Požadavky na systém
- Windows 101/11 (Pro, Enterprise, IoT Enterprise)
- Windows Server 20191/2022
1 Windows 10 a Windows Server 2019 minimálně build 17763 s nainstalovanými všemi aktuálními kumulativními aktualizacemi.
Požadavky na hardware
- Minimální volné paměti: 1 GB
- Minimální volné místo na disku: 10 GB
Podpora virtualizace
- Na Windows 10 zapněte Hyper-V. Další informace najdete v tématu Instalace Hyper-V ve Windows 10.
- Na Windows Serveru nainstalujte roli Hyper-V a vytvořte výchozí síťový přepínač. Další informace najdete v tématu Vnořené virtualizace pro Azure IoT Edge pro Linux ve Windows.
- Na virtuálním počítači nakonfigurujte vnořenou virtualizaci. Další informace najdete ve vnořené virtualizaci.
Podpora sítí
- Windows Server nemá výchozí přepínač. Než budete moct nasadit EFLOW na zařízení s Windows Serverem, musíte vytvořit virtuální přepínač. Další informace najdete v tématu Vytvoření virtuálního přepínače pro Linux ve Windows.
- Desktopové verze Windows mají výchozí přepínač, který lze použít pro instalaci EFLOW. V případě potřeby můžete vytvořit vlastní virtuální přepínač.
Návod
Pokud chcete v nasazení Azure IoT Edge pro Linux ve Windows používat moduly s akcelerovanými gpu , zvažte několik možností konfigurace.
V závislosti na architektuře GPU budete muset nainstalovat správné ovladače a možná budete potřebovat přístup k sestavení programu Windows Insider. Pokud chcete určit potřeby konfigurace a splnit tyto požadavky, podívejte se na akceleraci GPU pro Azure IoT Edge pro Linux ve Windows.
Ujistěte se, že teď potřebujete čas, abyste splnili požadavky na akceleraci GPU. Pokud se rozhodnete, že chcete akceleraci GPU během instalace, budete muset restartovat proces instalace.
Vývojářské nástroje
Ke správě zařízení IoT Edge můžete použít PowerShell nebo Centrum pro správu Windows . Každý nástroj má vlastní požadavky:
Pokud chcete použít PowerShell, pomocí následujících kroků připravte cílové zařízení na instalaci Azure IoT Edge pro Linux ve Windows a nasazení virtuálního počítače s Linuxem:
Nastavte zásadu spouštění na cílovém zařízení na
AllSigned. Aktuální zásady spouštění můžete zkontrolovat na příkazovém řádku PowerShellu se zvýšenými oprávněními pomocí následujícího příkazu:Get-ExecutionPolicy -ListPokud zásady provádění
local machinenejsouAllSigned, můžete nastavit zásady provádění pomocí:Set-ExecutionPolicy -ExecutionPolicy AllSigned -Force
Další informace o modulu Azure IoT Edge pro Linux v prostředí Windows PowerShell najdete v referenčních informacích k funkcím PowerShellu.
Generování certifikátů identit zařízení
Certifikát identity zařízení je podřízený certifikát, který se připojuje prostřednictvím řetězu certifikátů důvěryhodnosti k nejvyššímu certifikátu certifikační autority (CA) X.509. Certifikát identity zařízení musí mít své obecné jméno (CN) nastavené na ID zařízení, které chcete, aby zařízení mělo ve vašem rozbočovači IoT.
Certifikáty identit zařízení se používají jenom ke zřízení zařízení IoT Edge a ověřování zařízení pomocí Azure IoT Hubu. Na rozdíl od certifikátů certifikační autority, které zařízení IoT Edge prezentuje modulům nebo podřízeným zařízením k ověření, nejsou podpisové certifikáty. Další informace najdete v podrobnostech o využití certifikátů Azure IoT Edge.
Po vytvoření certifikátu identity zařízení byste měli mít dva soubory: soubor .cer nebo .pem, který obsahuje veřejnou část certifikátu, a soubor .cer nebo .pem s privátním klíčem certifikátu. Pokud plánujete používat skupinovou registraci ve službě DPS, potřebujete také veřejnou část certifikátu zprostředkující nebo kořenové certifikační autority ve stejném řetězu certifikátů důvěryhodnosti.
K nastavení automatického zřizování pomocí X.509 potřebujete následující soubory:
- Certifikát identity zařízení a jeho certifikát privátního klíče. Certifikát identity zařízení se nahraje do DPS, pokud vytvoříte jednotlivou registraci. Privátní klíč se předává do běhového prostředí IoT Edge.
- Úplný řetězový certifikát, který by měl mít alespoň identitu zařízení a zprostředkující certifikáty. Celý řetěz certifikátů je předáván modulu runtime IoT Edge.
- Zprostředkující nebo kořenový certifikát certifikační autority z řetězu certifikátů důvěryhodnosti. Pokud vytvoříte skupinovou registraci, tento certifikát se nahraje do DPS.
Poznámka:
V současné době omezení v libiothsm zabraňuje použití certifikátů, jejichž platnost vyprší 1. ledna 2038 nebo po 1. lednu 2038.
Použití testovacích certifikátů (volitelné)
Pokud nemáte k dispozici certifikační autoritu k vytvoření nových certifikátů identit a chcete si tento scénář vyzkoušet, úložiště Git Azure IoT Edge obsahuje skripty, které můžete použít k vygenerování testovacích certifikátů. Tyto certifikáty jsou určené jenom pro testování vývoje a nesmí se používat v produkčním prostředí.
Pokud chcete vytvořit testovací certifikáty, postupujte podle kroků v části Vytvoření ukázkových certifikátů a otestujte funkce zařízení IoT Edge. Dokončete dvě požadované části pro nastavení skriptů pro generování certifikátů a vytvoření kořenového certifikátu certifikační autority. Pak podle pokynů vytvořte certifikát identity zařízení. Až budete hotovi, měli byste mít následující řetězec certifikátů a pár klíčů.
<WRKDIR>\certs\iot-edge-device-identity-<name>-full-chain.cert.pem<WRKDIR>\private\iot-edge-device-identity-<name>.key.pem
Oba tyto certifikáty potřebujete na zařízení IoT Edge. Pokud budete používat individuální registraci ve službě DPS, nahrajete soubor .cert.pem. Pokud budete používat skupinovou registraci ve službě DPS, budete také potřebovat certifikát zprostředkující nebo kořenové certifikační autority ve stejném řetězu certifikátů důvěryhodnosti k nahrání. Pokud používáte ukázkové certifikáty, použijte <WRKDIR>\certs\azure-iot-test-only.root.ca.cert.pem certifikát pro registraci skupiny.
Vytvoření registrace DPS
Pomocí vygenerovaných certifikátů a klíčů vytvořte registraci v DPS pro jedno nebo více zařízení IoT Edge.
Pokud chcete zřídit jedno zařízení IoT Edge, vytvořte individuální registraci. Pokud potřebujete zřídit více zařízení, postupujte podle pokynů k vytvoření skupinové registrace DPS.
Při vytváření registrace v DPS máte možnost deklarovat počáteční stav dvojčete zařízení. Ve dvojčeti zařízení můžete nastavit značky pro seskupení zařízení podle libovolné metriky, kterou potřebujete v řešení, jako je oblast, prostředí, umístění nebo typ zařízení. Tyto značky slouží k vytváření automatických nasazení.
Další informace o registracích ve službě zřizování zařízení najdete v tématu Správa registrací zařízení.
Vytvořit jednotlivou registraci DPS
Jednotlivé registrace přebírají veřejnou část identifikačního certifikátu zařízení a porovnávají ji s certifikátem na zařízení.
Návod
Kroky v tomto článku jsou určené pro Azure Portal, ale pomocí Azure CLI můžete také vytvářet jednotlivé registrace. Pro více informací, viz az iot dps enrollment. V rámci příkazu CLI použijte příznak edge-enabled k určení, že registrace je pro zařízení IoT Edge.
V Azure portálu přejděte do vaší instance služby zřizování zařízení IoT Hub.
V části Nastavení vyberte Spravovat registrace.
Vyberte Přidat jednotlivé registrace a pak proveďte následující kroky a nakonfigurujte registraci:
Mechanismus: Vyberte X.509.
Soubor .pem nebo .cer primárního certifikátu: Nahrajte veřejný soubor z certifikátu identity zařízení. Pokud jste k vygenerování testovacího certifikátu použili skripty, zvolte následující soubor:
<WRKDIR>\certs\iot-edge-device-identity-<name>.cert.pemID zařízení služby IoT Hub: Pokud chcete, zadejte ID zařízení. ID zařízení můžete použít k cílení na jednotlivá zařízení pro nasazení modulu. Pokud nezadáte ID zařízení, použije se běžný název (CN) v certifikátu X.509.
Zařízení IoT Edge: Výběrem možnosti True deklarujte, že registrace je pro zařízení IoT Edge.
Vyberte centra IoT, ke kterým se toto zařízení dá přiřadit: Zvolte propojené centrum IoT, ke kterému chcete zařízení připojit. Můžete zvolit více rozbočovačů a zařízení se přiřadí k jednomu z nich podle vybraných zásad přidělování.
Počáteční stav dvojčete zařízení: Pokud chcete, můžete přidat do dvojčete zařízení hodnotu štítku. Značky můžete použít k cílení skupin zařízení pro automatické nasazení. Například:
{ "tags": { "environment": "test" }, "properties": { "desired": {} } }
Vyberte Uložit.
V části Spravovat registrace uvidíte ID registrace pro právě vytvořenou registraci. Poznamenejte si to, protože ho můžete použít při nastavování zařízení.
Nyní, když je pro toto zařízení k dispozici registrace, může IoT Edge runtime automaticky zprovoznit zařízení během instalace.
Nainstalujte IoT Edge
Nasaďte Azure IoT Edge pro Linux ve Windows na cílovém zařízení.
Nainstalujte IoT Edge pro Linux ve Windows na své cílové zařízení.
Poznámka:
Následující proces PowerShellu popisuje, jak nasadit IoT Edge pro Linux ve Windows na místní zařízení. Pokud chcete nasadit do vzdáleného cílového zařízení pomocí PowerShellu, můžete pomocí Vzdáleného PowerShellu navázat připojení ke vzdálenému zařízení a vzdáleně na daném zařízení spouštět tyto příkazy.
V relaci PowerShellu se zvýšenými oprávněními spusťte každý z následujících příkazů a stáhněte si IoT Edge pro Linux ve Windows.
$msiPath = $([io.Path]::Combine($env:TEMP, 'AzureIoTEdge.msi')) $ProgressPreference = 'SilentlyContinue' Invoke-WebRequest "https://aka.ms/AzEflowMSI" -OutFile $msiPathNainstalujte na zařízení IoT Edge pro Linux ve Windows.
Start-Process -Wait msiexec -ArgumentList "/i","$([io.Path]::Combine($env:TEMP, 'AzureIoTEdge.msi'))","/qn"Můžete určit vlastní adresáře pro instalaci IoT Edge pro Linux ve Windows a VHDX přidáním parametrů
INSTALLDIR="<FULLY_QUALIFIED_PATH>"aVHDXDIR="<FULLY_QUALIFIED_PATH>"k instalačnímu příkazu. Pokud například chcete použít složku D:\EFLOW pro instalaci a D:\EFLOW-VHDX pro VHDX , můžete použít následující rutinu PowerShellu.Start-Process -Wait msiexec -ArgumentList "/i","$([io.Path]::Combine($env:TEMP, 'AzureIoTEdge.msi'))","/qn","INSTALLDIR=D:\EFLOW", "VHDXDIR=D:\EFLOW-VHDX"Nastavte na cílovém zařízení zásadu spouštění na
AllSigned, pokud již není nastavena. Podívejte se na požadavky na PowerShell pro příkazy, které kontrolují aktuální zásady spouštění a nastavují zásady spouštění naAllSigned.Vytvořte IoT Edge pro Linux v nasazení s Windows. Nasazení vytvoří váš virtuální počítač s Linuxem a automaticky nainstaluje IoT Edge runtime.
Deploy-EflowNávod
Ve výchozím nastavení příkaz
Deploy-Eflowvytvoří virtuální počítač s Linuxem s 1 GB paměti RAM, jádrem 1 vCPU a 16 GB místa na disku. Prostředky, které virtuální počítač potřebuje, jsou ale vysoce závislé na úlohách, které nasadíte. Pokud váš virtuální počítač nemá dostatek paměti pro podporu úloh, nepodaří se spustit.Dostupné prostředky virtuálního počítače můžete přizpůsobit pomocí
Deploy-Eflowvolitelných parametrů příkazu.Následující příkaz například vytvoří virtuální počítač se 4 jádry vCPU, 4 GB paměti RAM (reprezentované v MB) a 20 GB místa na disku:
Deploy-Eflow -cpuCount 4 -memoryInMB 4096 -vmDiskSize 20Informace o všech dostupných volitelných parametrech najdete v tématu Funkce PowerShellu pro IoT Edge pro Linux ve Windows.
Výstraha
Ve výchozím nastavení nemá virtuální počítač EFLOW s Linuxem žádnou konfiguraci DNS. Nasazení používající protokol DHCP se pokusí získat konfiguraci DNS šířenou serverem DHCP. Zkontrolujte konfiguraci DNS a ujistěte se, že máte připojení k internetu. Další informace najdete v tématu AzEFLOW-DNS.
Ke svému nasazení můžete přiřadit GPU, abyste povolili moduly s akcelerovanými GPU pro Linux. Pokud chcete získat přístup k těmto funkcím, budete muset nainstalovat požadavky podrobně popsané v akceleraci GPU pro Azure IoT Edge pro Linux ve Windows.
Pokud chcete použít průchod GPU, přidejte do příkazu
Deploy-Eflowparametry gpuName, gpuPassthroughType a gpuCount. Informace o všech dostupných volitelných parametrech najdete v tématu Funkce PowerShellu pro IoT Edge pro Linux ve Windows.Výstraha
Povolení průchodu hardwarovým zařízením může zvýšit bezpečnostní rizika. Microsoft doporučuje ovladač pro zmírnění rizik zařízení od dodavatele GPU, pokud je to možné. Další informace naleznete v tématu Nasazení grafických zařízení pomocí samostatného přiřazení zařízení.
Zadejte Y a přijměte licenční podmínky.
Pokud chcete v závislosti na předvolbách zapnout nebo vypnout volitelná diagnostická data , zadejte O nebo R.
Po dokončení nasazení se v okně PowerShellu zobrazí zpráva o úspěšném nasazení.
Po úspěšném nasazení jste připraveni zařízení připravit.
Poskytněte zařízení jeho cloudovou identitu
Poté, co je runtime nainstalován na vašem zařízení, nakonfigurujte zařízení s informacemi potřebnými pro připojení ke službě zřizování zařízení a IoT Hubu.
Připravte si následující informace:
- Hodnota ID oboru DPS. Tuto hodnotu můžete načíst ze stránky přehledu vaší instance DPS na webu Azure Portal.
- Soubor s řetězcem certifikátů identity zařízení.
- Soubor identifikačního klíče zařízení.
Ke zřízení zařízení IoT Edge můžete použít PowerShell nebo Centrum pro správu Windows.
V případě PowerShellu spusťte následující příkaz se zástupnými hodnotami aktualizovanými vlastními hodnotami:
Provision-EflowVm -provisioningType DpsX509 -scopeId PASTE_YOUR_ID_SCOPE_HERE -registrationId PASTE_YOUR_REGISTRATION_ID_HERE -identityCertPath PASTE_ABSOLUTE_PATH_TO_IDENTITY_CERTIFICATE_HERE -identityPrivKeyPath PASTE_ABSOLUTE_PATH_TO_IDENTITY_PRIVATE_KEY_HERE
Ověření úspěšné instalace
Ověřte, že se ioT Edge pro Linux ve Windows úspěšně nainstaloval a nakonfiguroval na zařízení IoT Edge.
Můžete ověřit, že byla použita jednotlivá registrace, kterou jste vytvořili ve službě zřizování zařízení. V Azure portálu přejděte k instanci služby pro zřizování zařízení. Otevřete podrobnosti o registraci pro jednotlivou registraci, kterou jste vytvořili. Všimněte si, že stav registrace je přiřazen a zobrazeno je ID zařízení.
Přihlaste se do vašeho IoT Edge pro Linux běžícího na virtuálním počítači s Windows pomocí tohoto příkazu ve vaší relaci PowerShellu:
Connect-EflowVmPoznámka:
Jediným účtem povoleným SSH k virtuálnímu počítači je uživatel, který ho vytvořil.
Po přihlášení můžete pomocí následujícího příkazu Linuxu zkontrolovat seznam spuštěných modulů IoT Edge:
sudo iotedge listPokud potřebujete řešit potíže se službou IoT Edge, použijte následující linuxové příkazy.
Pokud potřebujete vyřešit potíže se službou, načtěte protokoly služby.
sudo journalctl -u iotedgecheckPomocí nástroje ověřte konfiguraci a stav připojení zařízení.sudo iotedge check
Poznámka:
Na nově zřízeném zařízení se může zobrazit chyba související se službou IoT Edge Hub:
× provozní připravenosti: Adresář úložiště Edge Hubu je trvalý v systému souborů hostitele – chyba
Nepodařilo se zkontrolovat aktuální stav kontejneru EdgeHub.
Tato chyba se očekává na nově zřízeném zařízení, protože modul IoT Edge Hub není spuštěný. Pokud chcete tuto chybu vyřešit, nastavte v IoT Hubu moduly pro zařízení a vytvořte nasazení. Vytvoření nasazení pro zařízení spustí moduly na zařízení, včetně modulu IoT Edge Hub.
Když vytvoříte nové zařízení IoT Edge, zobrazí se na webu Azure Portal stavový kód 417 -- The device's deployment configuration is not set . Tento stav je normální a znamená, že zařízení je připravené přijmout nasazení modulu.
Odinstalujte IoT Edge pro Linux ve Windows
Pokud chcete ze zařízení odebrat instalaci Azure IoT Edge pro Linux ve Windows, použijte následující příkazy.
- Otevřít nastavení ve Windows
- Vyberte Přidat nebo odebrat programy.
- Výběr aplikace LTS pro Azure IoT Edge
- Vyberte Odinstalovat.
Další kroky
Proces registrace ve službě pro zřizování zařízení umožňuje nastavit ID zařízení a značky dvojníka zařízení současně se zřizováním nového zařízení. Tyto hodnoty můžete použít k cílení na jednotlivá zařízení nebo skupiny zařízení pomocí automatické správy zařízení. Zjistěte, jak nasadit a monitorovat moduly IoT Edge ve velkém měřítku pomocí webu Azure Portal nebo pomocí Azure CLI.
Můžete také:
- Pokračujte v nasazování modulů IoT Edge a zjistěte, jak do zařízení nasadit moduly.
- Zjistěte, jak spravovat certifikáty ve službě IoT Edge pro Linux na virtuálním počítači s Windows a přenášet soubory z hostitelského operačního systému do virtuálního počítače s Linuxem.
- Zjistěte, jak nakonfigurovat zařízení IoT Edge tak, aby komunikovali přes proxy server.