Obter notificações de implantação - AWS IoT Greengrass

AWS IoT Greengrass Version 1 entrou na fase de vida útil prolongada em 30 de junho de 2023. Para obter mais informações, consulte política de manutenção do AWS IoT Greengrass V1. Após essa data, AWS IoT Greengrass V1 não lançaremos atualizações que forneçam recursos, aprimoramentos, correções de erros ou patches de segurança. Os dispositivos que funcionam AWS IoT Greengrass V1 não serão interrompidos e continuarão operando e se conectando à nuvem. É altamente recomendável que você migre para AWS IoT Greengrass Version 2, o que adiciona novos recursos significativos e suporte para plataformas adicionais.

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Obter notificações de implantação

As regras de eventos do Amazon EventBridge fornecem notificações sobre alterações de estado para suas implantações de grupo do Greengrass. O EventBridge é um fluxo quase em tempo de sistemas de eventos que descrevem mudanças nos recursos da AWS. O AWS IoT Greengrass envia esses eventos ao EventBridge, pelo menos, uma vez. Isso significa que AWS IoT Greengrass pode enviar várias cópias de um determinado evento para garantir a entrega. Além disso, os listeners do evento poderão não receber os eventos na ordem em que estes ocorreram.

nota

O Amazon EventBridge é um serviço de barramento de eventos que você pode usar para facilitar a conexão de aplicações a dados de diversas origens, como os dispositivos de núcleo do Greengrass e as notificações de implantação. Para obter mais informações, consulte O que é o Amazon EventBridge? no Manual do usuário do Amazon EventBridge.

O AWS IoT Greengrass emite um evento quando as implantações de grupo do alteram o estado. Você pode criar uma regra do EventBridge que é executada para todas as transições de estado ou transições para os estados especificados. Quando uma implantação entra em um estado que inicia uma regra, o EventBridge invoca as ações de destino definidas na regra. Isso permite enviar notificações, capturar informações de eventos, executar ações corretivas ou iniciar outros eventos em resposta a uma alteração de estado. Por exemplo, você pode criar regras para os seguintes casos de uso:

  • Iniciar operações pós-implantação, como fazer download de ativos e notificar a equipe.

  • Enviar notificações após uma implantação bem-sucedida ou com falha.

  • Publicar métricas personalizadas sobre eventos de implantação.

OAWS IoT Greengrass emite um evento quando uma implantação entra nos seguintes estados: Building, InProgress, Success e Failure.

nota

Atualmente, não há suporte para o monitoramento do status de uma operação de implantação em massa . No entanto, o AWS IoT Greengrass emite eventos de alteração de estado para implantações de grupo individuais que fazem parte de uma implantação em massa.

Evento de alteração de status da implantação do grupo

O evento para uma alteração no estado da implantação usa o seguinte formato:

{ "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" } }

Você pode criar regras que se aplicam a um ou mais grupos. Você pode filtrar regras por um ou mais dos seguintes tipos e estados de implantação:

Tipos de implantação
  • NewDeployment. A primeira implantação de uma versão de grupo.

  • ReDeployment. Uma reimplantação de uma versão de grupo.

  • ResetDeployment. Exclui informações de implantação armazenadas na Nuvem AWS e no AWS IoT Greengrass. Para obter mais informações, consulte Redefinir implantações.

  • ForceResetDeployment. Exclui informações de implantação armazenadas na Nuvem AWS e relata sucesso sem esperar que o núcleo responda. Também exclui informações de implantação armazenadas no núcleo se ele estiver conectado ou quando ele se conectar.

Estados de implantação
  • Building. O AWS IoT Greengrass está validando a configuração do grupo e criando artefatos de implantação.

  • InProgress. A implantação está em andamento no núcleo do AWS IoT Greengrass.

  • Success. A implantação foi bem-sucedida.

  • Failure. Houve falha na implantação.

É possível que os eventos estejam duplicados ou fora de ordem. Para determinar a ordem dos eventos, use a propriedade time.

nota

O AWS IoT Greengrass não usa a propriedade resources, portanto, ela está sempre vazia.

Pré-requisitos para criar regras do EventBridge

Antes de criar uma regra do EventBridge para AWS IoT Greengrass, faça o seguinte:

  • Familiarize-se com os eventos, regras e destinos no EventBridge.

  • Crie e configure os destinos invocados por suas regras do EventBridge. As regras podem invocar muitos tipos de destinos, incluindo:

    • Amazon Simple Notification Service (Amazon SNS)

    • Funções do AWS Lambda

    • Amazon Kinesis Video Streams

    • Filas do Amazon Simple Queue Service (Amazon SQS)

