Partager via


Tutoriel : Azure Device Update pour IoT Hub en utilisant l’agent de package Ubuntu 22.04

Device Update pour Azure IoT Hub prend en charge les mises à jour basées sur une image, un package et un script. Ce tutoriel montre la mise à jour de package de bout en bout en utilisant l’agent de package Device Update Ubuntu Server 22.04 x64 pour mettre à jour Azure IoT Edge.

Les mises à jour basées sur des packages sont destinées à modifier uniquement un composant ou une application d’appareil spécifique. Ces mises à jour ont une faible consommation de bande passante et des temps d’installation et de téléchargement plus courts que les mises à jour basées sur une image, ce qui permet de réduire le temps d’arrêt des appareils et d’éviter les frais généraux de création d’images. Dans une mise à jour basée sur un package, un manifeste APT fournit à l’agent Device Update les informations dont il a besoin pour télécharger et installer les packages spécifiés et leurs dépendances à partir d’un référentiel désigné.

Ce tutoriel vous guide tout au long de l’installation de Microsoft Defender pour IoT, mais vous pouvez mettre à jour d’autres packages en utilisant des étapes similaires, tels que l’IoT Edge lui-même ou le moteur de conteneur qu’il utilise. Les outils et les concepts de ce tutoriel s’appliquent, même si vous utilisez une autre configuration de plateforme de système d’exploitation.

Dans ce tutoriel, vous allez :

  • Téléchargez et installez l’agent Device Update et ses dépendances.
  • Ajoutez une balise de groupe à votre appareil.
  • Importez la mise à jour du package.
  • Déployez la mise à jour du package.
  • Affichez l’historique de déploiement des mises à jour.

Prérequis

Préparer l’appareil

Pour des raisons pratiques, ce tutoriel utilise un modèle Azure Resource Manager (ARM) basé sur cloud-init pour configurer rapidement une machine virtuelle Ubuntu 22.04 LTS. Le modèle installe à la fois le runtime IoT Edge et l’agent de package Device Update, puis configure automatiquement l’appareil avec des informations d’approvisionnement en utilisant la chaîne de connexion d’appareil IoT Edge que vous fournissez. L’utilisation du modèle ARM évite également d’avoir à démarrer une session Secure Shell (SSH) pour effectuer la configuration.

  1. Pour exécuter le modèle, sélectionnez le bouton Déployer sur Azure :

    Capture d’écran du bouton déployer sur Azure pour iotedge-vm-deploy .

  2. Renseignez les informations suivantes :

    • Abonnement : abonnement Azure actif dans lequel déployer la machine virtuelle.
    • Groupe de ressources : un groupe de ressources existant ou nouveau destiné à contenir la machine virtuelle et ses ressources.
    • Région : région géographique dans laquelle déployer la machine virtuelle. Par défaut, il s’agit de l’emplacement du groupe de ressources.
    • Préfixe d’étiquette DNS : valeur à préfixer au nom d’hôte de la machine virtuelle.
    • Nom d’utilisateur d’administrateur : nom d’utilisateur à fournir avec des privilèges racines au moment du déploiement.
    • Type d’authentification : choisissez sshPublicKey ou mot de passe.
    • Mot de passe d’administrateur ou Source de clé publique SSH, Type de clé SSH, Nom de paire de clés : mot de passe ou informations sur la clé publique en fonction du choix du type d’authentification.
    • Taille de machine virtuelle : taille de la machine virtuelle à déployer.
    • Version de système d’exploitation Ubuntu : conservez 22_04-lts.
    • Chaîne de connexion d’appareil : chaîne de connexion IoT Edge que vous avez copiée précédemment.
  3. Au bas de la page, sélectionnez Examiner et créer. Une fois la validation réussie, sélectionnez Créer pour démarrer le déploiement de modèle.

  4. Vérifiez que le déploiement se termine correctement, puis patientez quelques minutes après la fin du déploiement, le temps que la post-installation et la configuration terminent l’installation d’IoT Edge et de l’agent de package Device Update.

  5. Vous devriez voir une ressource de machine virtuelle dans le groupe de ressources sélectionné. Notez le nom de l’ordinateur, qui est au format vm-0000000000000. Sélectionnez le nom de la machine virtuelle et, sur la page Vue d’ensemble de la machine virtuelle, notez le Nom DNS qui est au format <dnsLabelPrefix>.<location>.cloudapp.azure.com.

    Capture d’écran montrant le nom DNS de la machine virtuelle IoT Edge.

Conseil

Si vous souhaitez établir une connexion SSH vers cette machine virtuelle après la configuration, utilisez le Nom DNS avec la commande ssh <admin username>@<DNS name>.

