Obtention des notifications de déploiement - 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.

Obtention des notifications de déploiement

Amazon EventBridge Les règles d'événement vous fournissent des notifications sur les changements d'état pour vos déploiements de groupe Greengrass. EventBridge fournit un flux d'événements système en temps quasi réel qui décrivent les modifications apportées àAWSAWS.AWS IoT Greengrassenvoie ces événements à EventBridge sur unau moins une foisbase. Cela signifie queAWS IoT Greengrasspeut envoyer plusieurs copies d'un événement donné pour garantir la livraison. En outre, les écouteurs d'événements peuvent ne pas recevoir les événements dans l'ordre dans lequel ces derniers se produisent.

Note

Amazon EventBridge est un service de bus d'événement que vous pouvez utiliser pour connecter vos applications à des données provenant de diverses sources, telles queAppareils noyau Greengrasset les notifications de déploiement. Pour de plus amples informations, veuillez consulterQu'est-ce qu'Amazon EventBridge?dans leAmazon EventBridge Guide de l'utilisateur.

AWS IoT Greengrass émet un événement lorsque des déploiements de groupe changent d'état. Vous pouvez créer une EventBridge règle qui s'exécute pour toutes les transitions d'état ou les transitions vers les états que vous spécifiez. Lorsqu'un déploiement passe à un état qui déclenche une règle, EventBridge appelle les actions cibles définies dans la règle. Cela vous permet d'envoyer des notifications, de capturer des informations sur les événements, de prendre des mesures correctives ou de déclencher d'autres événements en réponse à un changement d'état. Par exemple, vous pouvez créer des règles pour les cas d'utilisation suivants :

  • Mise en route des opérations post-déploiement, telles que le téléchargement d'assets et la notification au personnel.

  • Envoyer des notifications en cas de réussite ou de l'échec d'un déploiement.

  • Publier des métriques personnalisées sur les événements de déploiement.

AWS IoT Greengrass émet un événement lorsqu'un déploiement passe aux états suivants : Building, InProgress, Success et Failure.

Note

La surveillance du statut d'une opération de déploiement en bloc n'est pas prise en charge actuellement. Cependant, AWS IoT Greengrass émet des événements de changement d'état pour les déploiements de groupe individuels qui font partie d'un déploiement en bloc.

Événement de changement de statut de déploiement de groupe

L' événement pour un changement d'état de déploiement utilise le format suivant :

{ "version":"0", "id":" cd4d811e-ab12-322b-8255-EXAMPLEb1bc8", "detail-type":"Greengrass Deployment Status Change", "source":"aws.greengrass", "account":"123456789012", "time":"2018-03-22T00:38:11Z", "region":"us-west-2", "resources":[], "detail":{ "group-id": "284dcd4e-24bc-4c8c-a770-EXAMPLEf03b8", "deployment-id": "4f38f1a7-3dd0-42a1-af48-EXAMPLE09681", "deployment-type": "NewDeployment|Redeployment|ResetDeployment|ForceResetDeployment", "status": "Building|InProgress|Success|Failure" } }

Vous pouvez créer des règles qui s'appliquent à un ou plusieurs groupes. Vous pouvez filtrer les règles selon un ou plusieurs des types et états de déploiement suivants :

Types de déploiement
  • NewDeployment. Premier déploiement d'une version de groupe.

  • ReDeployment. Redéploiement d'une version de groupe.

  • ResetDeployment. Supprime les informations de déploiement stockées dans laAWS Cloudet sur leAWS IoT GreengrassCœurs. Pour plus d'informations, consultez Réinitialiser les déploiements.

  • ForceResetDeployment. Supprime les informations de déploiement stockées dans laAWS Cloudet signale la réussite sans attendre que le noyau réponde. Supprime également des informations de déploiement stockées sur le noyau si le noyau est connecté ou lors de sa prochaine connexion.

États de déploiement
  • Building. AWS IoT Greengrass valide la configuration du groupe et construit les artefacts de déploiement.

  • InProgress. Le déploiement est en cours sur leAWS IoT GreengrassCœurs.

  • Success. Le déploiement a réussi.

  • Failure. Le déploiement a échoué.

Il est possible que les événements soient dupliqués ou hors service. Pour déterminer l'ordre des événements, utilisez la propriété time.

Note

AWS IoT Greengrass n'utilise pas la propriété resources, qui est donc toujours vide.

Conditions préalables à la création d' EventBridge règles

Avant de créer une EventBridge règle pourAWS IoT Greengrass, procédez comme suit :

  • Familiarisez-vous avec les événements, les règles et les cibles de EventBridge.

  • Créez et configurez les cibles appelées par votre EventBridge règles. Les règles peuvent appeler de nombreux types de cibles, notamment :

    • Amazon Simple Notification Service (Amazon SNS)

    • Fonctions AWS Lambda

    • Amazon Kinesis Video Streams

    • Files d'attente Amazon Simple Queue Service (Amazon SQS)

Pour de plus amples informations, veuillez consulterQu'est-ce qu'Amazon EventBridge?etMise en route avec Amazon EventBridgedans leAmazon EventBridge Guide de l'utilisateur.

Configurer les notifications de déploiement (console)

