Développer des AWS IoT Greengrass composants - AWS IoT Greengrass

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.

Développer des AWS IoT Greengrass composants

Vous pouvez développer et tester des composants sur votre appareil principal Greengrass. Par conséquent, vous pouvez créer et itérer votre AWS IoT Greengrass logiciel sans interagir avec leAWS Cloud. Lorsque vous avez terminé une version de votre composant, vous pouvez la télécharger AWS IoT Greengrass dans le cloud, afin que vous et votre équipe puissiez déployer le composant sur d'autres appareils de votre flotte. Pour plus d'informations sur le déploiement des composants, consultezDéployer AWS IoT Greengrass des composants sur des appareils.

Chaque composant est composé d'une recette et d'artefacts.

  • Recettes

    Chaque composant contient un fichier de recette qui définit ses métadonnées. La recette spécifie également les paramètres de configuration, les dépendances des composants, le cycle de vie et la compatibilité de la plate-forme du composant. Le cycle de vie du composant définit les commandes qui installent, exécutent et arrêtent le composant. Pour plus d’informations, consultez AWS IoT Greengrass référence de recette de composant.

    Vous pouvez définir des recettes au format JSON ou YAML.

  • Artefacts

    Les composants peuvent avoir un nombre illimité d'artefacts, qui sont des binaires de composants. Les artefacts peuvent inclure des scripts, du code compilé, des ressources statiques et tout autre fichier consommé par un composant. Les composants peuvent également consommer des artefacts issus de leurs dépendances.

AWS IoT Greengrassfournit des composants prédéfinis que vous pouvez utiliser dans vos applications et déployer sur vos appareils. Par exemple, vous pouvez utiliser le composant Stream Manager pour télécharger des données vers différents AWS services, ou vous pouvez utiliser le composant CloudWatch Metrics pour publier des métriques personnalisées sur Amazon CloudWatch. Pour plus d’informations, consultez AWS-composants fournis.

AWS IoT Greengrassorganise un index des composants de Greengrass, appelé Greengrass Software Catalog. Ce catalogue suit les composants de Greengrass développés par la communauté Greengrass. À partir de ce catalogue, vous pouvez télécharger, modifier et déployer des composants pour créer vos applications Greengrass. Pour plus d’informations, consultez Composantes communautaires.

Le logiciel AWS IoT Greengrass Core exécute les composants en tant qu'utilisateur et groupe du système, tels que ggc_user etggc_group, que vous configurez sur le périphérique principal. Cela signifie que les composants disposent des autorisations de cet utilisateur du système. Si vous utilisez un utilisateur système sans répertoire de base, les composants ne peuvent pas utiliser de commandes d'exécution ou de code utilisant un répertoire de base. Cela signifie que vous ne pouvez pas utiliser la pip install some-library --user commande pour installer des packages Python par exemple. Si vous avez suivi le didacticiel de démarrage pour configurer votre appareil principal, cela signifie que l'utilisateur de votre système n'a pas de répertoire personnel. Pour plus d'informations sur la configuration de l'utilisateur et du groupe qui exécutent les composants, consultezConfigurer l'utilisateur qui exécute les composants.

Note

AWS IoT Greengrassutilise des versions sémantiques pour les composants. Les versions sémantiques suivent une majeure. mineur. système de numéro de patch. Par exemple, la version 1.0.0 représente la première version majeure d'un composant. Pour plus d'informations, consultez la spécification de version sémantique.

Cycle de vie des composants

Le cycle de vie des composants définit les étapes que le logiciel AWS IoT Greengrass Core utilise pour installer et exécuter les composants. Chaque étape définit un script et d'autres informations qui indiquent le comportement du composant. Par exemple, lorsque vous installez un composant, le logiciel AWS IoT Greengrass Core exécute le script de Install cycle de vie de ce composant. Les composants des équipements principaux présentent les états de cycle de vie suivants :

  • NEW— La recette et les artefacts du composant sont chargés sur le périphérique principal, mais le composant n'est pas installé. Une fois qu'un composant a atteint cet état, il exécute son script d'installation.

  • INSTALLED— Le composant est installé sur le périphérique principal. Le composant passe dans cet état après avoir exécuté son script d'installation.

  • STARTING— Le composant démarre sur le périphérique principal. Le composant entre dans cet état lorsqu'il exécute son script de démarrage. Si le démarrage réussit, le composant passe à l'RUNNINGétat.

  • RUNNING— Le composant est en cours d'exécution sur le périphérique principal. Le composant entre dans cet état lorsqu'il exécute son script d'exécution ou lorsque des processus en arrière-plan sont actifs depuis son script de démarrage.

  • FINISHED— Le composant s'est exécuté correctement et a terminé son exécution.

  • STOPPING— Le composant est en train de s'arrêter. Le composant entre dans cet état lorsqu'il exécute son script d'arrêt.

  • ERRORED— Le composant a rencontré une erreur. Lorsque le composant entre dans cet état, il exécute son script de restauration. Ensuite, le composant redémarre pour essayer de revenir à une utilisation normale. Si le composant entre trois fois dans ERRORED cet état sans succès, le composant devientBROKEN.

  • BROKEN— Le composant a rencontré des erreurs à plusieurs reprises et ne peut pas être rétabli. Vous devez déployer à nouveau le composant pour le réparer.

Types de composants

Le type de composant indique comment le logiciel AWS IoT Greengrass Core exécute le composant. Les types de composants peuvent être les suivants :

  • Noyau (aws.greengrass.nucleus)

    Le noyau Greengrass est le composant qui fournit les fonctionnalités minimales du logiciel AWS IoT Greengrass Core. Pour plus d’informations, consultez Noyau de Greengrass.

  • Plug-in (aws.greengrass.plugin)

    Le noyau Greengrass exécute un composant de plug-in dans la même machine virtuelle Java (JVM) que le noyau. Le noyau redémarre lorsque vous modifiez la version d'un composant du plugin sur un périphérique principal. Pour installer et exécuter les composants du plugin, vous devez configurer le noyau Greengrass pour qu'il s'exécute en tant que service système. Pour plus d’informations, consultez Configurer le noyau Greengrass en tant que service système.

    Plusieurs composants fournis par AWS sont des composants de plug-in, ce qui leur permet de s'interfacer directement avec le noyau de Greengrass. Les composants du plugin utilisent le même fichier journal que le noyau Greengrass. Pour plus d’informations, consultez AWS IoT GreengrassJournaux de surveillance.

  • Générique (aws.greengrass.generic)

    Le noyau Greengrass exécute les scripts de cycle de vie d'un composant générique, si le composant définit un cycle de vie.

    Ce type est le type par défaut pour les composants personnalisés.

  • Lambda () aws.greengrass.lambda

    Le noyau Greengrass exécute un composant de fonction Lambda à l'aide du composant de lancement Lambda.

    Lorsque vous créez un composant à partir d'une fonction Lambda, le composant est de ce type. Pour plus d’informations, consultez Exécuter AWS Lambda des fonctions.

Note

Il est déconseillé de spécifier le type de composant dans une recette. AWS IoT Greengrassdéfinit le type pour vous lorsque vous créez un composant.