Para obter mais informações, consulte O que é o Amazon EventBridge e Começar a usar o Amazon EventBridge no Manual do usuário do Amazon EventBridge.

Configurar notificações de implantação (console)

Use as etapas a seguir para criar uma regra do EventBridge que publica um tópico do Amazon SNS quando o estado de implantação é alterado para um grupo. Isso permite que servidores web, endereços de e-mail e outros assinantes de tópicos respondam ao evento. Para obter mais informações, consulte Criando uma regra do EventBridge que aciona um evento de um recurso da AWS no Guia do usuário do Amazon EventBridge.

  1. Abra o console do Amazon EventBridge.

  2. No painel de navegação, selecione Rules (Regras).

  3. Selecione Criar regra.

  4. Insira um nome e uma descrição para a regra.

    Uma regra não pode ter o mesmo nome que outra regra na mesma região e no mesmo barramento de eventos.

  5. Em Barramento de eventos, selecione o barramento de eventos que você deseja associar a essa regra. Se quiser que essa regra faça a correspondência com eventos provenientes da sua conta, selecione Barramento de eventos padrão da AWS. Quando um serviço da AWS em sua conta emite um evento, ele sempre vai para o barramento de eventos padrão da sua conta.

  6. Em Rule type (Tipo de regra), selecione Rule with an event pattern (Regra com um padrão de evento).

  7. Selecione Next (Próximo).

  8. Em Event source (Origem do evento), selecione AWS services (Serviços da ).

  9. Em Padrão do evento, selecione Serviços da AWS.

  10. Em Serviço da AWS, selecione Greengrass.

  11. Em Tipo de evento, selecione Greengrass Deployment Status Change (Alteração de status de Implantação do Greengrass).

    nota

    O tipo de evento AWS Chamada de API da via CloudTrail é baseado na integração do AWS IoT Greengrass com o AWS CloudTrail. Você pode usar essa opção para criar regras iniciadas por chamadas de leitura ou gravação para a API do AWS IoT Greengrass. Para obter mais informações, consulte Registrar em log chamadas de API do AWS IoT Greengrass com o AWS CloudTrail.

  12. Selecione os estados de implantação que iniciam uma notificação.

    • Para receber notificações de todos os eventos de alteração de estado, selecione Any state (Qualquer estado).

    • Para receber notificações apenas para alguns eventos de alteração de estado, selecione Specific state(s) (Estados específicos) e, depois, selecione os estados de destino.

  13. Selecione os tipos de implantação que iniciam uma notificação.

    • Para receber notificações sobre todos os tipos de implantação, selecione Any state (Qualquer estado).

    • Para receber notificações somente para alguns tipos de implantação, selecione Specific state(s) (Estados específicos) e, depois, selecione os tipos de implantação de destino.

  14. Selecione Next (Próximo).

  15. Em Target types (Tipos de destinos), selecione AWS service (Serviço da ).

  16. Em Selecionar um destino, configure seu destino. Este exemplo usa um tópico do Amazon SNS, mas você pode configurar outros tipos de destino para enviar notificações.

    1. Em Target (Destino), selecione SNS topic (Tópico do SNS).

    2. Em Topic (Tópico), selecione o tópico de destino.

    3. Selecione Next (Próximo).

  17. Em Tags, defina tags para a regra ou deixe os campos em branco.

  18. Selecione Next (Próximo).

  19. Analise os detalhes da regra e selecione Criar regra.

Configurar notificações de implantação (CLI)

Use as etapas a seguir para criar uma regra do EventBridge que publica um tópico do Amazon SNS quando o estado de implantação é alterado para um grupo. Isso permite que servidores web, endereços de e-mail e outros assinantes de tópicos respondam ao evento.

  1. Crie a regra.

    • Substitua group-id pelo ID do seu grupo AWS IoT Greengrass.

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

    As propriedades que são omitidas do padrão são ignoradas.

  2. Adicione o tópico como um destino de regra.

    • Substitua topic-arn pelo ARN do tópico do Amazon SNS.

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

    Para permitir que o Amazon EventBridge chame o tópico de destino, você deve adicionar uma política baseada em recursos ao tópico. Para obter mais informações, consulte Permissões do Amazon SNS no Manual do usuário do Amazon EventBridge.

Para obter mais informações, consulte Eventos e padrões de eventos no EventBridge no Manual do usuário do Amazon EventBridge.

Configurar notificações de implantação (AWS CloudFormation)

Use modelos do AWS CloudFormation para criar regras do EventBridge que enviam notificações sobre alterações de estado para suas implantações de grupo do Greengrass. Para obter mais informações, consulte Referência do tipo de recursos do Amazon EventBridge no Guia do usuário do AWS CloudFormation.

Consulte também