PowerShell-scripts voor IoT Edge met Windows-containers
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.
Meer informatie over de PowerShell-scripts die IoT Edge installeren, bijwerken of verwijderen op Windows-apparaten.
De opdrachten die in dit artikel worden beschreven, zijn afkomstig uit het IoTEdgeSecurityDaemon.ps1
bestand dat wordt uitgebracht bij elke IoT Edge-release. De nieuwste versie van het script is altijd beschikbaar op aka.ms/iotedge-win.
U kunt een van de opdrachten uitvoeren met behulp van de Invoke-WebRequest
cmdlet voor toegang tot de nieuwste scriptversie. Voorbeeld:
. {Invoke-WebRequest -useb https://aka.ms/iotedge-win} | Invoke-Expression; `
Deploy-IoTEdge
U kunt dit script of een versie van het script ook downloaden vanuit een specifieke release om de opdrachten uit te voeren. Voorbeeld:
. <path>\IoTEdgeSecurityDaemon.ps1
Deploy-IoTEdge
Het opgegeven script is ondertekend om de beveiliging te verbeteren. U kunt de handtekening controleren door het script naar uw apparaat te downloaden en vervolgens de volgende PowerShell-opdracht uit te voeren:
Get-AuthenticodeSignature "C:\<path>\IotEdgeSecurityDaemon.ps1"
De uitvoerstatus is geldig als de handtekening is geverifieerd.
Deploy-IoTEdge
Met de opdracht Deploy-IoTEdge worden de IoT Edge-beveiligingsdaemon en de bijbehorende afhankelijkheden gedownload en geïmplementeerd. De implementatieopdracht accepteert onder andere deze algemene parameters. Gebruik de opdracht Get-Help Deploy-IoTEdge -full
voor de volledige lijst.
Parameter | Geaccepteerde waarden | Opmerkingen |
---|---|---|
Containero's | Windows of Linux | Als er geen containerbesturingssysteem is opgegeven, is Windows de standaardwaarde. Voor Windows-containers maakt IoT Edge gebruik van de Moby-containerengine die is opgenomen in de installatie. Voor Linux-containers moet u een containerengine installeren voordat u de installatie start. |
Proxy | Proxy-URL | Neem deze parameter op als uw apparaat via een proxyserver moet gaan om internet te bereiken. Zie Een IoT Edge-apparaat configureren voor communicatie via een proxyserver voor meer informatie. |
OfflineInstallationPath | Mappad | Als deze parameter is opgenomen, controleert het installatieprogramma de vermelde map voor de IoT Edge-cab- en VC Runtime MSI-bestanden die nodig zijn voor de installatie. Bestanden die niet in de map zijn gevonden, worden gedownload. Als beide bestanden zich in de map bevinden, kunt u IoT Edge installeren zonder internetverbinding. U kunt deze parameter ook gebruiken om een specifieke versie te gebruiken. |
InvokeWebRequestParameters | Hashtabel van parameters en waarden | Tijdens de installatie worden verschillende webaanvragen gedaan. Gebruik dit veld om parameters in te stellen voor deze webaanvragen. Deze parameter is handig voor het configureren van referenties voor proxyservers. Zie Een IoT Edge-apparaat configureren voor communicatie via een proxyserver voor meer informatie. |
RestartIfNeeded | Geen | Met deze vlag kan het implementatiescript de machine opnieuw opstarten zonder dat u hierom wordt gevraagd, indien nodig. |
Initialize-IoTEdge
Met de opdracht Initialize-IoTEdge configureert u IoT Edge met uw apparaat verbindingsreeks en operationele details. Veel van de informatie die door deze opdracht wordt gegenereerd, wordt vervolgens opgeslagen in het iotedge\config.yaml-bestand. De initialisatieopdracht accepteert onder andere deze algemene parameters. Gebruik de opdracht Get-Help Initialize-IoTEdge -full
voor de volledige lijst.
Parameter | Geaccepteerde waarden | Opmerkingen |
---|---|---|
ManualConnectionString | Geen | Schakel de parameter in. Standaardwaarde. Als er geen inrichtingstype is opgegeven, is handmatige inrichting met een verbindingsreeks de standaardwaarde. Declareert dat u een apparaat verbindingsreeks geeft om het apparaat handmatig in te richten. |
ManualX509 | Geen | Schakel de parameter in. Als er geen inrichtingstype is opgegeven, is handmatige inrichting met een verbindingsreeks de standaardwaarde. Declareert dat u een identiteitscertificaat en een persoonlijke sleutel opgeeft om het apparaat handmatig in te richten. |
DpsTpm | Geen | Schakel de parameter in. Als er geen inrichtingstype is opgegeven, is handmatige inrichting met een verbindingsreeks de standaardwaarde. Declareert dat u een DPS-bereik-id (Device Provisioning Service) en de registratie-id van uw apparaat opgeeft voor inrichting via DPS. |
DpsSymmetricKey | Geen | Schakel de parameter in. Als er geen inrichtingstype is opgegeven, is handmatige inrichting met een verbindingsreeks de standaardwaarde. Declareert dat u een DPS-bereik-id (Device Provisioning Service) en de registratie-id van uw apparaat opgeeft om via DPS in te richten, samen met een symmetrische sleutel voor attestation. |
DpsX509 | Geen | Schakel de parameter in. Als er geen inrichtingstype is opgegeven, is handmatige inrichting met een verbindingsreeks de standaardwaarde. Declareert dat u een DPS-bereik-id (Device Provisioning Service) en de registratie-id van uw apparaat opgeeft voor inrichting via DPS, samen met een X.509-identiteitscertificaat en een persoonlijke sleutel voor attestation. |
DeviceConnectionString | Een verbindingsreeks van een IoT Edge-apparaat dat is geregistreerd in een IoT Hub, tussen enkele aanhalingstekens | Vereist voor handmatige inrichting met een verbindingsreeks. Als u geen verbindingsreeks opgeeft in de scriptparameters, wordt u gevraagd om een verbindingsreeks. |
IotHubHostName | De hostnaam van de IoT-hub waarmee een apparaat verbinding maakt. | Vereist voor handmatige inrichting met X.509-certificaten. Neemt de indeling {hub name}.azure-devices.net. |
DeviceId | De apparaat-id van een geregistreerde apparaat-id in IoT Hub. | Vereist voor handmatige inrichting met X.509-certificaten. |
ScopeId | Een bereik-id van een exemplaar van Device Provisioning Service dat is gekoppeld aan uw IoT Hub. | Vereist voor DPS-inrichting. Als u geen bereik-id opgeeft in de scriptparameters, wordt u om een bereik-id gevraagd. |
RegistrationId | Een registratie-id gegenereerd door uw apparaat | Vereist voor DPS-inrichting als u TPM- of symmetrische sleutelattestatie gebruikt. Optioneel als u X.509-certificaatverklaring gebruikt. |
X509IdentityCertificate | Het URI-pad naar het X.509-apparaatidentiteitscertificaat op het apparaat. | Vereist voor handmatige of DPS-inrichting als u X.509-certificaatverklaring gebruikt. |
X509IdentityPrivateKey | Het URI-pad naar de certificaatsleutel voor de X.509-apparaatidentiteit op het apparaat. | Vereist voor handmatige of DPS-inrichting als u X.509-certificaatverklaring gebruikt. |
SymmetricKey | De symmetrische sleutel die wordt gebruikt voor het inrichten van de IoT Edge-apparaat-id bij het gebruik van DPS | Vereist voor DPS-inrichting als u symmetrische sleutelattestation gebruikt. |
Containero's | Windows of Linux | Als er geen containerbesturingssysteem is opgegeven, is Windows de standaardwaarde. Voor Windows-containers maakt IoT Edge gebruik van de Moby-containerengine die is opgenomen in de installatie. Voor Linux-containers moet u een containerengine installeren voordat u de installatie start. |
DeviceCACertificate | Het URI-pad naar het CA-certificaat van het X.509-apparaat op het apparaat. | Kan ook worden geconfigureerd in het C:\ProgramData\iotedge\config.yaml bestand. Zie Certificaten beheren op een IoT Edge-apparaat voor meer informatie. |
DeviceCAPrivateKey | Het URI-pad naar de persoonlijke sleutel van de X.509-apparaat-CA op het apparaat. | Kan ook worden geconfigureerd in het C:\ProgramData\iotedge\config.yaml bestand. Zie Certificaten beheren op een IoT Edge-apparaat voor meer informatie. |
InvokeWebRequestParameters | Hashtabel van parameters en waarden | Tijdens de installatie worden verschillende webaanvragen gedaan. Gebruik dit veld om parameters in te stellen voor deze webaanvragen. Deze parameter is handig voor het configureren van referenties voor proxyservers. Zie Een IoT Edge-apparaat configureren voor communicatie via een proxyserver voor meer informatie. |
AgentImage | Afbeeldings-URI van IoT Edge-agent | Een nieuwe IoT Edge-installatie maakt standaard gebruik van de nieuwste rolling tag voor de installatiekopieën van de IoT Edge-agent. Gebruik deze parameter om een specifieke tag in te stellen voor de versie van de installatiekopieën of om uw eigen agentinstallatiekopieën op te geven. Zie IoT Edge-tags begrijpen voor meer informatie. |
Gebruikersnaam | Gebruikersnaam van containerregister | Gebruik deze parameter alleen als u de parameter -AgentImage instelt op een container in een privéregister. Geef een gebruikersnaam op met toegang tot het register. |
Wachtwoord | Wachtwoordtekenreeks beveiligen | Gebruik deze parameter alleen als u de parameter -AgentImage instelt op een container in een privéregister. Geef het wachtwoord op voor toegang tot het register. |
Update-IoTEdge
Parameter | Geaccepteerde waarden | Opmerkingen |
---|---|---|
Containero's | Windows of Linux | Als er geen container-besturingssysteem is opgegeven, is Windows de standaardwaarde. Voor Windows-containers wordt een containerengine opgenomen in de installatie. Voor Linux-containers moet u een containerengine installeren voordat u de installatie start. |
Proxy | Proxy-URL | Neem deze parameter op als uw apparaat via een proxyserver moet gaan om internet te bereiken. Zie Een IoT Edge-apparaat configureren voor communicatie via een proxyserver voor meer informatie. |
InvokeWebRequestParameters | Hashtabel van parameters en waarden | Tijdens de installatie worden verschillende webaanvragen gedaan. Gebruik dit veld om parameters in te stellen voor deze webaanvragen. Deze parameter is handig voor het configureren van referenties voor proxyservers. Zie Een IoT Edge-apparaat configureren voor communicatie via een proxyserver voor meer informatie. |
OfflineInstallationPath | Mappad | Als deze parameter is opgenomen, controleert het installatieprogramma de vermelde map voor de IoT Edge-cab- en VC Runtime MSI-bestanden die nodig zijn voor de installatie. Bestanden die niet in de map zijn gevonden, worden gedownload. Als beide bestanden zich in de map bevinden, kunt u IoT Edge installeren zonder internetverbinding. U kunt deze parameter ook gebruiken om een specifieke versie te gebruiken. |
RestartIfNeeded | Geen | Met deze vlag kan het implementatiescript de machine opnieuw opstarten zonder dat u hierom wordt gevraagd, indien nodig. |
Uninstall-IoTEdge
Parameter | Geaccepteerde waarden | Opmerkingen |
---|---|---|
Kracht | Geen | Deze vlag dwingt de verwijdering af voor het geval de vorige poging om te verwijderen is mislukt. |
RestartIfNeeded | Geen | Met deze vlag kan het verwijderingsscript de computer opnieuw opstarten zonder dat u hierom wordt gevraagd, indien nodig. |
Volgende stappen
Meer informatie over het gebruik van deze opdrachten in het volgende artikel: