Monitorar as alterações de status do Systems Manager usando notificações do Amazon SNS - AWS Systems Manager

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á.

Monitorar as alterações de status do Systems Manager usando notificações do Amazon SNS

É possível configurar o Amazon Simple Notification Service (Amazon SNS) para enviar notificações sobre o status dos comandos que você envia usando o AWS Systems Manager Executar comando ou AWS Systems Manager Janelas de manutenção. O Amazon SNS coordena e gerencia a entrega e o envio de notificações a clientes e endpoints que assinam tópicos do Amazon SNS Você pode receber uma notificação sempre que um comando muda para um novo estado ou atinge um estado específico, como Failed (Falha) ou Timed out (Tempo limite). Nos casos em que você envia um comando para várias instâncias, pode receber uma notificação para cada cópia do comando enviado para uma instância específica. Cada cópia é chamada de uma invocação.

O Amazon SNS pode entregar notificações como HTTP ou HTTPS POST, e-mail (SMTP, texto sem formatação ou no formato JSON) ou como uma mensagem postada em uma fila do Amazon Simple Queue ServiceAmazon SQS Para obter mais informações, consulte O que é o Amazon SNS no Guia do desenvolvedor do Amazon Simple Notification Service. Para obter exemplos da estrutura dos dados JSON incluídos na notificação do Amazon SNS fornecida pelo Executar comando e pela Janelas de manutenção, consulte Exemplo de notificações do Amazon SNS para o AWS Systems Manager.

Configurar notificações do Amazon SNS para o AWS Systems Manager

O Executar comando e as tarefas do Executar comando registradas para uma janela de manutenção podem enviar notificações do Amazon SNS para tarefas de comando que entram nos status a seguir. Para obter informações sobre as condições que fazem com que um comando entre em um desses status, consulte Noções básicas sobre status de comando.

  • Em andamento

  • Bem-sucedida

  • Com falha

  • Timed Out

  • Canceled

nota

Os comandos enviados usando o Executar comando também relatam o status Cancelando e Pendente. Estes status não são capturados por notificações do Amazon SNS

Notificações do Amazon SNS de resumo de comandos

Se você configurar o Executar comando ou uma tarefa do Executar comando na janela de manutenção para notificações do Amazon SNS, o Amazon SNS enviará mensagens de resumo que incluem as seguintes informações:

Campo Type (Tipo) Descrição

eventTime

String

A hora em que o evento foi acionado. O timestamp é importante, pois o Amazon SNS não garante a ordem de entrega das mensagens. Exemplo: 2016-04-26T13:15:30Z

documentName

String

O nome do documento do SSM usado para executar esse comando.

commandId

String

O ID gerado pelo Executar comando após o envio do comando.

expiresAfter

Data

Se esse tempo for atingido e o comando ainda não tiver iniciado a execução, ele não será executado.

outputS3BucketName

String

O bucket do Amazon Simple Storage Service (Amazon S3) em que respostas para a execução do comando devem ser armazenadas.

outputS3KeyPrefix

String

O caminho de diretório do Amazon S3 dentro do bucket no qual as respostas para a execução do comando devem ser armazenadas.

requestedDateTime

String

A data e a hora em que a solicitação foi enviada para essa instância específica.

instanceIds

StringList

As instâncias que foram direcionadas pelo comando.

nota

A instância só IDs será incluída na mensagem de resumo se a instância de destino Executar comando da tarefa for IDs diretamente. A instância não IDs será incluída na mensagem de resumo se a Executar comando tarefa tiver sido emitida usando o direcionamento baseado em tags.

status

String

Status do comando para o comando.

Notificações do Amazon SNS com base em invocação

Se você enviar um comando para várias instâncias, o Amazon SNS poderá enviar mensagens sobre cada cópia ou invocação desse comando. As mensagens incluem as seguintes informações.

Campo Type (Tipo) Descrição

eventTime

String

A hora em que o evento foi acionado. O timestamp é importante, pois o Amazon SNS não garante a ordem de entrega das mensagens. Exemplo: 2016-04-26T13:15:30Z

documentName

String

O nome do documento do Systems Manager usado para executar esse comando.

requestedDateTime

String

A data e a hora em que a solicitação foi enviada para essa instância específica.

commandId

String

O ID gerado pelo Executar comando após o envio do comando.

instanceId

String

A instância que foi direcionada pelo comando.

status

String

Status do comando para essa invocação.

Para configurar notificações do Amazon SNS quando um comando muda de status, você deve concluir as seguintes tarefas.

nota

Se você não estiver configurando notificações do Amazon SNS para a janela de manutenção, poderá ignorar a Tarefa 5 abaixo.

