Como solucionar uma falha na operação do Gerenciador de patches (Linux)?

4 minuto de leitura
0

Quero solucionar uma falha na operação do Gerenciador de patches (Linux).

Breve descrição

As operações de aplicação de patches podem falhar por vários motivos, e a forma como você soluciona problemas de erros varia de acordo com o sistema operacional (SO). Você pode encontrar mensagens de erro no Console de Gerenciamento da AWS ou na resposta da API. No entanto, a saída do console está truncada em 48.000 caracteres e pode limitar a visibilidade de determinados problemas. Para esses problemas, é uma prática recomendada revisar a saída completa que está armazenada no nó gerenciado. Você também pode usar a saída enviada ao Amazon CloudWatch e ao Amazon Simple Storage Service (Amazon S3) para solucionar problemas adicionais.

Resolução

Para solucionar mensagens de erro recebidas quando a operação do Patch Manager (Linux) falha, conclua as tarefas a seguir.

Usar o runbook AWSSupport-TroubleshootPatchManagerLinux

Use AWSSupport-TroubleshootPatchManagerLinux para solucionar falhas de aplicação de patches em nós gerenciados baseados no Linux.

Revisar suas partições e permissões

Você recebe a seguinte mensagem de erro de exemplo quando /var/lib/amazon é montado com permissões noexec:

"/var/lib/amazon/ssm/<instanceid>/document/orchestration/<commandid>/PatchLinux/_script.sh: Permission deniedfailed to run commands: exit status 126"

Para resolver esse problema, configure partições exclusivas para /var/log/amazon e /var/lib/amazon e monte-os com permissões exec.

Revisar suas permissões de nó gerenciado

Você recebe o seguinte exemplo de mensagem de erro quando o nó gerenciado não tem as permissões necessárias para acessar o bucket do Amazon S3 especificado:

"Unable to download payload: to run commands: exit status 156"

Para resolver esse problema, atualize a configuração da sua rede e certifique-se de poder acessar o endpoint regional do Amazon S3 da AWS. Para mais informações, consulte Comunicações do AWS Systems Manager Agent (SSM Agent) com os buckets do S3 gerenciados pela AWS.

Revisar suas tarefas e o espaço de diretório do Run Command

Você recebe o seguinte exemplo de mensagem de erro quando dois comandos são executados simultaneamente AWS-RunPatchBaseline no mesmo nó gerenciado. Você também pode receber essa mensagem de erro quando não há espaço em disco disponível no diretório /var.

Exemplo de erro:

"IOError: [Errno 2] No such file or directory: 'patch-baseline-operations-X.XX.tar.gz'Unable to extract tar file: /var/log/amazon/ssm/patch-baseline-operations/patch-baseline-operations-1.75.tar.gz.
failed to run commands: exit status 155
Unable to load and extract the content of payload, abort.
failed to run commands: exit status 152"

Para resolver esse problema, conclua as seguintes etapas:

  • Certifique-se de que nenhuma janela de manutenção tenha duas ou mais tarefas Executar comando que executem AWS-RunPatchBaseline. As tarefas não podem ter o mesmo nível de prioridade e serem executadas nos mesmos IDs de destino. Altere os níveis de prioridade, se necessário.
  • Certifique-se de que apenas uma associação do Gerenciador de estados execute AWS-RunPatchBaseline na mesma programação e tenha como alvo os mesmos nós gerenciados.
  • Disponibilize mais espaço em disco sob o diretório /var.

Revisar os processos executados em um nó gerenciado

Você recebe a seguinte mensagem de erro de exemplo quando AWS-RunPatchBaseline é executado em um nó gerenciado em que o yum já está em execução e outro processo bloqueou o banco de dados:

"MM/DD/YYYY HH:MM:SS root [INFO]: another process has acquired yum lock, waiting 2 s and retry."

Para resolver esse problema, conclua as seguintes etapas:

  • Certifique-se de que nenhuma associação do Gerenciador de estados, tarefas da janela de manutenção ou outras configurações que executam AWS-RunPatchBaseline em um planejamento visem simultaneamente o mesmo nó gerenciado.
  • Certifique-se de que nenhuma operação manual do yum seja executada ao mesmo tempo.

Revisar a versão Python do servidor

Você recebe o seguinte exemplo de mensagem de erro quando uma versão com suporte do Python 3 não está instalada na instância do Red Hat Enterprise Linux (RHEL), Debian Server, Raspberry Pi ou Ubuntu Server:

"An unsupported package manager and python version combination was found. Dnf requires Python 2 or Python 3 to be installed."

Para resolver esse problema, instale uma versão do Python 3 (3.0 - 3.9) no servidor necessário.

Revisar seu sistema operacional

Você recebe a seguinte mensagem de erro de exemplo quando um sistema operacional não é compatível:

"An error occurred (UnsupportedOperatingSystem) when calling the GetDeployablePatchSnapshotForInstance operation: patch_common.exceptions. PatchManagerError: ('Unsupported Operating System', 146)"

Para resolver esse problema, use um SO compatível para o Patch Manager .

Revisar a saída da instância

Depois que a operação de correção falhar e a saída do console for truncada, talvez você não consiga visualizar a saída inteira.

Para resolver esse problema, revise toda a saída da instância no seguinte local:

"/var/lib/amazon/ssm/<example-instance-id>/document/orchestration/<example-command-id>/awsrunShellScript/PatchLinux/stdout"

Observação: substitua todas as strings de exemplo pelos seus valores.

Você também pode configurar a operação para enviar a saída do Run Command ao Amazon S3 ou CloudWatch.

AWS OFICIAL
AWS OFICIALAtualizada há um ano