Eu tenho um ambiente híbrido com servidores on-premises que usam o AWS Systems Manager Agent (SSM Agent) e o agente unificado do Amazon CloudWatch. Quero configurar os servidores on-premises para usarem somente credenciais temporárias.
Resolução
Observação: se você receber erros ao executar comandos da AWS Command Line Interface (AWS CLI), consulte Solução de problemas da AWS CLI. Além disso, verifique se você está usando a versão mais recente da AWS CLI.
O agente unificado do CloudWatch usa credenciais do AWS Identity and Access Management (AWS IAM) especificadas em um arquivo de configuração para monitoramento e gerenciamento de desempenho. No entanto, para aumentar a segurança, o agente pode alternar as credenciais em vez de armazená-las em arquivos locais. O SSM Agent permite que seu host on-premises assuma um perfil do IAM, e o agente do CloudWatch usa esse perfil para publicar métricas e logs no CloudWatch.
Configurar seus servidores on-premises para usar somente credenciais temporárias
Conclua as etapas a seguir:
-
Integre o host on-premises com o AWS System Manager. Para mais informações, consulte Gerenciar nós em ambientes híbridos e multinuvem com o Systems Manager.
-
Anexe a política CloudWatchAgentServerPolicy ao perfil de serviço do IAM. Para obter instruções, consulte Usar o AWS Management Console para criar um perfil de serviço do IAM para ativações híbridas do Systems Manager.
-
Instale ou atualize a AWS CLI.
-
Execute o seguinte comando get-caller-identity para verificar se o perfil do IAM está vinculado ao seu host on-premises:
aws sts get-caller-identity
Exemplo de saída:
{
"UserId": "AROAJXQ3RVCBOTUDZ2AWM:mi-070c8d5758243078f",
"Account": "123456789012",
"Arn": "arn:aws:sts::444455556666:assumed-role/SSMServiceRole/mi-070c8d5758243078f"
}
-
Confirme se você instalou corretamente o agente unificado do CloudWatch.
-
Modifique o arquivo common-config.toml para apontar para as credenciais que o SSM Agent gerou. Para obter instruções, consulte Modifying the common configuration and named profile for CloudWatch agent (Modificar a configuração comum e o perfil nomeado do agente do CloudWatch).
Observação: o SSM Agent atualiza as credenciais a cada 30 minutos.
Para Linux, exemplo de caminho de arquivo common.config.toml:
/opt/aws/amazon-cloudwatch-agent/etc/common-config.toml
Exemplo de saída:
[credentials]
shared_credential_profile = "default"
shared_credential_file = "/root/.aws/credentials"
Para Windows, exemplo de caminho de arquivo common-config.toml:
$Env:ProgramData\Amazon\AmazonCloudWatchAgent\common-config.toml
Exemplo de saída:
[credentials] shared_credential_profile = "default"
shared_credential_file = "C:\\Windows\\System32\\config\\systemprofile\\.aws\\credentials"
-
Configure sua região da AWS no arquivo de credenciais shared_credential_file compartilhado ao qual o SSM Agent faz referência:
cat /root/.aws/config
[default]
region = eu-west-1
Observação: substitua eu-west-1 por sua região.
-
Para hosts Linux, configure suas permissões para o agente do CloudWatch para permitir que o agente unificado do CloudWatch leia o arquivo de credenciais do SSM Agent. O agente unificado do CloudWatch é executado como usuário-raiz por padrão. Se você configurar o agente do CloudWatch para ser executado como um usuário sem privilégios com o parâmetro run_as_user, conceda a esse usuário acesso ao arquivo de credenciais. Para obter instruções, consulte Executar o atendente do CloudWatch como um usuário diferente.
Importante: para hosts Windows, pule essa etapa. Ambos os agentes são executados como usuários de SYSTEM.
-
Abra Serviços em seu servidor Windows e, em seguida, escolha Propriedades do agente do Amazon CloudWatch para configurar a inicialização do serviço do agente do CloudWatch.
Em Propriedades, selecione a lista suspensa Tipo de inicialização e escolha Automático (Início postergado).
Observação: o tipo de inicialização Automático (início postergado) inicia automaticamente o serviço do agente do CloudWatch após o serviço do SSM Agent.
Informações relacionadas
Baixe o agente do CloudWatch em um servidor on-premises
Como instalo e configuro o agente unificado do CloudWatch para enviar métricas e logs da minha instância do EC2 para o CloudWatch?