Partage via


Créer et approvisionner un appareil IoT Edge sur Windows à l’aide de clés symétriques

S’applique à :yes icon IoT Edge 1.1

Important

IoT Edge 1.1 date de fin de support était le 13 décembre 2022. Consultez la page Politique de support Microsoft pour plus d’informations sur la prise en charge de ce produit, de ce service, de cette technologie ou de cette API. Pour plus d’informations sur la mise à jour vers la dernière version d’IoT Edge, consultez Mettre à jour IoT Edge.

Cet article fournit des instructions de bout en bout pour l’inscription et l’approvisionnement d’un appareil Windows IoT Edge.

Remarque

Azure IoT Edge avec des conteneurs Windows ne sera pas pris en charge à compter de la version 1.2 d’Azure IoT Edge.

Envisagez d’utiliser la nouvelle méthode pour exécuter IoT Edge sur des appareils Windows, Azure IoT Edge pour Linux sur Windows.

Si vous souhaitez utiliser Azure IoT Edge pour Linux sur Windows, vous pouvez suivre les étapes décrites dans la guide pratique équivalent.

Chaque appareil qui se connecte à un hub IoT possède un ID d’appareil qui sert au suivi des communications cloud-à-appareil ou appareil-à-cloud. Vous configurez un appareil avec ses informations de connexion, qui comprennent le nom d’hôte du hub IoT, l’ID d’appareil ainsi que les informations que l’appareil utilise pour s’authentifier auprès d’IoT Hub.

Les étapes de cet article suivent un processus appelé approvisionnement manuel qui consiste à connecter un seul appareil à son hub IoT. Avec le provisionnement manuel, vous avez le choix entre deux méthodes d’authentification des appareils IoT Edge :

  • Clés symétriques : quand vous créez une identité d’appareil dans IoT Hub, le service crée deux clés. Vous placez l’une des clés sur l’appareil, lequel présente la clé à IoT Hub au moment de l’authentification.

    Cette méthode d’authentification est plus rapide pour commencer, mais moins sûre que l’autre.

  • X.509 autosigné : vous créez deux certificats d’identité X.509 que vous placez sur l’appareil. Quand vous créez une identité d’appareil dans IoT Hub, vous fournissez les empreintes numériques des deux certificats. Quand l’appareil s’authentifie auprès de IoT Hub, il présente un certificat et IoT Hub vérifie que le certificat correspond à son empreinte numérique.

    Cette méthode d’authentification étant plus sécurisée, elle est recommandée dans les scénarios de production.

Cet article traite de l’utilisation de clés symétriques comme méthode d’authentification. Si vous souhaitez utiliser des certificats X.509, consultez Créer et approvisionner un appareil IoT Edge sur Windows à l’aide de certificats X.509.

Remarque

Si vous avez de nombreux appareils à configurer et que vous ne souhaitez pas les provisionner manuellement, consultez l’un des articles suivants pour découvrir comment IoT Edge fonctionne avec le service IoT Hub Device Provisioning :

Conditions préalables

Cet article traite de l’inscription de votre appareil IoT Edge et de l’installation d’IoT Edge sur l’appareil. Ces tâches ont des conditions préalables et différents utilitaires sont utilisés pour les accomplir. Assurez-vous que toutes les conditions préalables sont remplies avant de continuer.

Outils de gestion des appareils

Vous avez le choix d’utiliser le portail Azure, Visual Studio Code ou Azure CLI pour inscrire votre appareil. Chaque utilitaire a ses propres prérequis :

Un hub IoT gratuit ou standard dans votre abonnement Azure.

Exigences relatives aux appareils

Un appareil Windows.

IoT Edge avec des conteneurs Windows nécessite Windows version 1809/build 17763, qui est la dernière build de support à long terme de Windows. Veillez à consulter la liste des systèmes pris en charge pour obtenir la liste des références SKU prises en charge.

Notez que les versions de Windows sur le conteneur et l’hôte doivent correspondre. Pour plus d’informations, consultez Impossible de démarrer le module en raison de l’incompatibilité du système d’exploitation.

Inscrire votre appareil

Vous avez le choix d’utiliser le portail Azure, Visual Studio Code ou Azure CLI pour inscrire votre appareil.

Dans votre hub IoT dans le portail Azure, les appareils IoT Edge sont créés et managés séparément des appareils IoT qui ne sont pas compatibles avec Edge.

  1. Connectez-vous au portail Azure et accédez à votre IoT Hub.

  2. Dans le volet de gauche, sélectionnez Appareils dans le menu, puis sélectionnez Ajouter un appareil.

  3. Dans la page Créer un appareil, fournissez les informations suivantes :

    • Créez un ID d’appareil descriptif. Notez cet ID d’appareil, car vous l’utiliserez ultérieurement.
    • Cochez la case Appareil IoT Edge.
    • Sélectionnez Clé symétrique comme type d’authentification.
    • Utilisez les paramètres par défaut pour générer automatiquement des clés d’authentification et connecter le nouvel appareil à votre hub.
  4. Cliquez sur Enregistrer.

