Een linux-IoT Edge maken en inrichten op Windows apparaat met behulp van symmetrische sleutels
Van toepassing op:
IoT Edge 1,1
Dit artikel bevat end-to-end instructies voor het registreren en inrichten van een IoT Edge linux op Windows apparaat.
Elk apparaat dat verbinding maakt met een IoT-hub heeft een apparaat-id die wordt gebruikt voor het bijhouden van cloud-naar-apparaat- of apparaat-naar-cloud-communicatie. U configureert een apparaat met de verbindingsgegevens, waaronder de hostnaam van de IoT-hub, de apparaat-id en de informatie die het apparaat gebruikt om te verifiëren IoT Hub.
De stappen in dit artikel doorlopen een proces dat handmatige inrichting wordt genoemd, waarbij u één apparaat verbindt met de IoT-hub. Voor handmatige inrichting hebt u twee opties voor het IoT Edge apparaten:
Symmetrische sleutels: wanneer u een nieuwe apparaat-id maakt in IoT Hub, maakt de service twee sleutels. U plaats een van de sleutels op het apparaat en de sleutel wordt bij IoT Hub gebruikt.
Deze verificatiemethode is sneller om aan de slag te gaan, maar niet zo veilig.
X.509 zelf-ondertekend: u maakt twee X.509-identiteitscertificaten en plaats deze op het apparaat. Wanneer u een nieuwe apparaat-id maakt in IoT Hub, geeft u vingerafdruk van beide certificaten op. Wanneer het apparaat wordt geverifieerd voor IoT Hub, wordt er één certificaat IoT Hub of het certificaat overeenkomt met de vingerafdruk.
Deze verificatiemethode is veiliger en wordt aanbevolen voor productiescenario's.
In dit artikel wordt het gebruik van symmetrische sleutels als verificatiemethode beschreven. Zie Create and provision an IoT Edge for Linux on Windows device using X.509 certificates (Een IoT Edge voor Linux maken en inrichten op een Windows-apparaat met behulp van X.509-certificaten) als u X.509-certificaten wilt gebruiken.
Notitie
Als u veel apparaten moet instellen en deze niet handmatig wilt inrichten, gebruikt u een van de volgende artikelen om te leren hoe IoT Edge werkt met de IoT Hub Device Provisioning Service:
Vereisten
Dit artikel gaat over het registreren IoT Edge apparaat en het installeren van IoT Edge voor Linux op Windows. Deze taken hebben verschillende vereisten en hulpprogramma's die worden gebruikt om ze te bereiken. Zorg ervoor dat alle vereisten zijn gedekt voordat u doorgaat.
Hulpprogramma’s voor apparaatbeheer
U kunt de stappen Azure Portal, Visual Studio Code of Azure CLI gebruiken om uw apparaat te registreren. Elk hulpprogramma heeft zijn eigen vereisten:
Een gratis of standaard IoT-hub in uw Azure-abonnement.
Vereisten voor apparaten
Een Windows apparaat met de volgende minimale vereisten:
Systeemvereisten
- Windows 101/11(Pro, Enterprise, IoT Enterprise)
- Windows Server 20191/2022
1 Windows 10 en Windows Server 2019 minimaal build 17763 met alle huidige cumulatieve updates geïnstalleerd.
Hardwarevereisten
- Minimaal vrij geheugen: 1 GB
- Minimale vrije schijfruimte: 10 GB
Ondersteuning voor virtualisatie
- Schakel op Windows 10 Hyper-V in. Zie Voor meer informatie Hyper-V installeren op Windows 10.
- Installeer Windows Hyper-V-functie op de server en maak een standaardnetwerks switch. Zie Nested virtualization for Azure IoT Edge for Linux on Windows(Geneste virtualisatie voor Linux op Windows) voor meer Windows.
- Configureer geneste virtualisatie op een virtuele machine. Zie Geneste virtualisatie voor meer informatie.
Netwerkondersteuning
- Windows Server wordt niet met een standaardschakelaar. Voordat u EFLOW kunt implementeren op een Windows Server-apparaat, moet u een virtuele switch maken. Zie Virtuele switch maken voor Linux op Windows voor meer Windows.
- Windows Desktop-versies worden standaardversies van een switch die kan worden gebruikt voor de installatie van EFLOW. Indien nodig kunt u uw eigen aangepaste virtuele switch maken.
Tip
Als u gpu-versnelde Linux-modules wilt gebruiken in uw Azure IoT Edge voor Linux op Windows-implementatie, zijn er verschillende configuratieopties die u kunt overwegen.
Afhankelijk van uw GPU-architectuur moet u de juiste stuurprogramma's installeren en mogelijk hebt u toegang nodig tot een Windows Insider-programma build. Zie GPU-versnelling voor Azure IoT Edge voor Linux op Windows om uw configuratiebehoeften te bepalen en aan deze vereisten te Windows.
Zorg ervoor dat u de tijd neemt om nu te voldoen aan de vereisten voor GPU-versnelling. U moet het installatieproces opnieuw starten als u besluit dat u GPU-versnelling wilt tijdens de installatie.
Hulpprogramma's voor ontwikkelaars
U kunt PowerShell of het beheercentrum Windows gebruiken om uw apparaten IoT Edge beheren. Elk hulpprogramma heeft zijn eigen vereisten:
Als u PowerShell wilt gebruiken, gebruikt u de volgende stappen om uw doelapparaat voor te bereiden op de installatie van Azure IoT Edge voor Linux op Windows en de implementatie van de virtuele Linux-machine:
Stel het uitvoeringsbeleid op het doelapparaat in op
AllSigned. U kunt het huidige uitvoeringsbeleid controleren in een PowerShell-prompt met verhoogde bevoegdheid met behulp van de volgende opdracht:Get-ExecutionPolicy -ListAls het uitvoeringsbeleid van
local machinenietAllSignedis, kunt u het uitvoeringsbeleid instellen met behulp van:Set-ExecutionPolicy -ExecutionPolicy AllSigned -Force
Zie de naslaginformatie over PowerShell Azure IoT Edge functies voor meer informatie over de module Windows PowerShell Linux on Windows PowerShell linux.
Uw apparaat registreren
U kunt de Azure Portal, Visual Studio Code of Azure CLI gebruiken om uw apparaat te registreren, afhankelijk van uw voorkeur.
In uw IoT-hub in de Azure Portal worden IoT Edge gemaakt en beheerd, afzonderlijk van IoT-apparaten die niet aan de rand zijn ingeschakeld.
Meld u aan bij de Azure-portal en ga naar uw IoT Hub.
Selecteer in het linkerdeelvenster IoT Edge in het menu en selecteer vervolgens Een apparaat IoT Edge toevoegen.

