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

5 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 solução de erros pode variar de acordo com o sistema operacional em uso. Você pode encontrar erros no Console de Gerenciamento da AWS ou na resposta da API. No entanto, a saída do console está truncada em 48.000 caracteres, o que limita 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 (CloudWatch) e ao Amazon Simple Storage Service (Amazon S3) como etapa adicional de solução de problemas.

A seguir estão os erros que você pode receber quando ocorre uma falha na operação do Gerenciador de patches (Linux):

  • Permissão negada/falha ao executar comandos
  • Não é possível baixar a carga
  • Esse arquivo ou diretório não existe
  • Outro processo adquiriu o yum lock
  • A combinação de gerenciador de pacotes e versões do Python não é compatível
  • O sistema operacional não é compatível
  • Saída truncada

Resolução

Para solucionar erros recebidos quando ocorre uma falha na operação do Gerenciador de patches (Linux), conclua as seguintes etapas:

Permissão negada/falha ao executar comandos

O exemplo de erro a seguir ocorre 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 erro, verifique se você configurou partições exclusivas para /var/log/amazon e /var/lib/amazon e se elas estão montadas com permissões exec.

Não é possível baixar a carga

O exemplo de erro a seguir ocorre quando o nó gerenciado não tem as permissões necessárias para acessar o bucket especificado do Amazon S3:

Unable to download payload: https://s3.DOC-EXAMPLE-BUCKET.region.amazonaws.com/aws-ssm-region/patchbaselineoperations/linux/payloads/patch-baseline-operations-X.XX.tar.gz.failed to run commands: exit status 156

Para resolver esse erro, atualize sua configuração de rede e certifique-se de que o endpoint regional do Amazon S3 esteja acessível. Para obter mais informações, consulte Comunicações do SSM Agent com buckets do S3 gerenciados pela AWS.

Esse arquivo ou diretório não existe

O exemplo de erro a seguir ocorre pelos seguintes motivos:

  • Dois comandos para executar AWS-RunPatchBaseline estavam sendo executados simultaneamente no mesmo nó gerenciado.
  • Falta de espaço em disco disponível no diretório /var
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 erro, 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. Reordene os níveis de prioridade, se necessário.
  • Certifique-se de que apenas uma associação do Gerenciador de estados esteja executando AWS-RunPatchBaseline no mesmo cronograma e visando os mesmos nós gerenciados.
  • Libere espaço em disco no diretório /var.

Outro processo adquiriu o yum lock

O exemplo de erro a seguir ocorre quando AWS-RunPatchBaseline é executado em um nó gerenciado onde 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 erro, certifique-se do seguinte:

  • Nenhuma associação do Gerenciador de estados, tarefas da janela de manutenção ou outras configurações que executem AWS-RunPatchBaseline seguindo um cronograma têm como alvo o mesmo nó gerenciado simultaneamente.
  • Nenhuma operação manual do yum está sendo executada ao mesmo tempo.

A combinação de gerenciador de pacotes e versões do Python não é compatível

O exemplo de erro a seguir ocorre quando uma versão compatível do Python 3 não está instalada na instância 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 erro, instale uma versão do Python 3 (3.0 - 3.9) no servidor necessário.

O sistema operacional não é compatível

O exemplo de erro a seguir ocorre 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 erro, use um sistema operacional compatível.

Saída truncada

Esse erro ocorre quando a operação de aplicação de patches falha e a saída do console é truncada, o que faz com que o erro não possa ser visualizado. A saída do console está truncada em 48.000 palavras.

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

Observação: certifique-se de substituir todas as cadeias de caracteres de exemplo pelos valores necessários.

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

Você também pode configurar a operação para enviar a saída de Executar comando para o Amazon S3 ou o CloudWatch.

AWS OFICIAL
AWS OFICIALAtualizada há 10 meses