Instalação do atendente do CloudWatch em instâncias do EC2 usando sua configuração do atendente
Depois que você tiver uma configuração do atendente do CloudWatch salva no Parameter Store, poderá usá-la quando instalar o atendente em outros servidores.
Tópicos
Anexar uma função do IAM à instância
Anexe a função do IAM CloudWatchAgentServerRole à instância do EC2 para poder executar o atendente do CloudWatch na instância. Essa função permite que o atendente do CloudWatch execute ações na instância. Você deveria ter criado esse perfil anteriormente. Para ter mais informações, consulte Criar funções e usuários do IAM para uso com o atendente do CloudWatch.
Para obter mais informações, consulte Anexar uma função do IAM a uma instância no Manual do usuário do Amazon EC2 para instâncias do Windows.
Baixar o pacote do atendente do CloudWatch em uma instância do Amazon EC2
É necessário instalar o atendente em cada servidor no qual você executará o atendente. O agente do CloudWatch está disponível como um pacote no Amazon Linux 2023 e Amazon Linux 2. Caso esteja usando esse sistema operacional, você pode instalar o pacote digitando o comando a seguir. Também é necessário garantir que a função do IAM anexada à instância tenha o atributo CloudWatchAgentServerPolicy anexado. Para mais informações, consulte Criar funções do IAM a serem usadas com o atendente do CloudWatch em instâncias do Amazon EC2.
sudo yum install amazon-cloudwatch-agent
Em todos os sistemas operacionais compatíveis, é possível baixar o pacote do atendente do CloudWatch usando o Systems Manager Run Command ou um link para download do Amazon S3. Para obter informações sobre o uso de um link para download do Amazon S3, consulte Baixar o pacote do atendente do CloudWatch.
nota
Quando você instala ou atualiza o atendente do CloudWatch, somente a opção Uninstall and reinstall (Desinstalar e reinstalar) é compatível. Não é possível usar a opção In-place update (Atualizações no local).
Baixar o atendente do CloudWatch em uma instância do Amazon EC2 usando o Systems Manager
Antes de usar o Systems Manager para instalar o atendente do CloudWatch, é necessário verificar se a instância está configurada corretamente para o Systems Manager.
Instalar ou atualizar o SSM Agent
Em uma instância do Amazon EC2, o atendente do CloudWatch exige que a instância esteja executando a versão 2.2.93.0 ou posterior. Antes de instalar o atendente do CloudWatch, atualize ou instale o SSM Agent na instância, caso ainda não tenha feito isso.
Para obter informações sobre como instalar ou atualizar o SSM Agent em uma instância que execute o Linux, consulte Instalar e configurar o SSM Agent em instâncias do Linux no Manual do usuário do AWS Systems Manager.
Para obter informações sobre como instalar ou atualizar o SSM Agent em uma instância que executa o Windows Server, consulte Instalar e configurar o SSM Agent em instâncias do Windows no Manual do usuário do AWS Systems Manager.
(Opcional) Verificar os pré-requisitos do Systems Manager
Antes de usar o Run Command do Systems Manager para instalar e configurar a integração com o atendente do CloudWatch, verifique se as instâncias atendem aos requisitos mínimos do Systems Manager. Para obter mais informações, consulte Configurar o AWS Systems Manager no Manual do usuário do AWS Systems Manager.
Verificar o acesso à Internet
Suas instâncias do Amazon EC2 devem ter acesso à Internet de saída a fim de enviar dados ao CloudWatch ou ao CloudWatch Logs. Para obter mais informações sobre como configurar o acesso à Internet, consulte Gateways da Internet no Manual do usuário da Amazon VPC.
Baixar o pacote do atendente do CloudWatch
O Systems Manager Run Command permite gerenciar a configuração de suas instâncias. Você especifica um documento do Systems Manager, especifica parâmetros e executa o comando em uma ou mais instâncias. O SSM Agent na instância processa o comando e configura a instância conforme especificado.
Para baixar o atendente do CloudWatch usando o Run Command
Abra o console do Systems Manager em https://console.aws.amazon.com/systems-manager/
. No painel de navegação, selecione Executar comando.
- ou -
Se a página inicial do AWS Systems Manager for exibida, role para baixo e escolha Explore Run Command.
-
Selecione Run command.
-
Na lista Documento do comando, escolha AWS-ConfigureAWSPackage.
-
Na área Targets (Destinos), selecione a instância na qual o atendente do CloudWatch será instalado. Se você não visualizar uma instância específica, ela pode não estar configurada para o Run Command. Para obter mais informações, consulte Configurar o AWS Systems Manager para ambientes híbridos no Manual do usuário do AWS Systems Manager.
-
Na lista Ação, escolha Instalar.
-
Na caixa Name (Nome), digite
AmazonCloudWatchAgent
. -
Deixe a Version (Versão) definida como latest (mais recente) para instalar a versão mais recente do atendente.
-
Escolha Executar.
-
Opcionalmente, nas áreas Targets and outputs (Destinos e saídas), selecione o botão ao lado do nome da instância e escolha View output (Visualizar saída). O Systems Manager deve exibir que o atendente foi instalado corretamente.
(Opcional) Modificar a configuração comum e o perfil nomeado para o atendente do CloudWatch
O atendente do CloudWatch inclui um arquivo de configuração chamado common-config.toml
. Opcionalmente, é possível usar esse arquivo para especificar as informações de proxy e região.
Em um servidor que executa o Linux, esse arquivo encontra-se no diretório /opt/aws/amazon-cloudwatch-agent/etc
. Em um servidor que executa o Windows Server, esse arquivo encontra-se no diretório C:\ProgramData\Amazon\AmazonCloudWatchAgent
.
O common-config.toml
padrão é conforme segue:
# This common-config is used to configure items used for both ssm and cloudwatch access ## Configuration for shared credential. ## Default credential strategy will be used if it is absent here: ## Instance role is used for EC2 case by default. ## AmazonCloudWatchAgent profile is used for onPremise case by default. # [credentials] # shared_credential_profile = "{profile_name}" # shared_credential_file= "{file_name}" ## Configuration for proxy. ## System-wide environment-variable will be read if it is absent here. ## i.e. HTTP_PROXY/http_proxy; HTTPS_PROXY/https_proxy; NO_PROXY/no_proxy ## Note: system-wide environment-variable is not accessible when using ssm run-command. ## Absent in both here and environment-variable means no proxy will be used. # [proxy] # http_proxy = "{http_url}" # https_proxy = "{https_url}" # no_proxy = "{domain}"
Todas as linhas são comentadas inicialmente. Para definir o perfil de credencial ou as configurações de proxy, remova o #
da linha e especifique um valor. É possível editar esse arquivo manualmente ou usando o Run Command RunShellScript
no Systems Manager:
-
shared_credential_profile
: para servidores on-premises, essa linha especifica o perfil de credenciais do usuário do IAM a ser usado para enviar dados ao CloudWatch. Se você mantiver esta linha comentada,AmazonCloudWatchAgent
será usado.Em uma instância do EC2, você poderá usar essa linha para que o atendente do CloudWatch envie dados dessa instância para o CloudWatch em outra região da AWS. Para fazer isso, especifique um perfil nomeado que inclua um campo
region
especificando o nome da região para a qual enviar.Se você especificar um
shared_credential_profile
, também deverá remover o símbolo#
do início da linha[credentials]
. -
shared_credential_file
: para que o atendente procure credenciais em um arquivo localizado em um caminho diferente do padrão, especifique esse caminho completo e o nome do arquivo aqui. O caminho padrão é/root/.aws
no Linux eC:\\Users\\Administrator\\.aws
no Windows Server.O primeiro exemplo a seguir mostra a sintaxe de uma linha
shared_credential_file
válida para servidores Linux, e o segundo exemplo é válido para o Windows Server. No Windows Server, você deve fazer o escape dos caracteres \.shared_credential_file= "/usr/
username
/credentials"shared_credential_file= "C:\\Documents and Settings\\
username
\\.aws\\credentials"Se você especificar um
shared_credential_file
, também deverá remover o símbolo#
do início da linha[credentials]
. -
Configurações do proxy: se seus servidores usarem os proxies HTTP ou HTTPS para entrar em contato com os produtos da AWS, especifique esses proxies nos campos
http_proxy
ehttps_proxy
. Se houver URLs que devem ser excluídas do proxy, as especifique no campono_proxy
, separadas por vírgulas.
Iniciar o atendente do CloudWatch
Você também pode iniciar o atendente usando o Systems Manager Run Command ou a linha de comando.
Iniciar o CloudWatch usando o Systems Manager Run Command
Siga estas etapas para iniciar o atendente usando o Systems Manager Run Command.
Para iniciar o atendente do CloudWatch usando o Run Command
Abra o console do Systems Manager em https://console.aws.amazon.com/systems-manager/
. No painel de navegação, selecione Executar comando.
- ou -
Se a página inicial do AWS Systems Manager for exibida, role para baixo e escolha Explore Run Command.
-
Selecione Run command.
-
Na lista Documento do comando, escolha AmazonCloudWatch-ManageAgent.
-
Na área Targets (Destinos), escolha a instância onde você instalou o atendente do CloudWatch.
-
Na lista Ação, escolha configurar.
-
Na lista Origem de configuração opcional, escolha ssm.
-
Na caixa Local de configuração opcional, insira o nome do arquivo de configuração do agente que você criou e salvou no Systems Manager Parameter Store, conforme explicado em Criar o arquivo de configuração do atendente do CloudWatch.
-
Na lista Reinicialização opcional, escolha sim para iniciar o atendente após ter concluído essas etapas.
-
Escolha Executar.
-
Opcionalmente, nas áreas Targets and outputs (Destinos e saídas), selecione o botão ao lado do nome da instância e escolha View output (Visualizar saída). O Systems Manager deve exibir que o atendente foi iniciado corretamente.
Iniciar o atendente do CloudWatch em uma instância do Amazon EC2 usando a linha de comando
Siga estas etapas para usar a linha de comando para instalar o atendente do CloudWatch em uma instância do Amazon EC2.
Como usar a linha de comando para iniciar o atendente do CloudWatch em uma instância do Amazon EC2
-
Nesse comando,
-a fetch-config
faz com que o atendente carregue a última versão do arquivo de configuração do atendente do CloudWatch e o-s
inicia o atendente.Linux e macOS: se você salvou o arquivo de configuração no Systems Manager Parameter Store, insira o seguinte:
sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -a fetch-config -m ec2 -s -c ssm:
configuration-parameter-store-name
Linux e macOS: se você salvou o arquivo de configuração no computador local, insira o comando a seguir. Substitua
configuration-file-path
pelo caminho para o arquivo de configuração do atendente. Este arquivo é chamadoconfig.json
, se você o criou com o assistente, e pode ser chamadoamazon-cloudwatch-agent.json
, se você o criou manualmente.sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -a fetch-config -m ec2 -s -c file:
configuration-file-path
Windows Server: se você salvou o arquivo de configuração do atendente no Systems Manager Parameter Store, insira o seguinte no console do PowerShell:
& "C:\Program Files\Amazon\AmazonCloudWatchAgent\amazon-cloudwatch-agent-ctl.ps1" -a fetch-config -m ec2 -s -c ssm:
configuration-parameter-store-name
Windows Server: se você salvou o arquivo de configuração do atendente no computador local, digite o seguinte no console do PowerShell:
& "C:\Program Files\Amazon\AmazonCloudWatchAgent\amazon-cloudwatch-agent-ctl.ps1" -a fetch-config -m ec2 -s -c file:"C:\Program Files\Amazon\AmazonCloudWatchAgent\config.json"