Maintenant que vous avez un appareil inscrit dans IoT Hub, récupérez les informations à utiliser pour terminer l’installation et le provisionnement du runtime IoT Edge.

Afficher les appareils inscrits et récupérer les informations de provisionnement

Les appareils qui utilisent l’authentification de clé symétrique ont besoin de leurs chaînes de connexion pour terminer l’installation et l’approvisionnement du runtime IoT Edge.

Les appareils compatibles avec Edge qui se connectent à votre hub IoT sont répertoriés dans la page Appareils. Vous pouvez filtrer la liste par type Appareil Edge IoT.

Capture d’écran montrant comment afficher vos appareils dans le portail Azure, IoT Hub.

Pour configurer votre appareil, vous avez besoin de la chaîne de connexion qui établit un lien entre votre appareil physique et son identité dans le hub IoT.

Les appareils qui s’authentifient avec des clés symétriques disposent des chaînes de connexion pouvant être copiées dans le portail.

  1. Dans la page Appareils dans le portail, sélectionnez l’ID d’appareil IoT Edge dans la liste.
  2. Copiez la valeur de Chaîne de connexion principale ou Chaîne de connexion secondaire.

Installer l'IoT Edge

Dans cette section, vous préparez votre machine virtuelle Windows ou votre appareil physique pour IoT Edge. Ensuite, vous installez IoT Edge.

Azure IoT Edge s’appuie sur un runtime de conteneur compatible OCI. Moby, un moteur Moby, est inclus dans le script d’installation, ce qui signifie qu’il n’existe aucune étape supplémentaire pour installer le moteur.

