Solucionar problemas de disponibilidade do nó gerenciado usando a ssm-cli - AWS Systems Manager

Solucionar problemas de disponibilidade do nó gerenciado usando a ssm-cli

O ssm-cli é uma ferramenta de linha de comando autônoma incluída na instalação do SSM Agent. Ao instalar o SSM Agent 3.1.501.0 ou posterior em uma máquina, você pode executar comandos do ssm-cli nessa máquina. A saída desses comandos ajuda a determinar se a máquina atende aos requisitos mínimos para que uma instância do Amazon EC2 ou uma máquina que não é do EC2 que deve ser gerenciada pelo AWS Systems Manager e, portanto, adicionada às listas de nós gerenciados no Systems Manager. (A SSM Agent versão 3.1.501.0 foi lançada em novembro de 2021.)

Requisitos mínimos

Para que uma instância do Amazon EC2 ou máquina que não é do EC2 seja gerenciada pelo AWS Systems Manager e esteja disponível em listas de nós gerenciados, ela deve atender a três requisitos principais:

  • O SSM Agent deve ser instalado e executado em um nó com um sistema operacional compatível.

    Algumas Amazon Machine Images (AMIs) gerenciadas pela AWS para o EC2 estão configuradas para iniciar instâncias com o SSM Agent pré-instalado. (Você também pode configurar uma AMI para pré-instalar o SSM Agent.) Para ter mais informações, consulte Encontrar AMIs com o SSM Agent pré-instalado.

  • É necessário anexar à máquina um perfil de instância do AWS Identity and Access Management (IAM), para instâncias do EC2, ou um perfil de serviço do IAM, para instâncias que não são do EC2, que fornece as permissões necessárias para se comunicar com o serviço Systems Manager.

  • O SSM Agent deve ser capaz de se conectar a um endpoint do Systems Manager para se registrar no serviço. Posteriormente, o nó gerenciado deve estar disponível para o serviço e, para confirmar isso, o serviço envia um sinal a cada cinco minutos para verificar a integridade do nó gerenciado.

Comandos pré-configurados em ssm-cli

Comandos pré-configurados estão incluídos para coletar as informações necessárias que ajudam a identificar por que a máquina que você confirmou que está em execução não está incluída nas listas de nós gerenciados no Systems Manager. Esses comandos são executados quando você especifica a opção get-diagnostics.

Na máquina, execute o comando a seguir para usar o ssm-cli para ajudar você a solucionar problemas de disponibilidade de nós gerenciados.

Linux & macOS
ssm-cli get-diagnostics --output table
Windows

Em máquinas Windows Server, você deve navegar até o diretório C:\Program Files\Amazon\SSM antes de executar o comando.

ssm-cli.exe get-diagnostics --output table
PowerShell

Em máquinas Windows Server, você deve navegar até o diretório C:\Program Files\Amazon\SSM antes de executar o comando.

.\ssm-cli.exe get-diagnostics --output table

Esse comando retorna uma saída como uma tabela semelhante à seguinte.

nota

As verificações de conectividade para os endpoints ssmmessages, s3, kms, logs e monitoring são para recursos opcionais adicionais, como o Session Manager, que pode fazer login no Amazon Simple Storage Service (Amazon S3) ou no Amazon CloudWatch Logs e usar a criptografia AWS Key Management Service (AWS KMS).

