Usar uma janela de manutenção para enviar um comando que retorna notificações de status - 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á.

Usar uma janela de manutenção para enviar um comando que retorna notificações de status

Os procedimentos a seguir mostram como registrar uma tarefa do Run Command na janela de manutenção usando o console do AWS Systems Manager ou a AWS Command Line Interface (AWS CLI). O Run Command é um recurso do AWS Systems Manager. Os procedimentos também descrevem como configurar a tarefa do Run Command para retornar notificações de status.

Antes de começar

Se você não tiver criado uma janela de manutenção ou destinos registrados, consulte Trabalhar com janelas de manutenção (console) para obter instruções sobre como criar uma janela de manutenção e registrar destinos.

Para receber notificações do serviço Amazon Simple Notification Service (Amazon SNS), anexe uma política iam:PassRole à função de serviço do Maintenance Windows especificada na tarefa registrada. Se você não tiver adicionado as permissões iam:PassRole à sua função de serviço do Maintenance Windows, consulte Tarefa 5: Anexar a política iam:PassRole à função da janela de manutenção.

Registrar uma tarefa do Run Command em uma janela de manutenção que retorna notificações (console)

Use o procedimento a seguir para registrar uma tarefa do Run Command que esteja configurada para retornar notificações de status à janela de manutenção usando o console do Systems Manager.

Como registrar uma tarefa do Run Command na janela de manutenção que retorna notificações (console)
  1. Abra o console do AWS Systems Manager em https://console.aws.amazon.com/systems-manager/.

  2. No painel de navegação, escolha Maintenance Windows.

    - ou -

    Se a página inicial do AWS Systems Manager abrir primeiro, escolha o ícone de menu ( 
    The menu icon
  ) para abrir o painel de navegação e escolha Maintenance Windows.

  3. Selecione a janela de manutenção para a qual você deseja registrar uma tarefa do Run Command configurada para enviar notificações do Amazon Simple Notification Service (Amazon SNS).

  4. Selecione Actions (Ações) e depois Register run command task (Registrar tarefa de comando de execução).

  5. No campo Name (Nome), insira um nome para a tarefa.

  6. (Opcional) No campo Description (Descrição), insira uma descrição.

  7. Em Command document (Documento do comando), escolha um documento do comando.

  8. Em Task priority (Prioridade da tarefa), especifique uma prioridade para essa tarefa. Zero (0) é a prioridade mais alta. As tarefas em uma janela de manutenção são agendadas em ordem de prioridade. Tarefas que têm a mesma prioridade estão agendadas em paralelo.

  9. Na seção Targets (Destinos), selecione um grupo de destino registrado ou selecione destinos não registrados.

  10. Para Rate control (Controle de taxa):

    • Em Concurrency (Concorrência), especifique um número ou uma porcentagem de nós gerenciados nos quais executar o comando ao mesmo tempo.

      nota

      Se você selecionou destinos especificando tags aplicadas a instâncias a nós gerenciados ou especificando grupos de recursos da AWS, e não tiver certeza de quantas instâncias são direcionadas, restrinja o número de instâncias que poderão executar o documento ao mesmo tempo, especificando uma porcentagem.

    • Em Error threshold (Limite de erro), especifique quando parar de executar o comando em outros nós depois de falhar em alguns ou em uma porcentagem de nós. Por exemplo, se você especificar três erros, o Systems Manager deixará de enviar o comando quando o 4° erro for recebido. Os nós gerenciados que continuam processando o comando também podem enviar erros.

  11. Na área IAM service role (Função de serviço do IAM), escolha a função de serviço do Maintenance Windows que tenha permissões iam:PassRole para a função do SNS.

    nota

    Adicione permissões do iam:PassRole a função Maintenance Windows para permitir que o Systems Manager passe a função do SNS ao Amazon SNS. Se você não tiver adicionado permissões iam:PassRole, consulte a Tarefa 5, no tópico Monitorar alterações de status do Systems Manager usando as notificações do Amazon SNS.

  12. (Opcional) Em Opções de saída, para salvar a saída de comando em um arquivo, selecione a caixa Habilitar a gravação da saída no S3. Digite os nomes de bucket e prefixo (pastas) nas caixas de texto.

    nota

    As permissões do S3 que concedem a possibilidade de gravar os dados em um bucket do S3 são as do perfil da instância atribuído ao nó gerenciado, e não as do usuário do IAM que realiza essa tarefa. Para obter mais informações, consulte Configurar permissões de instância para o Systems Manager ou Criar um perfil de serviço do IAM para um ambiente híbrido. Além disso, se o bucket do S3 especificado estiver em uma conta da Conta da AWS diferente, verifique se o perfil da instância ou a função de serviço IAM associada ao nó gerenciado tenha as permissões necessárias para gravar nesse bucket.

  13. Na seção SNS notifications (Notificações do SNS), faça o seguinte:

    • Selecione Enable SNS Notifications (Habilitar notificações do SNS).

    • Para IAM role (Função do IAM), escolha o nome do recurso da Amazon (ARN) da função do IAM do Amazon SNS que você criou na Tarefa 3 em Monitorar alterações de status do Systems Manager usando as notificações do Amazon SNS para iniciar o Amazon SNS.

    • Para SNS topic (Tópico do SNS), insira o ARN do tópico do Amazon SNS a ser usado.

    • Em Event type (Tipo de evento) escolha os eventos para os quais deseja receber notificações.

    • Em Notification type (Tipo de notificação), escolha receber notificações para cada cópia de um comando enviado a vários nós (invocações) ou o resumo de comandos.

  14. Na seção Parameters (Parâmetros), insira os parâmetros necessários com base no documento do Command que você escolheu.

  15. Selecione Register Run command task (Registrar tarefa do Run Command).

  16. Depois da próxima vez que a janela de manutenção for executada, verifique se recebeu um e-mail do Amazon SNS e abra a mensagem de e-mail. O Amazon SNS pode levar alguns minutos para enviar o e-mail.

