Solução de problemas das janelas - AWS Systems Manager

Solução de problemas das janelas

Use as informações a seguir para ajudar a solucionar problemas com as janelas de manutenção.

Erro na edição da tarefa: na página de edição de uma tarefa da janela de manutenção, a lista de funções do IAM retorna uma mensagem de erro: "Não foi possível encontrar a função da janela de manutenção do IAM especificada para esta tarefa. Ela pode ter sido excluída, ou pode não ter sido criada ainda."

Problema 1: a função da janela de manutenção do AWS Identity and Access Management (IAM) que você especificou originalmente especificada foi excluída depois que você criou a tarefa.

Possible fix (Correção possível): 1) selecione outro perfil de janela de manutenção do IAM, se houver algum em sua conta, ou crie um novo e selecione-o para a tarefa.

Problema 2: se a tarefa foi criada usando a AWS Command Line Interface (AWS CLI), o AWS Tools for Windows PowerShell ou um AWS SDK, um nome de função do IAM não existente pode não ter sido especificado. Por exemplo, a função da janela de manutenção do IAM pode ter sido excluída antes de você criar a tarefa, ou o nome da função pode ter sido digitado incorretamente, como myrole em vez de my-role.

Possible fix (Correção possível): selecione o nome correto do perfil de janela de manutenção do IAM que deseja usar ou crie um novo específico para a tarefa.

Nem todos os destinos da janela de manutenção são atualizados

Problema: você percebe que as tarefas da janela de manutenção não foram executadas em todos os recursos determinados como destino pela janela de manutenção. Por exemplo, nos resultados da execução da janela de manutenção, a tarefa desse recurso é marcada como falha ou com o tempo limite expirado.

Solução: Os motivos mais comuns para uma tarefa de janela de manutenção que não está sendo executada em um recurso de destino envolvem conectividade e disponibilidade. Por exemplo:

  • O Systems Manager perdeu a conexão com o recurso antes ou durante a operação da janela de manutenção.

  • O recurso estava offline ou parado durante a operação da janela de manutenção.

Você pode aguardar a próxima janela de manutenção agendada para executar tarefas nos recursos. Você pode executar manualmente as tarefas da janela de manutenção nos recursos que não estavam disponíveis ou estavam offline.

A tarefa falha com o status de invocação de tarefa: “O perfil fornecido não contém as permissões corretas do SSM”.

Problema: você especificou um perfil de serviço de janela de manutenção para uma tarefa, mas a tarefa não é executada com êxito, e o status de invocação da tarefa informa “O perfil fornecido não contém as permissões corretas do SSM”.

  • Solução: no Tarefa 1: criar uma política para seu perfil de serviço de janela de manutenção personalizada, fornecemos uma política básica que você pode anexar ao seu perfil de serviço de janela de manutenção personalizada. Essa política inclui as permissões necessárias para diversos cenários de tarefas. Porém, dada a grande diversidade de tarefas que podem ser executadas, talvez seja necessário fornecer permissões adicionais na política para a sua função de janela de manutenção.

    Por exemplo, algumas ações da Automação trabalham com pilhas do AWS CloudFormation. Por isso, pode ser necessário adicionar as permissões cloudformation:CreateStack, cloudformation:DescribeStacks e cloudformation:DeleteStack extras à política para seu perfil de serviço de janela de manutenção.

    Outro exemplo: o runbook AWS-CopySnapshot do Automation requer permissão para criar um snapshot do Amazon Elastic Block Store (Amazon EBS). Por isso, pode ser necessário adicionar a permissão ec2:CreateSnapshot.

    Para obter informações sobre as permissões de perfil necessárias para um runbook do Automation gerenciado pela AWS, consulte as descrições de runbooks na Referência de runbooks do AWS Systems Manager Automation.

    Para informações sobre as permissões de função necessárias para um documento do SSM gerenciado pela AWS, revise o conteúdo do documento na seção Documents (Documentos) do console do Systems Manager.

    Para informações sobre as permissões de função necessárias para tarefas do Step Functions, tarefas do Lambda e runbooks personalizados do Automation e documentos do SSM, verifique os requisitos de permissão com o autor desses recursos.

Tarefa falha com mensagem de erro: “Falha na etapa quando ela estiver validando e resolvendo as entradas da etapa”