Linux & macOS
[root@instance]# ssm-cli get-diagnostics --output table ┌───────────────────────────────────────┬─────────┬───────────────────────────────────────────────────────────────────────┐ │ Check │ Status │ Note │ ├───────────────────────────────────────┼─────────┼───────────────────────────────────────────────────────────────────────┤ │ EC2 IMDS │ Success │ IMDS is accessible and has instance id i-0123456789abcdefa in Region │ │ │ │ us-east-2 │ ├───────────────────────────────────────┼─────────┼───────────────────────────────────────────────────────────────────────┤ │ Hybrid instance registration │ Skipped │ Instance does not have hybrid registration │ ├───────────────────────────────────────┼─────────┼───────────────────────────────────────────────────────────────────────┤ │ Connectivity to ssm endpoint │ Success │ ssm.us-east-2.amazonaws.com is reachable │ ├───────────────────────────────────────┼─────────┼───────────────────────────────────────────────────────────────────────┤ │ Connectivity to ec2messages endpoint │ Success │ ec2messages.us-east-2.amazonaws.com is reachable │ ├───────────────────────────────────────┼─────────┼───────────────────────────────────────────────────────────────────────┤ │ Connectivity to ssmmessages endpoint │ Success │ ssmmessages.us-east-2.amazonaws.com is reachable │ ├───────────────────────────────────────┼─────────┼───────────────────────────────────────────────────────────────────────┤ │ Connectivity to s3 endpoint │ Success │ s3.us-east-2.amazonaws.com is reachable │ ├───────────────────────────────────────┼─────────┼───────────────────────────────────────────────────────────────────────┤ │ Connectivity to kms endpoint │ Success │ kms.us-east-2.amazonaws.com is reachable │ ├───────────────────────────────────────┼─────────┼───────────────────────────────────────────────────────────────────────┤ │ Connectivity to logs endpoint │ Success │ logs.us-east-2.amazonaws.com is reachable │ ├───────────────────────────────────────┼─────────┼───────────────────────────────────────────────────────────────────────┤ │ Connectivity to monitoring endpoint │ Success │ monitoring.us-east-2.amazonaws.com is reachable │ ├───────────────────────────────────────┼─────────┼───────────────────────────────────────────────────────────────────────┤ │ AWS Credentials │ Success │ Credentials are for │ │ │ │ arn:aws:sts::123456789012:assumed-role/Fullaccess/i-0123456789abcdefa │ │ │ │ and will expire at 2021-08-17 18:47:49 +0000 UTC │ ├───────────────────────────────────────┼─────────┼───────────────────────────────────────────────────────────────────────┤ │ Agent service │ Success │ Agent service is running and is running as expected user │ ├───────────────────────────────────────┼─────────┼───────────────────────────────────────────────────────────────────────┤ │ Proxy configuration │ Skipped │ No proxy configuration detected │ ├───────────────────────────────────────┼─────────┼───────────────────────────────────────────────────────────────────────┤ │ SSM Agent version │ Success │ SSM Agent version is 3.0.1209.0, latest available agent version is │ │ │ │ 3.1.192.0 │ └───────────────────────────────────────┴─────────┴───────────────────────────────────────────────────────────────────────┘
Windows Server and PowerShell
PS C:\Program Files\Amazon\SSM> .\ssm-cli.exe get-diagnostics --output table ┌───────────────────────────────────────┬─────────┬─────────────────────────────────────────────────────────────────────┐ │ Check │ Status │ Note │ ├───────────────────────────────────────┼─────────┼─────────────────────────────────────────────────────────────────────┤ │ EC2 IMDS │ Success │ IMDS is accessible and has instance id i-0123456789EXAMPLE in │ │ │ │ Region us-east-2 │ ├───────────────────────────────────────┼─────────┼─────────────────────────────────────────────────────────────────────┤ │ Hybrid instance registration │ Skipped │ Instance does not have hybrid registration │ ├───────────────────────────────────────┼─────────┼─────────────────────────────────────────────────────────────────────┤ │ Connectivity to ssm endpoint │ Success │ ssm.us-east-2.amazonaws.com is reachable │ ├───────────────────────────────────────┼─────────┼─────────────────────────────────────────────────────────────────────┤ │ Connectivity to ec2messages endpoint │ Success │ ec2messages.us-east-2.amazonaws.com is reachable │ ├───────────────────────────────────────┼─────────┼─────────────────────────────────────────────────────────────────────┤ │ Connectivity to ssmmessages endpoint │ Success │ ssmmessages.us-east-2.amazonaws.com is reachable │ ├───────────────────────────────────────┼─────────┼─────────────────────────────────────────────────────────────────────┤ │ Connectivity to s3 endpoint │ Success │ s3.us-east-2.amazonaws.com is reachable │ ├───────────────────────────────────────┼─────────┼─────────────────────────────────────────────────────────────────────┤ │ Connectivity to kms endpoint │ Success │ kms.us-east-2.amazonaws.com is reachable │ ├───────────────────────────────────────┼─────────┼─────────────────────────────────────────────────────────────────────┤ │ Connectivity to logs endpoint │ Success │ logs.us-east-2.amazonaws.com is reachable │ ├───────────────────────────────────────┼─────────┼─────────────────────────────────────────────────────────────────────┤ │ Connectivity to monitoring endpoint │ Success │ monitoring.us-east-2.amazonaws.com is reachable │ ├───────────────────────────────────────┼─────────┼─────────────────────────────────────────────────────────────────────┤ │ AWS Credentials │ Success │ Credentials are for │ │ │ │ arn:aws:sts::123456789012:assumed-role/SSM-Role/i-123abc45EXAMPLE │ │ │ │ and will expire at 2021-09-02 13:24:42 +0000 UTC │ ├───────────────────────────────────────┼─────────┼─────────────────────────────────────────────────────────────────────┤ │ Agent service │ Success │ Agent service is running and is running as expected user │ ├───────────────────────────────────────┼─────────┼─────────────────────────────────────────────────────────────────────┤ │ Proxy configuration │ Skipped │ No proxy configuration detected │ ├───────────────────────────────────────┼─────────┼─────────────────────────────────────────────────────────────────────┤ │ Windows sysprep image state │ Success │ Windows image state value is at desired value IMAGE_STATE_COMPLETE │ ├───────────────────────────────────────┼─────────┼─────────────────────────────────────────────────────────────────────┤ │ SSM Agent version │ Success │ SSM Agent version is 3.2.815.0, latest agent version in us-east-2 │ │ │ │ is 3.2.985.0 │ └───────────────────────────────────────┴─────────┴─────────────────────────────────────────────────────────────────────┘