Pour créer une EventBridge règle qui publie une rubrique Amazon SNS lorsque l'état du déploiement change pour un groupe. Cela permet aux serveurs web, aux adresses e-mail et aux autres abonnés à la rubrique de répondre à l'événement. Pour de plus amples informations, veuillez consulterCréation d'une EventBridge règle qui se déclenche sur un événement à partir d'unAWSressourcedans leAmazon EventBridge Guide de l'utilisateur.

  1. Ouverture d'Amazon EventBridgeconsole.

  2. Dans le volet de navigation, choisissez Rules.

  3. Choisissez Create rule.

  4. Saisissez un nom et une description pour la règle.

    Une règle ne peut pas avoir le même nom qu'une autre règle de la même région et sur le même bus d'événement.

  5. Pour Event bus (Bus d'événement), sélectionnez le bus d'événement que vous souhaitez associer à cette règle. Si vous souhaitez que cette règle corresponde aux événements provenant de votre compte, sélectionnezAWSBus d'événement par défaut. Lorsqu'un service AWS de votre compte émet un événement, il accède toujours au bus d'événement par défaut de votre compte.

  6. Pour Rule type (Type de règle), choisissez Rule with an event pattern (Règle avec un modèle d'événement).

  7. Choisissez Next (Suivant).

  8. Pour Event source (Origine de l'événement), choisissez AWSservices (Services ).

  9. PourModèle d'événement, choisissezAWSservices.

  10. PourAWSservice, choisissez Greengrass.

  11. Dans Event type (Type d'événement), choisissez Greengrass Deployment Status Change -Modifier l'état du déploiement Greengrass).

    Note

    LeAWSAppel d'API via CloudTraille type d'événement est basé surAWS IoT GreengrassIntégration de àAWS CloudTrail. Vous pouvez utiliser cette option pour créer des règles initiées par des appels en lecture ou en écriture vers laAWS IoT GreengrassAPI. Pour plus d'informations, consultez Journalisation des appels d'API AWS IoT Greengrass avec AWS CloudTrail.

  12. Choisissez les états de déploiement qui déclenchent une notification.

    • Pour recevoir des notifications pour tous les événements de modification d'état, choisissez Any state (N'importe quel état).

    • Pour recevoir des notifications pour certains événements de modification d'état uniquement, choisissez Specific state(s) (État(s) spécifique(s)), puis choisissez les états cibles.

  13. Choisissez les types de déploiement qui déclenchent une notification.

    • Pour recevoir des notifications pour tous les types de déploiement, choisissez Any state (N'importe quel état).

    • Pour recevoir des notifications pour certains types de déploiement uniquement, choisissez Specific state(s) (État(s) spécifique(s)), puis choisissez les types de déploiement cibles.

  14. Choisissez Next (Suivant).

  15. PourTypes de cible, choisissezAWSservice.

  16. PourSélectionnez une cible, configurez votre cible. Cet exemple utilise une rubrique Amazon SNS, mais vous pouvez configurer d'autres types de cible pour envoyer des notifications.

    1. Pour Target (Cible), choisissez SNS topic (Rubrique SNS).

    2. Pour Topic (Rubrique), choisissez votre rubrique cible.

    3. Choisissez Next (Suivant).

  17. UNDERÉtiquettes, définissez les balises pour la règle ou laissez les champs vides.

  18. Choisissez Next (Suivant).

  19. Consultez les détails de la règle et choisissez Create rule (Créer une règle).

Configurer les notifications de déploiement (interface de ligne de commande)

Pour créer une EventBridge règle qui publie une rubrique Amazon SNS lorsque l'état du déploiement change pour un groupe. Cela permet aux serveurs web, aux adresses e-mail et aux autres abonnés à la rubrique de répondre à l'événement.

  1. Créez la règle .

    • Remplacezgroup-idavec l'ID de votreAWS IoT Greengrass.

    aws events put-rule \ --name TestRule \ --event-pattern "{\"source\": [\"aws.greengrass\"], \"detail\": {\"group-id\": [\"group-id\"]}}"

    Les propriétés qui sont omises dans le modèle sont ignorées.

  2. Ajoutez la rubrique en tant que cible de règle.

    • Remplacezfil de sujetavec l'ARN de votre rubrique Amazon SNS.

    aws events put-targets \ --rule TestRule \ --targets "Id"="1","Arn"="topic-arn"
    Note

    Pour autoriser Amazon EventBridge pour appeler votre rubrique cible, vous devez ajouter une stratégie basée sur les ressources à votre rubrique. Pour de plus amples informations, veuillez consulterAutorisations Amazon SNSdans leAmazon EventBridge Guide de l'utilisateur.

Pour de plus amples informations, veuillez consulterÉvénements et modèles d'événements dans EventBridgedans leAmazon EventBridge Guide de l'utilisateur.

Configurer les notifications de déploiement (AWS CloudFormation)

UtiliserAWS CloudFormationmodèles à créer EventBridge Règles qui envoient des notifications sur les changements d'état pour vos déploiements de groupe Greengrass. Pour de plus amples informations, veuillez consulterAmazon EventBridge Référence de type de ressourcedans leAWS CloudFormationGuide de l'utilisateur.

Consulter aussi