Pour installer le runtime IoT Edge :

  1. Exécutez PowerShell en tant qu’administrateur.

    Utilisez une session AMD64 de PowerShell, et non PowerShell(x86). Si vous ne savez pas quel type de session vous utilisez, exécutez la commande suivante :

    (Get-Process -Id $PID).StartInfo.EnvironmentVariables["PROCESSOR_ARCHITECTURE"]
    
  2. Exécutez la commande Deploy-IoTEdge, qui effectue les tâches suivantes :

    • Vérifie que votre machine Windows se trouve sur une version prise en charge
    • Active la fonctionnalité conteneurs
    • Télécharge le moteur moby et l'environnement d'exécution IoT Edge
    . {Invoke-WebRequest -useb https://aka.ms/iotedge-win} | Invoke-Expression; `
    Deploy-IoTEdge
    
  3. Redémarrez votre appareil si vous y êtes invité.

Lorsque vous installez IoT Edge sur un appareil, vous pouvez utiliser des paramètres supplémentaires pour modifier le processus, notamment :

  • Diriger le trafic vers un serveur proxy
  • Pointez le programme d’installation vers un répertoire local pour l’installation hors connexion

Pour plus d’informations sur ces paramètres supplémentaires, consultez Scripts PowerShell pour IoT Edge avec des conteneurs Windows.

Attribuez à l’appareil son identité cloud

Maintenant que le moteur de conteneur et le runtime IoT Edge sont installés sur votre appareil, vous êtes prêt pour l’étape suivante, qui consiste à configurer l’appareil avec ses informations d’identité et d’authentification cloud.

  1. Sur l’appareil IoT Edge, exécutez PowerShell en tant qu’administrateur.

  2. Utilisez la commande Initialize-IoTEdge pour configurer le runtime IoT Edge sur votre machine. Par défaut, la commande est configurée manuellement avec des conteneurs Windows.

    . {Invoke-WebRequest -useb https://aka.ms/iotedge-win} | Invoke-Expression; `
    Initialize-IoTEdge -ManualConnectionString -ContainerOs Windows
    
    • Si vous avez téléchargé le script IoTEdgeSecurityDaemon.ps1 sur votre appareil pour une installation de version hors connexion ou spécifique, veillez à référencer la copie locale du script.

      . <path>/IoTEdgeSecurityDaemon.ps1
      Initialize-IoTEdge -ManualConnectionString -ContainerOs Windows
      
  3. Lorsque vous y êtes invité, indiquez la chaîne de connexion de l’appareil que vous avez récupérée dans la section précédente. La chaîne de connexion d’appareil associe l’appareil physique à un ID d’appareil dans IoT Hub et fournit des informations d’authentification.

    La chaîne de connexion de l’appareil prend le format suivant et ne doit pas inclure de guillemets : HostName={IoT_hub_name}.azure-devices.net;DeviceId={device_name};SharedAccessKey={key}

Lorsque vous approvisionnez un appareil manuellement, vous pouvez utiliser des paramètres supplémentaires pour modifier le processus, notamment :

  • Diriger le trafic vers un serveur proxy
  • Déclarez une image de conteneur edgeAgent spécifique et fournissez des identifiants s’il se trouve dans un registre privé.

Pour plus d’informations sur ces paramètres supplémentaires, consultez Scripts PowerShell pour IoT Edge avec des conteneurs Windows.

Vérification de la réussite de la configuration

Vérifiez que le runtime a été correctement installé et configuré sur votre appareil IoT Edge.

Vérifiez l’état du service IoT Edge.

Get-Service iotedge

Examinez les journaux de service.

. {Invoke-WebRequest -useb aka.ms/iotedge-win} | Invoke-Expression; Get-IoTEdgeLog

Répertoriez les modules en cours d’exécution.

iotedge list

Installation d’une version spécifique ou hors connexion (facultatif)

Les étapes de cette section concernent les scénarios non couverts par les étapes d’installation standard. Cela peut inclure :

  • Installer IoT Edge en mode hors connexion
  • Installer une version candidat à la diffusion
  • Installer une version autre que la dernière version

Pendant l’installation, trois fichiers sont téléchargés :

  • Un script PowerShell, qui contient les instructions d’installation
  • Cabinet Microsoft Azure IoT Edge, qui contient le démon de sécurité IoT Edge (iotedged), le moteur de conteneur Moby et l'interface CLI Moby.
  • Programme d’installation du package redistribuable Visual C++ (runtime VC)

Si votre appareil est hors connexion pendant l’installation ou si vous souhaitez installer une version spécifique d’IoT Edge, vous pouvez télécharger ces fichiers à l’avance sur l’appareil. Quand il est temps d’installer, pointez le script d’installation dans le répertoire qui contient les fichiers téléchargés. Le programme d’installation vérifie d’abord ce répertoire, puis télécharge uniquement les composants introuvables. Si tous les fichiers sont disponibles hors connexion, vous pouvez installer sans connexion Internet.

  1. Pour connaître les derniers fichiers d’installation d’IoT Edge, ainsi que les versions précédentes, consultez les versions d’Azure IoT Edge.

  2. Recherchez la version que vous souhaitez installer et téléchargez les fichiers suivants à partir de la section Ressources des notes de publication sur votre appareil IoT :

    • IoTEdgeSecurityDaemon.ps1
    • Microsoft-Azure-IoTEdge-amd64.cab à partir du canal de version 1.1.

    Il est important d’utiliser le script PowerShell à partir de la même version que le fichier .cab que vous utilisez, car les fonctionnalités changent pour prendre en charge les fonctionnalités de chaque version.

  3. Si le fichier .cab que vous avez téléchargé a un suffixe d’architecture sur celui-ci, renommez le fichier en Microsoft-Azure-IoTEdge.cabuniquement.

  4. Si vous le souhaitez, téléchargez un programme d’installation pour Visual C++ redistribuable. Par exemple, le script PowerShell utilise cette version : vc_redist.x64.exe. Enregistrez le programme d’installation dans le même dossier sur votre appareil IoT que les fichiers IoT Edge.

  5. Pour installer à l'aide de composants hors ligne, dot source la copie locale du script PowerShell.

  6. Exécutez la commande Deploy-IoTEdge avec le -OfflineInstallationPath paramètre. Indiquez le chemin absolu du répertoire de fichiers. Par exemple,

    . path_to_powershell_module_here\IoTEdgeSecurityDaemon.ps1
    Deploy-IoTEdge -OfflineInstallationPath path_to_file_directory_here
    

    La commande de déploiement utilise tous les composants trouvés dans le répertoire de fichiers local fourni. Si le fichier .cab ou le programme d’installation Visual C++ est manquant, il tente de les télécharger.

Désinstaller IoT Edge

Si vous souhaitez supprimer l’installation d’IoT Edge de votre appareil Windows, utilisez la commande Uninstall-IoTEdge d’une fenêtre PowerShell d’administration. Cette commande supprime le runtime IoT Edge, ainsi que votre configuration existante et les données du moteur Moby.

. {Invoke-WebRequest -useb aka.ms/iotedge-win} | Invoke-Expression; `
Uninstall-IoTEdge

Pour plus d’informations sur les options de désinstallation, utilisez la commande Get-Help Uninstall-IoTEdge -full.

Étapes suivantes

Passez à Déployer des modules IoT Edge pour savoir comment déployer des modules sur votre appareil.