A tabela a seguir fornece detalhes adicionais para cada uma das verificações realizadas pela ssm-cli.

Verificações de diagnóstico do ssm-cli
Verificar Detalhes
Serviço de metadados da instância do Amazon EC2 Indica se o nó gerenciado consegue acessar o serviço de metadados. Um teste com falha indica um problema de conectividade para http://169.254.169.254, que pode ser causado por configurações de proxy e firewall de rota local, proxy ou sistema operacional (SO).
Registro de instância híbrida Indica se o SSM Agent está registrado usando uma ativação híbrida.
Conectividade com o endpoint ssm Indica se o nó é capaz de alcançar endpoints de serviço do Systems Manager na porta TCP 443. Um teste com falha indica problemas de conectividade com https://ssm.region.amazonaws.com, dependendo da Região da AWS onde o nó está localizado. Problemas de conectividade podem ser causados pela configuração da VPC, incluindo grupos de segurança, listas de controle de acesso à rede, tabelas de rotas ou firewalls e proxies do SO.
Conectividade com o endpoint ec2messages Indica se o nó é capaz de alcançar endpoints de serviço do Systems Manager na porta TCP 443. Um teste com falha indica problemas de conectividade com https://ec2messages.region.amazonaws.com, dependendo da Região da AWS onde o nó está localizado. Problemas de conectividade podem ser causados pela configuração da VPC, incluindo grupos de segurança, listas de controle de acesso à rede, tabelas de rotas ou firewalls e proxies do SO.
Conectividade com o endpoint ssmmessages Indica se o nó é capaz de alcançar endpoints de serviço do Systems Manager na porta TCP 443. Um teste com falha indica problemas de conectividade com https://ssmmessages.region.amazonaws.com, dependendo da Região da AWS onde o nó está localizado. Problemas de conectividade podem ser causados pela configuração da VPC, incluindo grupos de segurança, listas de controle de acesso à rede, tabelas de rotas ou firewalls e proxies do SO.
Conectividade com o endpoint s3 Indica se o nó é capaz de alcançar os endpoints de serviço do Amazon Simple Storage Service na porta TCP 443. Um teste com falha indica problemas de conectividade com https://s3.region.amazonaws.com, dependendo da Região da AWS onde o nó está localizado. A conectividade com esse endpoint não é necessária para que o nó seja exibido na lista de nós gerenciados.
Conectividade com o endpoint kms

Indica se o nó é capaz de alcançar o endpoint de serviço do AWS Key Management Service na porta TCP 443. Um teste com falha indica problemas de conectividade com https://kms.region.amazonaws.com, dependendo da Região da AWS onde o nó está localizado. A conectividade com esse endpoint não é necessária para que o nó seja exibido na lista de nós gerenciados.

Conectividade com o endpoint logs Indica se o nó é capaz de alcançar o endpoint de serviço do Amazon CloudWatch Logs na porta TCP 443. Um teste com falha indica problemas de conectividade com https://logs.region.amazonaws.com, dependendo da Região da AWS onde o nó está localizado. A conectividade com esse endpoint não é necessária para que o nó seja exibido na lista de nós gerenciados.
Conectividade com o endpoint monitoring Indica se o nó é capaz de alcançar o endpoint de serviço do Amazon CloudWatch na porta TCP 443. Um teste com falha indica problemas de conectividade com https://monitoring.region.amazonaws.com, dependendo da Região da AWS onde o nó está localizado. A conectividade com esse endpoint não é necessária para que o nó seja exibido na lista de nós gerenciados.
Credenciais da AWS Indica se o SSM Agent tem as credenciais necessárias com base no perfil de instância do IAM (para instâncias do EC2) ou no perfil de serviço do IAM (para máquinas que não são do EC2) anexadas à máquina. Um teste com falha indica que nenhum perfil de instância do IAM ou perfil de serviço do IAM está anexado à máquina ou que não contém as permissões necessárias para o Systems Manager.
Serviço de agente Indica se o serviço do SSM Agent está em execução e se está sendo executado como raiz para Linux ou macOS como SYSTEM para Windows Server. Um teste com falha indica que o serviço do SSM Agent não está em execução ou não está sendo executado como raiz ou SYSTEM.
Configuração do proxy Indica se o SSM Agent está configurado para usar um proxy.
Estado da imagem do Sysprep (somente Windows) Indica o estado do Sysprep no nó. O SSM Agent não iniciará no nó se o estado do Sysprep for um valor diferente de IMAGE_STATE_COMPLETE.
Versão do SSM Agent Indica se a versão mais recente disponível do SSM Agent está instalada.