Registrar uma tarefa do Run Command em uma janela de manutenção que retorna notificações (CLI)

Use o procedimento a seguir para registrar uma tarefa do Run Command que esteja configurada para retornar notificações de status à janela de manutenção usando a AWS CLI.

Para registrar uma tarefa do Run Command com a janela de manutenção que retorna notificações (CLI)
nota

Para gerenciar melhor suas opções de tarefas, esse procedimento usa a opção de comando --cli-input-json, com valores de opção armazenados em um arquivo JSON.

  1. Na sua máquina local, crie um arquivo chamado RunCommandTask.json.

  2. Cole o conteúdo a seguir no arquivo .

    { "Name": "Name", "Description": "Description", "WindowId": "mw-0c50858d01EXAMPLE", "ServiceRoleArn": "arn:aws:iam::account-id:role/MaintenanceWindowIAMRole", "MaxConcurrency": "1", "MaxErrors": "1", "Priority": 3, "Targets": [ { "Key": "WindowTargetIds", "Values": [ "e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE" ] } ], "TaskType": "RUN_COMMAND", "TaskArn": "CommandDocumentName", "TaskInvocationParameters": { "RunCommand": { "Comment": "Comment", "TimeoutSeconds": 3600, "NotificationConfig": { "NotificationArn": "arn:aws:sns:region:account-id:SNSTopicName", "NotificationEvents": [ "All" ], "NotificationType": "Command" }, "ServiceRoleArn": "arn:aws:iam::account-id:role/SNSIAMRole" } } }
  3. Substitua os valores de exemplo por informações sobre seus próprios recursos.

    Você também pode restaurar opções omitidas deste exemplo se quiser usá-las. Por exemplo, você pode salvar a saída do comando em um bucket do S3.

    Para obter mais informações, consulte register-task-with-maintenance-window na Referência de comandos da AWS CLI.

  4. Salve o arquivo.

  5. No diretório da sua máquina local em que você salvou o arquivo, execute o comando a seguir.

    aws ssm register-task-with-maintenance-window --cli-input-json file://RunCommandTask.json
    Importante

    Não se esqueça de incluir file:// antes do nome de arquivo. Ele é obrigatório nesse comando.

    Se houver êxito, o comando retornará informações semelhantes às mostradas a seguir.

    {
        "WindowTaskId": "j2l8d5b5c-mw66-tk4d-r3g9-1d4d1EXAMPLE"
    }
                        
  6. Após a próxima execução da janela de manutenção, verifique se recebeu um e-mail do Amazon SNS e abra a mensagem do e-mail. O Amazon SNS pode levar alguns minutos para enviar o e-mail.

Para obter mais informações sobre como registrar tarefas para uma janela de manutenção na linha de comando, consulte Registrar tarefas com a janela de manutenção.