Como configuro servidores no local para usarem credenciais temporárias com o SSM Agent e o agente unificado do CloudWatch?

3 minuto de leitura
0

Eu tenho um ambiente híbrido com servidores no local que usam o AWS Systems Manager Agent (SSM Agent) e o agente unificado do Amazon CloudWatch instalado. Como configuro os servidores no local para usarem somente credenciais temporárias?

Resolução

Observação: se você receber erros ao executar comandos da AWS Command Line Interface (AWS CLI), certifique-se de estar usando a versão mais recente da AWS CLI.

O agente unificado do CloudWatch pode ser instalado em hosts locais para um melhor o monitoramento do desempenho. Você pode fazer isso especificando as credenciais do AWS Identity and Accesses Management (IAM) que são gravadas em um arquivo de configuração.

No entanto, alguns casos de uso podem exigir a maior segurança de credenciais rotativas que não são salvas em arquivos locais.

Nesse cenário de implantação mais seguro, o SSM Agent permite que o host local assuma uma função do IAM. Em seguida, o agente unificado do CloudWatch pode ser configurado para usar essa função do IAM para publicar métricas e logs no CloudWatch.

Para configurar seus servidores locais para usar somente credenciais temporárias:

1.    Integre o host local com o AWS System Manager.

2.    Anexe a política do IAM gerenciada pela AWS CloudWatchAgentServerPolicy ao perfil de serviço do IAM para um ambiente híbrido. Agora, o agente unificado do CloudWatch tem as permissões para publicar métricas e logs no CloudWatch.

3.    Instale ou atualize o AWS CLI.

4.    Confirme se a função do IAM está anexada ao host local:

$ aws sts get-caller-identity
{
    "UserId": "AROAJXQ3RVCBOTUDZ2AWM:mi-070c8d5758243078f",
    "Account": "123456789012",
    "Arn": "arn:aws:sts::123456789012:assumed-role/SSMServiceRole/mi-070c8d5758243078f"
}

5.    Instale o agente unificado do CloudWatch.

6.    Atualize o arquivo common-config.toml para:

  • Aponte para as credenciais geradas pelo SSM Agent
  • Defina uma configuração de proxy (se aplicável)

Observação: essas credenciais são atualizadas pelo SSM Agent a cada 30 minutos.

Linux:

/opt/aws/amazon-cloudwatch-agent/etc/common-config.toml
/etc/amazon/amazon-cloudwatch-agent/common-config.toml
[credentials]
  shared_credential_profile = "default"
  shared_credential_file = "/root/.aws/credentials"

Windows:

$Env:ProgramData\Amazon\AmazonCloudWatchAgent\common-config.toml
[credentials]
  shared_credential_profile = "default"
  shared_credential_file = "C:\\Windows\\System32\\config\\systemprofile\\.aws\\credentials"

7.    Escolha a região da AWS na qual as métricas unificadas do CloudWatch Agent serão publicadas.

8.    Adicione a região no arquivo de credenciais referenciado pelo SSM Agent na Etapa 5. Isso corresponde ao arquivo associado ao shared_credential_file.

$ cat /root/.aws/config
[default]
region = "eu-west-1"

**Observação:**certifique-se de substituir eu-west-1 pela sua região alvo.

9.    Dependendo do sistema operacional do seu host, talvez seja necessário atualizar as permissões para permitir que o agente unificado do CloudWatch leia o arquivo de credenciais do SSM Agent. Os hosts do Windows executam os dois agentes como usuários do SISTEMA e nenhuma ação adicional é necessária.

Para hosts Linux, por padrão, o agente unificado do CloudWatch é executado como usuário ** raiz**. O agente unificado do CloudWatch pode ser configurado para ser executado como um usuário sem privilégios com a opção run_as_user. Ao usar essa opção, você deve conceder ao agente unificado do CloudWatch acesso ao arquivo de credenciais.

10.    (Somente Windows) Altere o tipo de inicialização do serviço agente unificado do CloudWatch para Automático (Atrasado). Isso inicia o serviço unificado do CloudWatch Agent após o serviço SSM Agent durante a inicialização.


Informações relacionadas

Configuração do AWS Systems Manager para ambientes híbridos

Baixe o agente do CloudWatch em um servidor local

Instale e configure o agente unificado do CloudWatch para enviar métricas e logs de uma instância do EC2 para o CloudWatch

AWS OFICIAL
AWS OFICIALAtualizada há um ano