Problema: um runbook do Automation ou um documento de comando do Systems Manager que você estiver usando em uma tarefa requer que você especifique entradas como InstanceId ou SnapshotId, mas um valor não é fornecido ou não é fornecido corretamente.

  • Solução 1: se sua tarefa estiver determinando um único recurso como destino, por exemplo um único nó ou um único snapshot, insira seu ID nos parâmetros de entrada para a tarefa.

  • Solução 2: se sua tarefa estiver determinando vários recursos como destino, como criar imagens de vários nós ao usar o runbook AWS-CreateImage, você pode usar um dos pseudoparâmetros suportados para tarefas de janela de manutenção nos parâmetros de entrada para representar IDs dos nós em comandos.

    Os comandos a seguir registram uma tarefa do Systems Manager Automation com uma janela de manutenção usando a:AWS CLI. O --targets indica um ID de destino para a janela de manutenção. Além disso, mesmo que o parâmetro --targets especifique um ID de destino de janela, os parâmetros do runbook do Automation exigem que um ID do nó gerenciado seja fornecido. Nesse caso, o comando usa o pseudoparâmetro {{RESOURCE_ID}} como o valor InstanceId.

    Comando da AWS CLI:

    Linux & macOS

    O comando a seguir reinicia as instâncias do Amazon Elastic Compute Cloud (Amazon EC2) que pertencem ao grupo de destino da janela de manutenção com o ID e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE.

    aws ssm register-task-with-maintenance-window \ --window-id "mw-0c50858d01EXAMPLE" \ --targets Key=WindowTargetIds,Values=e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE \ --task-arn "AWS-RestartEC2Instance" \ --service-role-arn arn:aws:iam::123456789012:role/MyMaintenanceWindowServiceRole \ --task-type AUTOMATION \ --task-invocation-parameters "Automation={DocumentVersion=5,Parameters={InstanceId='{{RESOURCE_ID}}'}}" \ --priority 0 --max-concurrency 10 --max-errors 5 --name "My-Restart-EC2-Instances-Automation-Task" \ --description "Automation task to restart EC2 instances"
    Windows
    aws ssm register-task-with-maintenance-window ^ --window-id "mw-0c50858d01EXAMPLE" ^ --targets Key=WindowTargetIds,Values=e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE ^ --task-arn "AWS-RestartEC2Instance" ^ --service-role-arn arn:aws:iam::123456789012:role/MyMaintenanceWindowServiceRole ^ --task-type AUTOMATION ^ --task-invocation-parameters "Automation={DocumentVersion=5,Parameters={InstanceId='{{RESOURCE_ID}}'}}" ^ --priority 0 --max-concurrency 10 --max-errors 5 --name "My-Restart-EC2-Instances-Automation-Task" ^ --description "Automation task to restart EC2 instances"

    Para obter mais informações sobre como trabalhar com pseudoparâmetros para tarefas da janela de manutenção, consulte Usar pseudoparâmetros ao registrar tarefas da janela de manutenção e Exemplos de registro de tarefas.

Mensagens de erro: “Tarefas da janela de manutenção sem destinos não suportam valores MaxConcurrency” e “Tarefas da janela de manutenção sem destinos não suportam valores MaxErrors”

Problema: quando você registrar uma tarefa do tipo Run Command, você deverá especificar pelo menos um destino no qual executar a tarefa. Para outros tipos de tarefas, (Automation, AWS Lambda e AWS Step Functions) dependendo da natureza da tarefa, os destinos serão opcionais. As opções MaxConcurrency (o número de recursos para executar uma tarefa ao mesmo tempo) e MaxErrors (o número de falhas para executar a tarefa nos recursos de destino antes que a tarefa falhe) não são necessárias ou suportadas para tarefas de janela de manutenção que não especificam destinos. O sistema gera essas mensagens de erro se os valores forem especificados para qualquer uma dessas opções quando nenhum destino para a tarefa for especificado.

Solução: se você receber um desses erros, remova os valores de simultaneidade e limite de erro antes de continuar a registrar ou atualizar a tarefa de janela de manutenção.

Para obter mais informações sobre como executar tarefas que não especificam destinos, consulte Registrar tarefas da janela de manutenção sem destinos no Manual do usuário do AWS Systems Manager.