Installer l’agent Device Update sur la machine virtuelle

Important

Le logiciel Azure Device Update pour IoT Hub est soumis aux termes de contrat de licence suivants :

Lisez les termes du contrat de licence avant d’utiliser l’agent. L’installation et l’utilisation de l’agent vaut pour acception de ces termes. Si vous n’acceptez pas les termes du contrat de licence, n’utilisez pas l’agent Device Update.

  1. Pour installer l’agent Device Update sur la machine virtuelle, exécutez la commande suivante.

    sudo apt-get install deviceupdate-agent
    
  2. Ouvrez le fichier des détails de la configuration du-config.json en utilisant la commande suivante.

    sudo nano /etc/adu/du-config.json
    
  3. Dans le fichier, remplacez toutes les valeurs <placeholder> par votre propre configuration. Définissez votre connectionType comme "AIS" et connectionData en tant que chaîne vide. Pour découvrir un exemple de fichier, consultez Exemple du contenu du fichier du-config.json.

  4. Redémarrez l’agent Device Update en exécutant la commande suivante.

    sudo systemctl restart deviceupdate-agent
    

Remarque

Si vous avez précédemment utilisé l’agent du simulator sur cet appareil, exécutez la commande suivante pour appeler le gestionnaire APT et déployer des mises à jour OTA (over-the-air) de package pour ce tutoriel.

sudo /usr/bin/AducIotAgent --register-content-handler /var/lib/adu/extensions/sources/libmicrosoft_apt_1.so --update-type 'microsoft/apt:1'

Ajouter une balise de groupe à votre appareil

Device Update organise automatiquement les appareils en groupes en fonction des balises et des propriétés de compatibilité qui leur sont attribuées. Chaque appareil ne peut appartenir qu’à un seul groupe, mais les groupes peuvent avoir plusieurs sous-groupes pour trier différentes classes d’appareils. Pour plus d’informations sur les balises et les groupes, consultez Gérer les groupes d’appareils.

  1. Sur la page du hub IoT du Portail Azure pour votre instance Device Update, sélectionnez Gestion des périphériques>Appareils dans le volet de navigation gauche.

  2. Accédez au Jumeau d’appareil ou jumeau d’Identité de module de votre appareil.

  3. Dans le fichier Jumeau d’identité de module du jumeau d’appareil ou de l’agent Device Update, supprimez les valeurs de balise Device Update existantes en les définissant sur null, puis ajoutez la nouvelle balise de groupe Device Update suivante.

    Si vous utilisez une identité d’appareil avec l’agent Device Update, apportez ces modifications sur le jumeau d’appareil. Si vous utilisez une identité de module avec le module d’agent Device Update, ajoutez la balise dans le Jumeau d’identité de module.

    "tags": {
        "ADUGroup": "<GroupTagValue>"
    },
    

    La capture d’écran suivante montre l’emplacement d’ajout de la balise dans le fichier.

    Capture d’écran représentant un jumeau numérique avec des informations sur les étiquettes.

  4. Cliquez sur Enregistrer.

Importer la mise à jour

Le fichier Tutorial_IoTEdge_PackageUpdate.zip a les fichiers nécessaires pour le tutoriel.

  1. Téléchargez le fichier Tutorial_IoTEdge_PackageUpdate.zip dans la section Ressources de la dernière mise en production sur la page Versions Device Update GitHub.

  2. Décompressez le fichier . Le dossier Tutorial_IoTEdge_PackageUpdate contient l’exemple de manifeste APT sample-defender-iot-apt-manifest.json et son manifeste d’importation sample-defender-iot--importManifest.json correspondant.

  3. Sur la page du hub IoT du Portail Azure pour votre instance Device Update, sélectionnez Gestion des périphériques>Mises à jour dans le volet de navigation gauche.

  4. Sur la page Mises à jour, sélectionnez Importer une nouvelle mise à jour.

  5. Sur la page Importer une mise à jour, sélectionnez Sélectionner dans le conteneur de stockage.

  6. Sur la page Comptes de stockage, sélectionnez un compte de stockage existant ou créez-en un en sélectionnant Compte de stockage.

  7. Sur la page Conteneurs, sélectionnez un conteneur existant ou créez-en un en sélectionnant Conteneur. Le conteneur vous permet d’indexer les fichiers de mise à jour pour l’importation.

    Capture d’écran illustrant Comptes de stockage et Conteneurs.

    Conseil

    Pour éviter d’importer accidentellement des fichiers de mises à jour précédentes, utilisez un nouveau conteneur chaque fois que vous importez une mise à jour. Si vous n’utilisez pas de nouveau conteneur, veillez à supprimer tous les fichiers du conteneur existant.

  8. Sur la page du conteneur, sélectionnez Charger, glissez-déposez ou parcourez et sélectionnez les fichiers de mise à jour téléchargés, puis sélectionnez Charger. Après leur chargement, les fichiers s’affichent sur la page du conteneur.

  9. Vérifiez et sélectionnez les fichiers à importer, puis sélectionnez Sélectionner.

    Capture d’écran illustrant la sélection de fichiers chargés.

  10. Sur l’écran Importer la mise à jour, sélectionnez Importer la mise à jour.

    Capture d’écran illustrant Importer la mise à jour.