Tarefa 1: Criar e assinar um tópico do Amazon SNS

Um Amazon SNS tópico do é um canal de comunicação que o Executar comando e Executar comando as tarefas do registrados em uma janela de manutenção usam para enviar notificações sobre o status dos comandos. Amazon SNS O oferece suporte a diferentes protocolos de comunicação, incluindo HTTP/S, e-mail e outros serviços da AWS, como o Amazon SQS. Para começar rapidamente, recomendamos que você comece com o protocolo de e-mail. Para obter informações sobre como criar um tópico, consulte Create a topic (Criar um tópico) no Guia do desenvolvedor do Amazon Simple Notification Service.

nota

Depois de criar o tópico, copie ou anote o ARN do tópico. Você especifica esse ARN ao enviar um comando que esteja configurado para retornar notificações de status.

Após criar o tópico, inscreva-se nele especificando um Endpoint. Se você selecionou o protocolo de e-mail, o endpoint é o endereço de e-mail no qual você deseja receber notificações. Para obter mais informações sobre como inscrever-se em um tópico, consulte Inscrever um endpoint em um tópico do Amazon SNS no Guia do desenvolvedor do Amazon Simple Notification Service.

O Amazon SNS envia um e-mail de confirmação do Notificações da AWS para o endereço de e-mail que você especificar. Abra o e-mail e escolha o link Confirm subscription (Confirmar assinatura).

Você receberá uma mensagem de confirmação da AWS. O Amazon SNS agora está configurado para receber notificações e enviar a notificação como um e-mail ao endereço de e-mail que você especificou.

Tarefa 2: Criar uma política do IAM para notificações do Amazon SNS

Use o procedimento a seguir para criar uma política personalizada do AWS Identity and Access Management (IAM) que forneça permissões para acionar notificações do Amazon SNS

Para criar uma política personalizada do IAM para notificações do Amazon SNS

  1. Abra o console do IAM em https://console.aws.amazon.com/iam/.

  2. No painel de navegação, escolha Políticas e, em seguida, Criar política. (Se aparecer um botão Get Started, selecione-o e, em seguida, Create Policy.)

  3. Escolha a guia JSON.

  4. Substitua o conteúdo padrão pela declaração a seguir:

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "sns:Publish" ], "Resource": "sns-topic-arn" } ] }

    sns-topic-arn representa o ARN do tópico existente do Amazon Simple Notification Service (Amazon SNS) a ser usado para enviar Amazon Simple Notification Service notificações, no formato arn:aws:sns::account-id:sns-topic-name. Por exemplo: arn:aws:sns::123456789012:my-sns-topic.

  5. Escolha Revisar política.

  6. Na página Review policy (Revisar política), em Name (Nome), insira um nome para a política em linha. Por exemplo: my-sns-publish-permissions.

  7. (Opcional) Em Description (Descrição), insira uma descrição para a política.

  8. Escolha Create policy (Criar política).

Tarefa 3: Criar uma função do IAM para notificações do Amazon SNS

Use o procedimento a seguir para criar uma função de serviço do IAM para notificações do Amazon SNS Essa função de serviço é usada pelo Systems Manager para disparar notificações do Amazon SNS Em todos os procedimentos subsequentes, essa função é chamada de Amazon SNS IAM função .

Para criar uma função de serviço do IAM para notificações do Amazon SNS

  1. Abra o console do IAM em https://console.aws.amazon.com/iam/.

  2. No painel de navegação, escolha Roles e Create role.

  3. Em Select type of trusted entity (Selecionar tipo de entidade confiável), escolha AWS service (Serviço da AWS).

  4. Na seção Selecionar um caso de uso, selecione Systems Manager e Próximo: permissões.

  5. Na página Attach permissions policies (Anexar políticas de permissões), selecione a caixa à esquerda do nome da política personalizada que você criou na Tarefa 2. Por exemplo: my-sns-publish-permissions.

  6. Escolha Next: Tags (Próximo: tags).

  7. (Opcional) Adicione um ou mais pares de chave-valor para organizar, rastrear ou controlar o acesso a esta função e escolha Next: Review (Próximo: revisar).

  8. Na página Revisar, digite um nome na caixa Nome da função, como my-sns-role.

  9. (Opcional) Altere a descrição da função padrão para refletir a finalidade dessa função. Por exemplo: Triggers SNS topics on your behalf.

  10. Selecione Create role (Criar função). O sistema o leva de volta à página Roles (Funções).

  11. Copie ou anote o valor de Role ARN. Esse nome de recurso da Amazon (ARN) da função é usado quando você envia um comando configurado para retornar Amazon SNS notificações.

  12. Deixe a página Summary aberta.

Tarefa 4: Configurar o acesso do usuário