Geef op de pagina Een apparaat maken de volgende informatie op:
- Maak een beschrijvende apparaat-id. Noteer deze apparaat-id, want u gaat deze later gebruiken.
- Selecteer Symmetrische sleutel als verificatietype.
- Gebruik de standaardinstellingen om automatisch verificatiesleutels te genereren en het nieuwe apparaat te verbinden met uw hub.
Selecteer Opslaan.
Nu u een apparaat hebt geregistreerd in IoT Hub, haalt u de informatie op die u gebruikt om de installatie en inrichting van de IoT Edge voltooien.
Geregistreerde apparaten weergeven en inrichtingsgegevens ophalen
Apparaten die gebruikmaken van symmetrische-sleutelverificatie hebben hun verbindingsreeksen nodig om de installatie en inrichting van de IoT Edge te voltooien.
Alle edge-apparaten die verbinding maken met uw IoT-hub worden weergegeven op de pagina IoT Edge edge.

Wanneer u klaar bent om uw apparaat in te stellen, hebt u de connection string die uw fysieke apparaat koppelt aan de identiteit ervan in de IoT-hub.
Apparaten die worden geverifieerd met symmetrische sleutels, hebben hun verbindingsreeksen beschikbaar om te kopiëren in de portal.
- Klik op IoT Edge pagina in de portal op de apparaat-id in de lijst IoT Edge apparaten.
- Kopieer de waarde van primaire verbindingsreeks of secundaire verbindingsreeks.
Installatie IoT Edge
Implementeer Azure IoT Edge voor Linux op Windows doelapparaat.
Installeer IoT Edge voor Linux op Windows doelapparaat.
Notitie
In het volgende PowerShell-proces wordt beschreven hoe u IoT Edge voor Linux op Windows lokale apparaat implementeert. Als u wilt implementeren op een extern doelapparaat met behulp van PowerShell, kunt u Remote PowerShell gebruiken om een verbinding met een extern apparaat tot stand te brengen en deze opdrachten op afstand op dat apparaat uit te voeren.
Voer in een PowerShell-sessie met verhoogde bevoegdheid elk van de volgende opdrachten uit om de IoT Edge voor Linux op Windows.
$msiPath = $([io.Path]::Combine($env:TEMP, 'AzureIoTEdge.msi')) $ProgressPreference = 'SilentlyContinue' Invoke-WebRequest "https://aka.ms/AzEflowMSI" -OutFile $msiPathInstalleer IoT Edge voor Linux op Windows apparaat.
Start-Process -Wait msiexec -ArgumentList "/i","$([io.Path]::Combine($env:TEMP, 'AzureIoTEdge.msi'))","/qn"U kunt aangepaste IoT Edge voor Linux op Windows-installatie en VHDX-directories opgeven door parameters en toe te voegen
INSTALLDIR="<FULLY_QUALIFIED_PATH>"VHDXDIR="<FULLY_QUALIFIED_PATH>"aan de installatieopdracht.Stel het uitvoeringsbeleid op het doelapparaat in
AllSignedop als dit nog niet is gedaan. Zie de PowerShell-vereisten voor opdrachten om het huidige uitvoeringsbeleid te controleren en het uitvoeringsbeleid in te stellen opAllSigned.Maak de IoT Edge voor Linux op Windows implementatie. De implementatie maakt uw virtuele Linux-machine en installeert de IoT Edge runtime voor u.
Deploy-EflowTip
De opdracht maakt standaard uw
Deploy-Eflowvirtuele Linux-machine met 1 GB RAM, 1 vCPU-kern en 16 GB schijfruimte. De resources die uw VM nodig heeft, zijn echter sterk afhankelijk van de workloads die u implementeert. Als uw VM onvoldoende geheugen heeft om uw workloads te ondersteunen, kan deze niet worden starten.U kunt de beschikbare resources van de virtuele machine aanpassen met behulp van de
Deploy-Eflowoptionele parameters van de opdracht.Met de onderstaande opdracht maakt u bijvoorbeeld een virtuele machine met 4 vCPU-kernen, 4 GB RAM -geheugen (vertegenwoordigd in MB) en 20 GB aan schijfruimte:
Deploy-Eflow -cpuCount 4 -memoryInMB 4096 -vmDiskSize 20Zie PowerShell functions for IoT Edge for Linux on Windows (PowerShell-functies voor Linux op de Windows) voor meer informatie over de beschikbare optionele parameters.
U kunt een GPU toewijzen aan uw implementatie om GPU-versnelde Linux-modules in te kunnenschakelen. Als u toegang wilt krijgen tot deze functies, moet u de vereisten installeren die worden beschreven in GPU-versnelling voor Azure IoT Edge voor Linux op Windows.
Als u een GPU-passthrough wilt gebruiken, voegt u de parameters gpuName, gpuPassthroughType en gpuCount toe aan uw
Deploy-Eflowopdracht. Zie PowerShell functions for IoT Edge for Linux on Windows (PowerShell-functies voor Linux op de Windows) voor meer informatie over de beschikbare optionele parameters.Waarschuwing
Het inschakelen van de passthrough van hardware-apparaten kan de beveiligingsrisico's verhogen. Microsoft raadt een apparaatbeperkingsdrijf aan van de leverancier van uw GPU, indien van toepassing. Zie Grafische apparaten implementeren met discrete apparaattoewijzing voor meer informatie.
Voer 'Y' in om de licentievoorwaarden te accepteren.
Voer O of R in om Optionele diagnostische gegevens in of uit te schakelen, afhankelijk van uw voorkeur.
Zodra de implementatie is voltooid, wordt in het PowerShell-venster Implementatie voltooid weergegeven.