Le processus d’importation commence et l’écran Mises à jour s’affiche. À l’issue de l’importation, celle-ci apparaît sous l’onglet Mises à jour. Pour plus d’informations sur le processus d’importation, consultez Importer une mise à jour vers Device Update.

Capture d’écran illustrant l’état de travail.

Sélectionner le groupe d’appareils

Vous pouvez utiliser la balise de groupe que vous avez appliquée à votre appareil pour déployer la mise à jour sur le groupe d’appareils. Sélectionnez l’onglet Groupes et déploiements dans la partie supérieure de la page Mises à jour pour voir la liste des groupes et des déploiements et le graphique de conformité de la mise à 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. Pour plus d’informations, consultez Conformité de Device Update.

Sous Nom de groupe figure la liste de tous les groupes d’appareils pour les appareils connectés à ce hub IoT et leurs mises à jour disponibles, avec des liens pour déployer les mises à jour sous État. Les appareils qui ne répondent pas aux exigences de classe d’appareil d’un groupe s’affichent dans un groupe non valide correspondant. Pour plus d’informations sur les balises et les groupes, consultez Gérer les groupes d’appareils.

Vous devriez y trouver le groupe d’appareils qui contient l’appareil que vous avez configuré dans ce tutoriel, de même que les mises à jour disponibles pour les appareils du groupe. Vous devrez probablement actualiser la page. Pour déployer la meilleure mise à jour disponible sur le groupe à partir de cet affichage, sélectionnez Déployer à côté du groupe.

Capture d’écran illustrant l’affichage de conformité des mises à jour.

Déployer la mise à jour

  1. Sur la page Détails du groupe, sélectionnez l’onglet Déploiement actuel, puis Déployer à côté de la mise à jour souhaitée dans la section Mises à jour disponibles. La meilleure mise à jour disponible pour le groupe est désignée par une mise en surbrillance Optimale.

    Capture d’écran illustrant la sélection d’une mise à jour.

  2. Sur la page Créer un déploiement, planifiez le démarrage de votre déploiement (immédiat ou futur), puis sélectionnez Créer.

    Capture d’écran de la création d’un déploiement.

    Conseil

    Par défaut, la date et l’heure de Début est définie sur 24 heures à partir de votre heure actuelle. Veillez à sélectionner une autre date et heure si vous souhaitez que le déploiement commence plus tôt.

  3. Sur la page Détails du groupe sous Détails du déploiement, l’État devient Actif. Sous Mises à jour disponibles, la mise à jour sélectionnée est marquée avec (déploiement).

    Capture d’écran montrant le déploiement comme Actif.

  4. Sous l’onglet Groupes et déploiements de la page Mises à jour, affichez le graphique de conformité pour voir que la mise à jour est maintenant en cours. Une fois votre appareil correctement mis à jour, les détails du déploiement et le graphique de conformité se mettent à jour pour refléter cet état.

    Capture d’écran illustrant la mise à jour réussie.

Afficher l’historique des déploiements de mises à jour

  1. Sélectionnez l’onglet Historique des déploiements en haut de la page Détails du groupe, sélectionnez le lien détails à côté du déploiement créé.

    Capture d’écran illustrant Historique du déploiement.

  2. Sur la page Détails du déploiement, sélectionnez l’icône Actualiser pour afficher les derniers détails de l’état.

    Capture d’écran des détails du déploiement.

Nettoyer les ressources

Dès lors que vous n’avez plus besoin des ressources que vous avez créées pour ce tutoriel, vous pouvez les supprimer.

  1. Dans le Portail Azure, accédez au groupe de ressources qui contient les ressources.
  2. Si vous voulez supprimer toutes les ressources dans le groupe, sélectionnez Supprimer le groupe de ressources.
  3. Si vous souhaitez supprimer seulement certaines ressources, utilisez les cases à cocher pour sélectionner les ressources en question, puis sélectionnez Supprimer.