Se a sua conta de usuário, grupo ou função do AWS Identity and Access Management (IAM) receber permissões de administrador, isso significa que você tem acesso ao Executar comando e ao Janelas de manutenção. do Systems Manager. Se você não tiver permissões de administrador, um administrador deverá lhe conceder permissão, atribuindo a política gerenciada AmazonSSMFullAccess ou uma política que ofereça permissões comparáveis, à sua conta, grupo ou função do IAM

Use o seguinte procedimento para configurar uma conta de usuário para usar o Executar comando e o Janelas de manutenção. Se precisar criar uma conta de usuário, consulte Criar um usuário do IAM na sua conta da AWS no Guia do usuário do IAM.

Para configurar acesso de usuário e anexar a política iam:PassRole a uma conta de usuário

  1. No painel IAM de navegação, escolha Users (Usuários) e escolha a conta de usuário que você deseja configurar.

  2. Na guia Permissions (Permissões), na lista de políticas, verifique se a política AmazonSSMFullAccess está listada ou se existe uma política comparável que conceda à conta permissão para acessar o Systems Manager.

  3. Escolha Add inline policy.

  4. Na página Create policy (Criar política), escolha a guia Visual editor (Editor visual).

  5. Selecione Service (Serviço) e, em seguida, selecione IAM.

  6. Selecione Select actions. (Selecionar ações).

  7. Na caixa de texto Filter actions (Filtrar ações), digite PassRolee escolha a PassRole opção .

  8. Selecione Resources. (Recursos). Verifique se Specific (Específico) está selecionado e, em seguida, selecione Add ARN. (Adicionar ARN).

  9. No campo Specify ARN for role (Especificar ARN para função), cole o ARN da Amazon SNS IAM função do que você copiou no final da Tarefa 3. O sistema preenche automaticamente os campos Account (Conta) e Role name with path (Nome da função com caminho).

  10. Escolha Adicionar.

  11. Escolha Revisar política.

  12. Na página Review Policy (Revisar política), digite um nome e, em seguida, selecione Create Policy. (Criar política).

Tarefa 5: Anexar a política iam:PassRole à função da janela de manutenção

Ao registrar uma tarefa do Executar comando em uma janela de manutenção, você especifica o nome de recurso da Amazon (ARN) de uma função de serviço. Essa função de serviço é usada pelo Systems Manager para executar tarefas registradas para a janela de manutenção. Para configurar notificações do Amazon SNS para uma tarefa registrada do Executar comando, você deve anexar uma política iam:PassRole à função de serviço da janela de manutenção especificada. Se você não pretende configurar a tarefa registrada para notificações do Amazon SNS, essa tarefa pode ser ignorada.

A iam:PassRole política permite que a função de Janelas de manutenção serviço transmita a Amazon SNS IAM função criada na Tarefa 3 para o Amazon SNS serviço . O procedimento a seguir mostra como anexar a política iam:PassRole à função de serviço da Janelas de manutenção

nota

Você deve usar uma função de serviço personalizada para a janela de manutenção enviar notificações relacionados a tarefas Run Command (Execução de comandos) registradas. Para obter mais informações, consulte Devo usar uma função vinculada ao serviço ou uma função de serviço personalizada para executar tarefas da janela de manutenção?.

Se for necessário criar uma função de serviço personalizada, consulte um dos seguintes tópicos:

Como anexar a política iam:PassRole à função do Janelas de manutenção

  1. Abra o console do IAM em https://console.aws.amazon.com/iam/.

  2. No painel de navegação, escolha Roles (Funções) e selecione a função Amazon SNS IAM do criada na Tarefa 3.

  3. Copie ou anote o Role ARN (ARN da função) e retorne à seção Roles (Funções) do IAM console do .

  4. Selecione a função de Janelas de manutenção serviço personalizada que você criou (em Role name (Nome da função)).

  5. Em Permissions (Permissões), verifique se a AmazonSSMMaintenanceWindowRole política está listada ou se existe uma política comparável que dê permissão das janelas de manutenção para a Systems Manager API do .

  6. Escolha Add inline policy.

  7. Escolha a guia Editor visual.

  8. Em Service (Serviço), escolha IAM.

  9. Em Actions (Ações), escolha PassRole.

  10. Em Resources (Recursos), escolha Specific (Específico) e Add ARN (Adicionar ARN).

  11. Na caixa Specify ARN for role (Especificar ARN para função), cole o ARN da função do Amazon SNS IAM criada na Tarefa 3 e escolha Add (Adicionar).

  12. Escolha Revisar política.

  13. Na página Review Policy (Revisar política), especifique um nome para a PassRole política e escolha Create policy (Criar política).