Na een geslaagde implementatie kunt u uw apparaat inrichten.
Het apparaat inrichten met de cloudidentiteit
U bent klaar om uw apparaat in te stellen met de cloudidentiteit en verificatiegegevens.
Als u uw apparaat wilt inrichten met behulp van symmetrische sleutels, hebt u de connection string.
U kunt het beheercentrum Windows of een PowerShell-sessie met verhoogde bevoegdheid gebruiken om uw apparaten in terichten.
Voer de volgende opdracht uit in een PowerShell-sessie met verhoogde bevoegdheid op uw doelapparaat. Vervang de tekst van de tijdelijke aanduiding door uw eigen waarden.
Provision-EflowVm -provisioningType ManualConnectionString -devConnString "PASTE_DEVICE_CONNECTION_STRING_HERE"
Zie PowerShell functions Provision-EflowVM for IoT Edge for Linux on Windows (PowerShell-functies voor Linuxop Windows) voor meer informatie over Windows.
Controleer of de configuratie is geslaagd
Controleer of IoT Edge voor Linux op Windows is geïnstalleerd en geconfigureerd op uw IoT Edge apparaat.
Meld u aan bij uw IoT Edge Linux op Windows virtuele machine met behulp van de volgende opdracht in uw PowerShell-sessie:
Connect-EflowVmNotitie
Het enige account dat is toegestaan voor SSH voor de virtuele machine is de gebruiker die deze heeft gemaakt.
Zodra u bent aangemeld, kunt u de lijst met de IoT Edge modules controleren met behulp van de volgende Linux-opdracht:
sudo iotedge listAls u problemen met de IoT Edge service wilt oplossen, gebruikt u de volgende Linux-opdrachten.
Haal de servicelogboeken op.
sudo journalctl -u iotedgeGebruik het
checkhulpprogramma om de configuratie en verbindingsstatus van het apparaat te controleren.sudo iotedge check
Wanneer u een nieuw apparaat IoT Edge, wordt de statuscode 417 -- The device's deployment configuration is not set weergegeven in de Azure Portal. Deze status is normaal en betekent dat het apparaat gereed is om een module-implementatie te ontvangen.
Volgende stappen
- Ga door met het IoT Edge modules voor meer informatie over het implementeren van modules op uw apparaat.
- Meer informatie over het beheren van certificaten op uw IoT Edge voor Linux op Windows virtuele machine en het overdragen van bestanden van het host-besturingssysteem naar uw virtuele Linux-machine.
- Meer informatie over het configureren van IoT Edge apparaten om te communiceren via een proxyserver.








