Configurer votre appareil afin d'exécuter des tests IDT - AWS IoT Greengrass

AWS IoT Greengrass Version 1 est entré dans la phase de durée de vie prolongée le 30 juin 2023. Pour plus d'informations, consultez la politique de AWS IoT Greengrass V1 maintenance. Après cette date, AWS IoT Greengrass V1 ne publiera pas de mises à jour fournissant des fonctionnalités, des améliorations, des corrections de bogues ou des correctifs de sécurité. Les appareils qui fonctionnent AWS IoT Greengrass V1 sous tension ne seront pas perturbés et continueront à fonctionner et à se connecter au cloud. Nous vous recommandons vivement de migrer vers AWS IoT Greengrass Version 2, qui ajoute de nouvelles fonctionnalités importantes et prend en charge des plateformes supplémentaires.

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Configurer votre appareil afin d'exécuter des tests IDT

Pour configurer votre appareil, vous devez installer les dépendances AWS IoT Greengrass, configurer le logiciel AWS IoT Greengrass Core, configurer votre ordinateur hôte pour accéder à votre appareil et configurer des autorisations utilisateur sur votre appareil.

Vérifier les dépendances AWS IoT Greengrass sur l'appareil testé

Avant qu'IDT pour AWS IoT Greengrass ne puisse tester vos appareils, assurez-vous que vous avez configuré votre appareil comme décrit dans Mise en route sur AWS IoT Greengrass. Pour de plus amples informations sur les plateformes prises en charge, veuillez consulter Plateformes prises en charge.

Configurer le logiciel AWS IoT Greengrass

IDT pour AWS IoT Greengrass teste la compatibilité de votre appareil avec une version spécifique d'AWS IoT Greengrass. IDT vous offre deux options pour tester AWS IoT Greengrass sur vos appareils :

  • Téléchargez et utilisez une version du logiciel AWS IoT Greengrass Core. IDT installe le logiciel pour vous.

  • Utilisez une version du logiciel AWS IoT Greengrass Core déjà installée sur votre appareil.

Note

Chaque version d'AWS IoT Greengrass possède une version IDT correspondante. Vous devez télécharger la version d'IDT qui correspond à la version d'AWS IoT Greengrass que vous utilisez.

Les sections suivantes décrivent ces options. Vous devez en choisir une seule.

Vous pouvez télécharger leAWS IoT GreengrassLogiciel Core du logicielAWS IoT GreengrassLogiciel Corepage des téléchargements.

  1. Identifiez l'architecture et la distribution Linux appropriées, puis choisissez Download (Télécharger).

  2. Copiez le fichier tar.gz dans <device-tester-extract-location>/products/greengrass/ggc.

Note

Ne modifiez pas le nom du fichier AWS IoT Greengrass tar.gz. Ne placez pas plusieurs fichiers dans ce répertoire pour le même système d'exploitation et la même architecture. Par exemple, si les fichiers greengrass-linux-armv7l-1.7.1.tar.gz et greengrass-linux-armv7l-1.8.1.tar.gz figurent tous les deux dans ce répertoire, le test échoue.

Configurez IDT pour tester le logiciel AWS IoT Greengrass Core sur votre appareil en ajoutant l'attribut greengrassLocation dans le fichier device.json situé dans le dossier <device-tester-extract-location>/configs. Par exemple :

"greengrassLocation" : "<path-to-greengrass-on-device>"

Pour plus d'informations sur le fichier device.json, consultez Configurer device.json.

Sur les appareils Linux, l'emplacement par défaut du logiciel AWS IoT Greengrass Core est /greengrass.

Note

Votre appareil doit disposer d'une installation du logiciel AWS IoT Greengrass Core n'ayant pas été démarrée.

Vérifiez que vous avez ajouté l'utilisateur ggc_user et ggc_group sur votre appareil. Pour de plus amples informations, veuillez consulter Configuration de l'environnement pour AWS IoT Greengrass.

Configurer votre ordinateur hôte pour accéder à l'appareil testé

IDT s'exécute sur votre ordinateur hôte et doit être en mesure d'utiliser SSH pour se connecter à votre appareil. Il existe deux options pour permettre à IDT d'obtenir un accès SSH à vos appareils testés :

  1. Suivez les instructions indiquées ici pour créer une paire de clés SSH et autoriser votre clé à se connecter à votre appareil testé sans spécifier de mot de passe.

  2. Fournissez un nom d'utilisateur et un mot de passe pour chaque appareil du fichier device.json. Pour plus d'informations, consultez Configurer device.json.

Vous pouvez utiliser n'importe quelle implémentation SSL pour créer une clé SSH. Les instructions suivantes vous montrent comment utiliser SSH-KEYGEN ou PuTTYgen (pour Windows). Si vous utilisez une autre implémentation SSL, veuillez vous reporter à la documentation correspondante.

IDT utilise les clés SSH pour s'authentifier avec votre appareil testé.

Pour créer une clé SSH avec SSH-KEYGEN
  1. Créez une clé SSH.

    Vous pouvez utiliser la commande ssh-keygen Open SSH pour créer une paire de clés SSH. Si vous disposez déjà d'une paire de clés SSH sur votre ordinateur hôte, la bonne pratique consiste à créer une paire de clés SSH spécifique pour IDT. Ainsi, une fois que vous avez terminé le test, votre ordinateur hôte ne peut plus se connecter à votre appareil sans saisir de mot de passe. Cela vous permet également de restreindre l'accès à l'appareil à distance aux seules personnes qui en ont besoin.

    Note

    Windows n'a pas de client SSH installé. Pour plus d'informations sur l'installation d'un client SSH sous Windows, consultez Download SSH Client Software.

    La commande ssh-keygen vous invite à indiquer un nom et un chemin d'accès pour stocker la paire de clés. Par défaut, les fichiers de la paire de clés sont nommés id_rsa (clé privée) et id_rsa.pub (clé publique). Sur Mac OS et Linux, l'emplacement par défaut de ces fichiers est ~/.ssh/. Sur Windows, l'emplacement par défaut est C:\Users\<user-name>\.ssh.

    Lorsque vous y êtes invité, saisissez une expression clé pour protéger votre clé SSH. Pour de plus amples informations, veuillez consulter Generate a New SSH key.

  2. Ajoutez des clés SSH autorisées à l'appareil testé.

    IDT doit utiliser votre clé SSH privée pour se connecter à l'appareil testé. Pour autoriser votre clé SSH privée à se connecter à l'appareil testé, utilisez la commande ssh-copy-id à partir de votre ordinateur hôte. Cette commande ajoute votre clé publique au fichier ~/.ssh/authorized_keys sur l'appareil testé. Par exemple :

    $ ssh-copy-id <remote-ssh-user>@<remote-device-ip>

    remote-ssh-user correspond au nom d'utilisateur utilisé pour se connecter à l'appareil à tester et où remote-device-ip est l'adresse IP de l'appareil à tester. Par exemple :

    ssh-copy-id pi@192.168.1.5

    Lorsque vous y êtes invité, entrez le mot de passe du nom d'utilisateur que vous avez spécifié dans la commande ssh-copy-id.

    ssh-copy-id suppose que la clé publique est nommée id_rsa.pub et est stockée à l'emplacement par défaut (sur Mac OS et Linux, ~/.ssh/ et sur Windows, C:\Users\<user-name>\.ssh). Si vous avez donné à la clé publique un autre nom ou si vous l'avez stockée à un autre emplacement, vous devez spécifier le chemin d'accès qualifié complet de votre clé publique SSH à l'aide de l'option -i pour ssh-copy-id (par exemple, ssh-copy-id -i ~/my/path/myKey.pub). Pour plus d'informations sur la création de clés SSH et la copie des clés publiques, consultez SSH-COPY-ID.

Pour créer une clé SSH à l'aide de PuTTYgen (Windows uniquement)
  1. Assurez-vous que le serveur et le client OpenSSH sont installés sur votre appareil testé. Pour plus d'informations, consultez OpenSSH.

  2. Installez PuTTYgen sur votre appareil testé.

  3. Ouvrez PuTTYgen.

  4. Choisissez Generate (Générer) et déplacez le curseur de la souris dans la zone pour générer une clé privée.

  5. Dans le menu Conversions choisissez Export OpenSSH key, et enregistrez la clé privée avec une extension de fichier .pem.

  6. Ajoutez la clé publique au fichier /home/<user>/.ssh/authorized_keys sur l'appareil testé.

    1. Copiez le texte de la clé publique à partir de la fenêtre PuTTYgen.

    2. Utilisez PuTTY pour créer une session sur votre appareil testé.

      1. À partir d'une invite de commande ou d'une fenêtre Windows Powershell, exécutez la commande suivante :

        C:/<path-to-putty>/putty.exe -ssh <user>@<dut-ip-address>

      2. Lorsque vous y êtes invité, entrez le mot de passe de votre appareil.

      3. Utilisez vi ou un autre éditeur de texte pour ajouter la clé publique au fichier /home/<user>/.ssh/authorized_keys sur votre appareil testé.

  7. Mettez à jour votre fichier device.json avec votre nom d'utilisateur, l'adresse IP et le chemin d'accès au fichier de clé privée que vous venez d'enregistrer sur votre ordinateur hôte pour chaque appareil testé. Pour plus d'informations, consultez Configurer device.json. Assurez-vous de fournir le chemin d'accès complet et le nom de fichier à la clé privée et d'utiliser des barres obliques (« / »). Par exemple, pour le chemin Windows C:\DT\privatekey.pem, utilisez C:/DT/privatekey.pem dans le fichier device.json.

Configurer les autorisations utilisateur sur votre appareil

IDT effectue des opérations sur différents répertoires et fichiers d'un appareil testé. Certaines de ces opérations nécessitent des autorisations d'un niveau élevé (à l'aide de la commande sudo). Pour automatiser ces opérations, IDT pour AWS IoT Greengrass doit être en mesure d'exécuter des commandes avec la commande sudo sans être invité à saisir un mot de passe.

Suivez ces étapes sur l'appareil testé afin d'autoriser l'accès sudo sans avoir à saisir un mot de passe.

Note

username fait référence à l'utilisateur SSH utilisé par IDT pour accéder à l'appareil testé.

Pour ajouter l'utilisateur au groupe sudo
  1. Sur l'appareil testé, exécutez sudo usermod -aG sudo <username>

  2. Déconnectez-vous, puis reconnectez-vous pour que les modifications entrent en vigueur.

  3. Vérifiez que votre nom d'utilisateur a été correctement ajouté et exécutez sudo echo test. Si vous n'êtes pas invité à saisir un mot de passe, cela signifie que votre utilisateur est configuré correctement.

  4. Ouvrez le fichier /etc/sudoers, puis ajoutez la ligne suivante à la fin du fichier :

    <ssh-username> ALL=(ALL) NOPASSWD: ALL

Configurer votre appareil pour tester des fonctions facultatives

Les rubriques suivantes décrivent comment configurer vos appareils pour exécuter des tests IDT pour des fonctions facultatives. Suivez ces étapes de configuration uniquement si vous souhaitez tester ces fonctions. Dans le cas contraire, passez à Configurez les paramètres IDT pour exécuter leAWS IoT Greengrasssuite de qualification.