Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Device Update pour Azure IoT Hub prend en charge les mises à jour basées sur une image, un package et un script.
Les mises à jour basées sur une image offrent un niveau de confiance plus élevé pour l’état final de l’appareil. Il est généralement plus facile de répliquer les résultats d’une mise à jour d’image entre un environnement de préproduction et un environnement de production, car il ne pose pas les mêmes défis que les packages et leurs dépendances. En raison de leur nature atomique, il est facile d'adopter un modèle de basculement A/B.
Ce tutoriel vous guide tout au long des étapes permettant d’effectuer une mise à jour basée sur des images de bout en bout à l’aide de Device Update pour IoT Hub.
Dans ce tutoriel, vous apprendrez comment le faire :
- Télécharger et installer une image.
- Ajoutez une balise à votre appareil IoT.
- Importez une mise à jour.
- Créer un groupe d'appareils
- Déployez une mise à jour d’image.
- Supervisez le déploiement de la mise à jour.
Conditions préalables
Si ce n’est déjà fait, créez un compte et une instance Device Update et configurez un hub IoT.
Téléchargez le fichier zip nommé Tutorial_Simulator.zip à partir des ressources de mise en production dans la dernière version et décompressez-le.
Ajouter un appareil à Azure IoT Hub
Une fois l’agent Device Update exécuté sur un appareil IoT, vous devez ajouter l’appareil à IoT Hub. À partir d’IoT Hub, une chaîne de connexion est générée pour un appareil particulier.
À partir du portail Azure, démarrez device Update pour IoT Hub.
Créez un nouvel appareil.
Dans le volet gauche, accédez à Appareils. Ensuite, cliquez sur Nouveau.
Sous ID de périphérique, entrez un nom pour l’appareil. Assurez-vous que la case Générer automatiquement les clés est cochée.
Cliquez sur Enregistrer.
À présent, vous êtes redirigé vers la page Appareils et l’appareil que vous avez créé doit figurer dans la liste. Sélectionnez cet appareil.
Dans l’affichage de l’appareil, sélectionnez l’icône Copier en regard de la chaîne de connexion principale.
Collez les caractères copiés quelque part pour une utilisation ultérieure dans les étapes suivantes :
Cette chaîne copiée est votre chaîne de connexion d’appareil.
Installer un agent Device Update pour le tester en tant que simulateur
Suivez les instructions pour installer le runtime Azure IoT Edge.
Remarque
L’agent Device Update ne dépend pas d’IoT Edge. Mais il s’appuie sur le démon IoT Identity Service installé avec IoT Edge (1.2.0 et versions ultérieures) pour obtenir une identité et se connecter à IoT Hub.
Bien qu’il ne soit pas abordé dans ce tutoriel, le démon Du service d’identité IoT peut être installé autonome sur les appareils IoT basés sur Linux. La séquence d’installation est importante. L’agent de package Device Update doit être installé après le service d’identité IoT. Sinon, l’agent de package ne sera pas inscrit en tant que composant autorisé pour établir une connexion à IoT Hub.
Ensuite, installez les paquets .deb de l'agent de mise à jour de l'appareil.
sudo apt-get install deviceupdate-agent deliveryoptimization-plugin-aptEntrez le module de votre appareil IoT (ou appareil, selon la façon dont vous avez approvisionné l’appareil avec Device Update) chaîne de connexion principale dans le fichier de configuration en exécutant la commande suivante :
sudo nano /etc/adu/du-config.jsonConfigurez l’agent pour qu’il s’exécute comme un simulateur. Exécutez la commande suivante sur l’appareil IoT afin que l’agent Device Update appelle le gestionnaire de simulateur pour traiter une mise à jour de package avec APT ('microsoft/apt :1') :
sudo /usr/bin/AducIotAgent --register-content-handler /var/lib/adu/extensions/sources/libmicrosoft_simulator_1.so --update-type 'microsoft/apt:1'Pour inscrire et appeler le gestionnaire de simulateur, utilisez le format suivant, en remplissant les espaces réservés :
sudo /usr/bin/AducIotAgent --register--content-handler <full path to the handler file> --update-type <update type name>Vous aurez besoin du fichier
sample-du-simulator-data.jsonà partir du fichier téléchargéTutorial_Simulator.zipdans les conditions préalables.Ouvrez le fichier
sample-du-simulator-data.jsonet copiez le contenu dans le Presse-papiers :nano sample-du-simulator-data.jsonSélectionnez le contenu du fichier, puis appuyez sur Ctrl+C. Appuyez sur Ctrl+X pour fermer le fichier et n’enregistrez pas les modifications.
Exécutez la commande suivante pour créer et modifier le
du-simulator-data.jsonfichier dans le dossier tmp :sudo nano /tmp/du-simulator-data.jsonAppuyez sur Ctrl+V pour coller le contenu dans l’éditeur. Sélectionnez Ctrl+X pour enregistrer les modifications, puis Y.
Modifier les autorisations :
sudo chown adu:adu /tmp/du-simulator-data.json sudo chmod 664 /tmp/du-simulator-data.jsonSi /tmp n’existe pas, puis :
sudo mkdir/tmp sudo chown root:root/tmp sudo chmod 1777/tmpRedémarrez l’agent Device Update en exécutant la commande suivante :
sudo systemctl restart adu-agent
Le logiciel Device Update pour Azure IoT Hub est soumis aux termes du contrat de licence suivant :
Lisez les termes du contrat de licence avant d’utiliser l’agent. Votre installation et votre utilisation constituent votre acceptation de ces conditions. Si vous n’êtes pas d’accord avec les termes du contrat de licence, n’utilisez pas l’agent Device Update pour IoT Hub.
Remarque
Après votre test avec le simulateur, exécutez la commande suivante pour appeler le gestionnaire APT et déployer des mises à jour du package over-the-air :
# sudo /usr/bin/AducIotAgent --register-content-handler /var/lib/adu/extensions/sources/libmicrosoft_apt_1.so --update-type 'microsoft/a pt:1'
Ajouter une étiquette à votre appareil
Connectez-vous au portail Azure et accédez à votre hub IoT.
Dans le volet gauche des appareils, recherchez votre appareil IoT et accédez au jumeau d’appareil ou au jumeau de module.
Dans le jumeau de module du module d’agent Device Update, supprimez toutes les valeurs d’étiquette Device Update existantes en leur affectant la valeur Null. Si vous utilisez l’identité de l’appareil avec un agent Device Update, apportez ces modifications sur le jumeau d’appareil.
Ajoutez une nouvelle valeur d’étiquette Device Update comme indiqué ci-dessous :
"tags": { "ADUGroup": "<CustomTagValue>" }
Importer la mise à jour
Vous aurez besoin des fichiers
TutorialImportManifest_Sim.importmanifest.jsonetadu-update-image-raspberrypi3.swudans l'Tutorial_Simulator.ziptéléchargé parmi les prérequis. Le fichier de mise à jour est réutilisé à partir du tutoriel Raspberry Pi. Étant donné que la mise à jour est simulée dans ce tutoriel, le contenu du fichier spécifique n’a pas d’importance.Connectez-vous au portail Azure et accédez à votre hub IoT avec Device Update. Dans le volet gauche, sous Gestion automatique des appareils, sélectionnez Mises à jour.
Sélectionnez l’onglet Mises à jour.
Sélectionnez + Importer une nouvelle mise à jour.
Sélectionnez + Sélectionner dans le conteneur de stockage. Sélectionnez un compte existant ou créez-en un en utilisant + Compte de stockage. Sélectionnez ensuite un conteneur existant ou créez-en un en utilisant + Conteneur. Ce conteneur sera utilisé pour préparer vos fichiers de mise à jour pour l’importation.
Remarque
Nous vous recommandons d’utiliser un nouveau conteneur chaque fois que vous importez une mise à jour pour éviter d’importer accidentellement des fichiers à partir de mises à jour précédentes. Si vous n’utilisez pas un nouveau conteneur, veillez à supprimer tous les fichiers du conteneur existant avant de terminer cette étape.
Dans votre conteneur, sélectionnez Charger et accédez aux fichiers que vous avez téléchargés à l’étape 1. Une fois que vous avez sélectionné tous vos fichiers de mise à jour, sélectionnez Charger. Sélectionnez ensuite le bouton Sélectionner pour revenir à la page Importer la mise à jour.
Cette capture d’écran montre l’étape d’importation. Les noms de fichiers peuvent ne pas correspondre à ceux utilisés dans l’exemple.
Sur la page Importer la mise à jour, passez en revue les fichiers à importer. Sélectionnez ensuite Importer la mise à jour pour démarrer le processus d’importation.
Le processus d’importation commence et l’écran passe à la section Historique d’importation. Quand la colonne État indique que l’importation a réussi, sélectionnez l’en-tête Mises à jour disponibles. Vous devez maintenant voir votre mise à jour importée dans la liste.
En savoir plus sur l’importation des mises à jour.
Créer un groupe de mise à jour
Accédez à l’onglet Groupes et déploiements en haut de la page.
Sélectionnez puis choisissez l'option pour ajouter un nouveau groupe.
Sélectionnez une balise IoT Hub et une classe d’appareil dans la liste. Sélectionnez ensuite Créer un groupe.
Une fois le groupe créé, le graphique de conformité de mise à jour et la liste des groupes sont mis à jour. Le graphique de conformité des mises à jour montre le nombre d’appareils dans différents états de conformité : À la mise à jour la plus récente, Nouvelles mises à jour disponibles et Mises à jour en cours. En savoir plus sur la conformité des mises à jour.
Vous devez voir votre groupe nouvellement créé et toutes les mises à jour disponibles pour les appareils du nouveau groupe. Si des appareils ne répondent pas aux exigences de classe d’appareil du groupe, ils apparaissent dans un groupe non valide correspondant. Pour déployer la meilleure mise à jour disponible sur le nouveau groupe défini par l’utilisateur à partir de cet affichage, sélectionnez Déployer à côté du groupe.
En savoir plus sur l’ajout de balises et la création de groupes de mises à jour.
Déployer la mise à jour
Une fois le groupe créé, vous devez voir une nouvelle mise à jour disponible pour votre groupe d’appareils. Un lien vers la mise à jour doit être sous Meilleure mise à jour. Vous devrez peut-être actualiser une fois. En savoir plus sur la conformité des mises à jour.
Sélectionnez le groupe cible en sélectionnant le nom du groupe. Vous êtes dirigé vers les détails du groupe sous Principes de base du groupe.
Pour démarrer le déploiement, accédez à l’onglet Déploiement actuel . Sélectionnez le lien de déploiement en regard de la mise à jour souhaitée dans la section Mises à jour disponibles . La meilleure mise à jour disponible pour un groupe donné est indiquée par la mention Optimale.
Planifiez votre déploiement pour qu’il démarre immédiatement ou plus tard. Sélectionnez ensuite Créer.
Sous Détails du déploiement, État devient Actif. La mise à jour déployée est marquée avec la mention (déploiement en cours).
Affichez le graphique de conformité pour voir que la mise à jour est maintenant en cours.
Une fois votre appareil correctement mis à jour, vous voyez que votre graphique de conformité et les détails du déploiement sont mis à jour pour concorder.
Surveiller le déploiement de la mise à jour
Sélectionnez l’onglet Historique du déploiement en haut de la page.
Sélectionnez Détails à côté du déploiement que vous avez créé.
Sélectionnez Actualiser pour voir les détails d’état les plus récents.
Vous avez maintenant réussi à effectuer une mise à jour d’image de bout en bout en utilisant Device Update pour IoT Hub avec l’agent de référence du simulateur Ubuntu (18.04 x64).
Nettoyer les ressources
Quand vous n’en avez plus besoin, nettoyez votre compte Device Update, votre instance, votre hub IoT et votre appareil IoT.