IoT Edge-apparaten op schaal maken en inrichten met een TPM in Windows
Van toepassing op: IoT Edge 1.1
Belangrijk
Het einde van de ondersteuningsdatum voor IoT Edge 1.1 is 13 december 2022. Raadpleeg het levenscyclusbeleid van Microsoft voor informatie over hoe dit product of deze service, technologie of API wordt ondersteund. Zie IoT Edge bijwerken voor meer informatie over het bijwerken naar de nieuwste versie van IoT Edge.
Dit artikel bevat instructies voor het automatisch inrichten van een Azure IoT Edge voor Windows-apparaat met behulp van een TRUSTED Platform Module (TPM). U kunt Automatisch IoT Edge-apparaten inrichten met de Azure IoT Hub-apparaatinrichtingsservice. Als u niet bekend bent met het proces van automatische inrichting, raadpleegt u het inrichtingsoverzicht voordat u doorgaat.
Notitie
Azure IoT Edge met Windows-containers wordt niet ondersteund vanaf versie 1.2 van Azure IoT Edge.
Overweeg om de nieuwe methode te gebruiken voor het uitvoeren van IoT Edge op Windows-apparaten, Azure IoT Edge voor Linux in Windows.
Als u Azure IoT Edge voor Linux in Windows wilt gebruiken, kunt u de stappen in de equivalente handleiding volgen.
In dit artikel worden twee methodologieën beschreven. Selecteer uw voorkeur op basis van de architectuur van uw oplossing:
- Automatisch inrichten van een Windows-apparaat met fysieke TPM-hardware.
- Automatisch inrichten van een Windows-apparaat met een gesimuleerde TPM. We raden deze methodologie alleen aan als testscenario. Een gesimuleerde TPM biedt niet dezelfde beveiliging als een fysieke TPM.
De instructies verschillen op basis van uw methodologie. Zorg er dus voor dat u in de toekomst op het juiste tabblad bent.
De taken zijn als volgt:
- Haal de inrichtingsgegevens van uw apparaat op.
- Maak een afzonderlijke inschrijving voor het apparaat.
- Installeer de IoT Edge-runtime en verbind het apparaat met IoT Hub.
Vereisten
De vereisten zijn hetzelfde voor fysieke TPM- en virtuele TPM-oplossingen.
Cloudresources
- Een actieve IoT-hub
- Een exemplaar van de IoT Hub Device Provisioning Service in Azure, gekoppeld aan uw IoT-hub
- Als u geen exemplaar van de apparaatinrichtingsservice hebt, kunt u de instructies volgen in de quickstart voor het maken van een nieuwe IoT Hub-apparaatinrichtingsservice en de IoT-hub en de secties voor de apparaatinrichtingsservice koppelen aan de IoT Hub-apparaatinrichtingsservice.
- Nadat de apparaatinrichtingsservice wordt uitgevoerd, kopieert u de waarde van het id-bereik op de overzichtspagina. U gebruikt deze waarde wanneer u de IoT Edge-runtime configureert.
Vereisten voor apparaten
Een Windows-ontwikkelcomputer. In dit artikel wordt Windows 10 gebruikt.
Notitie
TPM 2.0 is vereist wanneer u TPM-attestation gebruikt met de device provisioning-service.
U kunt alleen afzonderlijke, niet groeps- en apparaatinrichtingsserviceinschrijvingen maken wanneer u een TPM gebruikt.
Uw TPM instellen
In deze sectie bouwt u een hulpprogramma dat u kunt gebruiken om de registratie-id en goedkeuringssleutel voor uw TPM op te halen.
Volg de stappen in Een Windows-ontwikkelomgeving instellen om de Azure IoT Device SDK voor C te installeren en te bouwen.
Voer de volgende opdrachten uit in een PowerShell-sessie met verhoogde bevoegdheid om het SDK-hulpprogramma te bouwen waarmee de apparaatinrichtingsgegevens voor uw TPM worden opgehaald.
cd azure-iot-sdk-c\cmake cmake -Duse_prov_client:BOOL=ON .. cd provisioning_client\tools\tpm_device_provision make .\tpm_device_provision
In het uitvoervenster worden de registratie-id en de goedkeuringssleutel van het apparaat weergegeven. Kopieer deze waarden voor later gebruik wanneer u een afzonderlijke inschrijving voor uw apparaat maakt in de device provisioning-service.
Tip
Als u het SDK-hulpprogramma niet wilt gebruiken om de informatie op te halen, moet u een andere manier vinden om de inrichtingsgegevens op te halen. De goedkeuringssleutel, die uniek is voor elke TPM-chip, wordt verkregen van de fabrikant van de TPM-chip die eraan is gekoppeld. U kunt een unieke registratie-id afleiden voor uw TPM-apparaat. U kunt bijvoorbeeld een SHA-256-hash van de goedkeuringssleutel maken.
Nadat u uw registratie-id en goedkeuringssleutel hebt, kunt u doorgaan.
Een apparaatinrichtingsserviceinschrijving maken
Gebruik de inrichtingsgegevens van uw TPM om een afzonderlijke inschrijving te maken in de device provisioning-service.
Wanneer u een inschrijving in de device provisioning-service maakt, hebt u de mogelijkheid om een eerste apparaatdubbelstatus te declareren. In de apparaatdubbel kunt u tags instellen om apparaten te groeperen op basis van alle metrische gegevens die in uw oplossing worden gebruikt, zoals regio, omgeving, locatie of apparaattype. Deze tags worden gebruikt om automatische implementaties te maken.
Tip
De stappen in dit artikel zijn bedoeld voor Azure Portal, maar u kunt ook afzonderlijke inschrijvingen maken met behulp van de Azure CLI. Zie az iot dps enrollment voor meer informatie. Als onderdeel van de CLI-opdracht gebruikt u de vlag edge om op te geven dat de inschrijving voor een IoT Edge-apparaat is.
Ga in Azure Portal naar uw exemplaar van de IoT Hub-apparaatinrichtingsservice.
Selecteer Onder Instellingen de optie Inschrijvingen beheren.
Selecteer Afzonderlijke inschrijving toevoegen en voer vervolgens de volgende stappen uit om de inschrijving te configureren:
Selecteer TPM voor Mechanisme.
Geef de goedkeuringssleutel en registratie-id op die u hebt gekopieerd van uw VIRTUELE machine of fysiek apparaat.
Geef desgewenst een id op voor uw apparaat. Als u geen apparaat-id opgeeft, wordt de registratie-id gebruikt.
Selecteer Waar om aan te geven dat uw VIRTUELE machine of fysiek apparaat een IoT Edge-apparaat is.
Kies de gekoppelde IoT-hub waarmee u uw apparaat wilt verbinden of selecteer Koppelen aan nieuwe IoT Hub. U kunt meerdere hubs kiezen en het apparaat wordt toegewezen aan een van deze hubs volgens het geselecteerde toewijzingsbeleid.
Voeg desgewenst een tagwaarde toe aan de eerste apparaatdubbelstatus . U kunt tags gebruiken voor doelgroepen van apparaten voor module-implementatie. Zie IoT Edge-modules op schaal implementeren voor meer informatie.
Selecteer Opslaan.
Nu er een inschrijving voor dit apparaat bestaat, kan de IoT Edge-runtime het apparaat automatisch inrichten tijdens de installatie.
IoT Edge installeren
In deze sectie bereidt u uw Windows-VM of fysiek apparaat voor op IoT Edge. Vervolgens installeert u IoT Edge.
Azure IoT Edge is afhankelijk van een OCI-compatibele containerruntime. Moby, een moby-engine, is opgenomen in het installatiescript, wat betekent dat er geen extra stappen zijn om de engine te installeren.
De IoT Edge-runtime installeren:
Voer PowerShell uit als beheerder.
Gebruik een AMD64-sessie van PowerShell, niet PowerShell(x86). Als u niet zeker weet welk sessietype u gebruikt, voert u de volgende opdracht uit:
(Get-Process -Id $PID).StartInfo.EnvironmentVariables["PROCESSOR_ARCHITECTURE"]
Voer de opdracht Deploy-IoTEdge uit, waarmee de volgende taken worden uitgevoerd:
- Controleert of uw Windows-computer een ondersteunde versie heeft
- Hiermee schakelt u de functie containers in
- De moby-engine en de IoT Edge-runtime downloaden
. {Invoke-WebRequest -useb https://aka.ms/iotedge-win} | Invoke-Expression; ` Deploy-IoTEdge
Start uw apparaat opnieuw op als u hierom wordt gevraagd.
Wanneer u IoT Edge op een apparaat installeert, kunt u aanvullende parameters gebruiken om het proces te wijzigen, waaronder:
- Verkeer omleiden om via een proxyserver te gaan
- Wijs het installatieprogramma naar een lokale map voor offline-installatie
Zie PowerShell-scripts voor IoT Edge met Windows-containers voor meer informatie over deze aanvullende parameters.
Het apparaat inrichten met de cloudidentiteit
Nadat de runtime op uw apparaat is geïnstalleerd, configureert u het apparaat met de informatie die wordt gebruikt om verbinding te maken met de apparaatinrichtingsservice en IoT Hub.
Ken uw apparaatinrichtingsservice-id Bereik en apparaatregistratie-id die in de vorige secties zijn verzameld.
Open een PowerShell-venster in de beheerdersmodus. Zorg ervoor dat u een AMD64-sessie van PowerShell gebruikt wanneer u IoT Edge installeert, niet PowerShell (x86).
Met
Initialize-IoTEdge
de opdracht configureert u de IoT Edge-runtime op uw computer. De opdracht wordt standaard ingesteld op handmatig inrichten met Windows-containers. Gebruik de-Dps
vlag om de apparaatinrichtingsservice te gebruiken in plaats van handmatige inrichting.Vervang de tijdelijke aanduidingen voor
paste_scope_id_here
enpaste_registration_id_here
door de gegevens die u eerder hebt verzameld.. {Invoke-WebRequest -useb https://aka.ms/iotedge-win} | Invoke-Expression; ` Initialize-IoTEdge -Dps -ScopeId paste_scope_id_here -RegistrationId paste_registration_id_here
Geslaagde installatie controleren
Als de runtime is gestart, gaat u naar uw IoT-hub en implementeert u IoT Edge-modules op uw apparaat. Gebruik de volgende opdrachten op uw apparaat om te controleren of de runtime is geïnstalleerd en gestart.
Controleer de status van de IoT Edge-service.
Get-Service iotedge
Bekijk servicelogboeken van de afgelopen 5 minuten.
. {Invoke-WebRequest -useb aka.ms/iotedge-win} | Invoke-Expression; Get-IoTEdgeLog
Lijst met actieve modules.
iotedge list
Volgende stappen
Met het registratieproces van de device provisioning service kunt u de apparaat-id en apparaatdubbeltags instellen op hetzelfde moment als u het nieuwe apparaat inricht. U kunt deze waarden gebruiken om afzonderlijke apparaten of groepen apparaten te richten met behulp van automatisch apparaatbeheer.
Leer hoe u IoT Edge-modules op schaal implementeert en bewaakt met behulp van Azure Portal of de Azure CLI.