Exercice - Installer le runtime IoT Edge pour Linux
Avant de commencer, vous aurez besoin des éléments suivants :
- Un abonnement Microsoft Azure. Si vous n’en avez pas encore, vous pouvez vous inscrire à un essai gratuit à https://azure.microsoft.com/free . Si vous êtes étudiant, inscrivez-vous à un compte Azure for Students .
Créer des ressources cloud
Créer un groupe de ressources
Effectuez les étapes suivantes dans l’environnement Azure Cloud Shell.
Sélectionnez « Bash » en haut à gauche en tant qu’environnement pour votre Cloud Shell.
Ajoutez l’extension Azure IoT à l’instance de Cloud Shell.
az extension add --name azure-iotCréez un groupe de ressources à l’emplacement eastus2 à l’aide de la commande suivante. Donnez un nom à votre groupe de ressources.
az group create --name <resource-group-name> --location eastus2
Créer un appareil IoT Edge dans le hub IoT
Créez un Hub IoT de niveau F1 à l’aide de la commande suivante. Donnez un nom à votre IoT Hub et remplacez-le par votre groupe de ressources.
az iot hub create --resource-group <resource-group-name> --name <iot-hub-name> --sku F1 --partition-count 2Un appareil doit être inscrit auprès de votre IoT Hub avant de pouvoir se connecter. Exécutez la commande suivante pour créer une identité d’appareil dans votre IoT Hub. Donnez un nom à votre appareil IoT et remplacez-le par votre ioT Hub.
az iot hub device-identity create --hub-name <iot-hub-name> --device-id <device-id>
Installer IoT Edge pour Linux
Remarque
Accédez à la page Microsoft si vous souhaitez en savoir plus sur l’installation d’IoT Edge pour Linux.
Ouvrez le terminal sur votre ordinateur Linux.
Installez la configuration du référentiel qui correspond à votre système d’exploitation d’appareil.
Ubuntu Server 18.04 :
curl https://packages.microsoft.com/config/ubuntu/18.04/multiarch/prod.list > ./microsoft-prod.listCopiez la liste générée dans le répertoire sources.list.d.
sudo cp ./microsoft-prod.list /etc/apt/sources.list.d/Installez la clé publique Microsoft GPG.
curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.gpg sudo cp ./microsoft.gpg /etc/apt/trusted.gpg.d/
Installer un moteur de conteneur
Azure IoT Edge s’appuie sur un runtime de conteneur compatible OCI. Pour les scénarios de production, nous vous recommandons d’utiliser le moteur Moby. Le moteur Moby est le seul moteur de conteneur officiellement pris en charge avec Azure IoT Edge. Les images conteneur Docker CE/EE sont compatibles avec le runtime Moby.
Mettez à jour les listes de packages sur votre appareil.
sudo apt-get updateInstallez le moteur Moby.
sudo apt-get install moby-engine
Si vous recevez des erreurs lors de l’installation du moteur de conteneur Moby, vérifiez votre noyau Linux pour la compatibilité de Moby. Certains fabricants d’appareils embarqués livrent des images d’appareils qui contiennent des noyaux Linux personnalisés sans les fonctionnalités nécessaires à la compatibilité du moteur de conteneur. Exécutez la commande suivante, qui utilise le script check-config fourni par Moby pour vérifier la configuration de votre noyau :
curl -sSL https://raw.githubusercontent.com/moby/moby/master/contrib/check-config.sh -o check-config.sh
chmod +x check-config.sh
./check-config.sh
Dans la sortie du script, vérifiez que tous les éléments sous Generally Necessary et Network Drivers sont activés. Si vous ne disposez pas de fonctionnalités, activez-les en régénérant votre noyau à partir de la source et en sélectionnant les modules associés à inclure dans le noyau approprié .config. De même, si vous utilisez un générateur de configuration de noyau comme defconfig ou menuconfig, recherchez et activez les fonctionnalités respectives et régénérez votre noyau en conséquence. Une fois que vous avez déployé votre noyau nouvellement modifié, réexécutez le script check-config pour vérifier que toutes les fonctionnalités requises ont été correctement activées.
Installer le démon de sécurité IoT Edge
Le démon de sécurité IoT Edge fournit et gère les normes de sécurité sur l’appareil IoT Edge. Le démon démarre sur chaque démarrage et démarre l’appareil en démarrant le reste du runtime IoT Edge.
Mettez à jour les listes de packages sur votre appareil.
sudo apt-get updateVérifiez les versions d’IoT Edge disponibles.
apt list -a iotedgeInstallez la version la plus récente du démon de sécurité, utilisez la commande suivante qui installe également la dernière version du package libiothsm-std :
sudo apt-get install iotedge
Attribuez à l’appareil son identité cloud
S’authentifier avec des clés symétriques
À ce stade, le runtime IoT Edge est installé sur votre appareil Linux et vous devez approvisionner l’appareil avec ses informations d’identité et d’authentification cloud.
Cette section décrit les étapes de provisionnement d’un appareil avec l’authentification par clé symétrique. Vous devez avoir inscrit votre appareil dans IoT Hub et récupéré la chaîne de connexion à partir des informations de l’appareil.
Sur l’appareil IoT Edge, ouvrez le fichier de configuration.
sudo nano /etc/iotedge/config.yaml
Trouvez les configurations d’approvisionnement du fichier et décommentez la section de configuration d’approvisionnement manuelle à l'aide d'une chaîne de connexion, si elle n’est pas déjà décommentée.
```toml
# Manual provisioning configuration using a connection string
provisioning:
source: "manual"
device_connection_string: "<ADD DEVICE CONNECTION STRING HERE>"
```
Mettez à jour la valeur de device_connection_string avec la chaîne de connexion à partir de votre appareil IoT Edge. Vérifiez que toutes les autres sections d’approvisionnement sont commentées. Assurez-vous que la ligne approvisionnement: n’a pas d’espace blanc précédent et que les éléments imbriqués sont mis en retrait par deux espaces.
Pour coller le contenu du Presse-papiers dans Nano, cliquez sur le bouton droit en maintenant la touche Maj enfoncée ou appuyez sur Maj+Inser.
Enregistrez et fermez le fichier.
CTRL + X`, `Y`, `Enter
Après avoir entré les informations d’approvisionnement dans le fichier de configuration, redémarrez le démon :
sudo systemctl restart iotedge
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 que le service système IoT Edge est en cours d’exécution.
sudo systemctl status iotedge