Como instalar e configurar o AWS CloudWatch Agent em um servidor Windows
Os servidores em nuvem não precisam ser baseados em Linux, as cargas de trabalho do servidor Windows podem ser executadas na AWS e são compatíveis com a maioria dos serviços internos que a Amazon oferece, incluindo suas ferramentas de monitoramento CloudWatch. você precisará instalar o agente manualmente.
A execução de servidores no data center local pode significar ter uma solução de monitoramento de infraestrutura que é executada ao lado de cada servidor. Essa solução geralmente consome tantos recursos quanto o aplicativo que deveria monitorar!
Na nuvem Amazon Web Services (AWS), o mesmo monitoramento e log robusto existe sem a necessidade de se preocupar em provisionar recursos extras ou configurar o acesso. A solução da AWS para esse problema é o CloudWatch.
O CloudWatch é um serviço da AWS que captura os logs e as métricas do servidor de várias fontes. O CloudWatch coleta informações de recursos como instâncias EC2 (Elastic Compute Cloud) ou servidores locais. Em seguida, os consolida em um local central na AWS.
No final deste tutorial, você poderá instalar o agente do AWS CloudWatch em uma instância do Windows EC2 e configurá-lo para enviar logs para o CloudWatch.
Pré-requisitos
Para acompanhar, você precisará do seguinte:
- Uma conta da AWS
- Uma instância do Windows Server EC2 de 64 bits OU um servidor local executando o Server 2008 ou posterior
- O arquivo de chave associado à instância ( Apenas instâncias do EC2)
Conectando-se a uma instância do Windows EC2
A primeira etapa na configuração do CloudWatch é instalar o agente do CloudWatch. O agente é o que envia as informações de volta à AWS que seu servidor gera. Antes que você possa fazer isso, primeiro você precisa se conectar à sua instância do Windows EC2.
Para conectar-se a uma instância do Windows EC2, você precisará obter duas informações na seção EC2 do console da AWS para a instância do Windows na qual deseja efetuar login: o nome DNS público e o arquivo de chave associado ao instância.
Depois de obtê-los, entre no serviço EC2 no console da AWS, clique com o botão direito do mouse na instância e selecione "“ Get Password do Windows". ” Uma vez aqui, você será solicitado a fornecer o arquivo-chave e, se tiver o arquivo correto, ele será exibido na tela abaixo.
Se você ou outro administrador já alterou essa senha ou não tem acesso ao arquivo de chave, clique com o botão direito do mouse na instância, selecione "“ Terminate" ; e começar de novo. Não há chaves de recuperação depois que elas são perdidas e nem mesmo a Amazon pode recuperá-las para você.
Dito isto, se você conseguir recuperar a senha do Windows, copie-a e salve-a para mais tarde em um gerenciador de senhas. Agora, abra um cliente de área de trabalho remota e faça logon no servidor usando o nome DNS público anterior, com as credenciais acima. Se você fez tudo corretamente, verá uma visão familiar: A área de trabalho do servidor Windows.
Instalando o CloudWatch Agent
Agora que você instalou o RDP na instância, pode começar a instalar o agente CloudWatch. Para fazer isso, a Amazon fornece um instalador . msi pré-construído para usar. De acordo com a documentação do CloudWatch, você pode ver no link Download em cada arquitetura que existem dois URLs diferentes para ele: um regional e outro geral. Qualquer um funcionará para este tutorial.
Comece abrindo uma janela do PowerShell na sua instância do EC2 e inserindo os comandos abaixo. O primeiro comando fará o download do instalador do CloudWatch para o perfil de usuário local e o segundo executará o instalador.
Invoke-WebRequest -Uri https://s3. amazonaws. com/amazoncloudwatch-agent/windows/amd64/latest/amazon-cloudwatch-agent. msi -OutFile $ env: USERPROFILE \ Downloads \ amazon-cloudwatch -agent. msi -UseBasicParsing Invoke-Item $ env: USERPROFILE \ Downloads \ amazon-cloudwatch-agent. msi
Depois que o instalador for executado, você notará que um novo serviço do Windows para CloudWatch está instalado no servidor. Este serviço é o que permite que o CloudWatch seja executado em segundo plano, coletando as informações necessárias.
Confirme se o serviço foi instalado e não está sendo executado usando o cmdlet Get-Service na captura de tela abaixo. Não inicie ainda, você precisará configurá-lo primeiro, o que será feito na próxima seção.
Configurando o CloudWatch
Agora que o agente do CloudWatch está instalado, você precisa informar o que informar. Além das métricas pré-selecionadas, a Amazon permite criar métricas personalizadas, enviar logs e até mesmo relatar eventos do Windows Event Viewer. Seria muito caro computacionalmente enviar tudo de volta o tempo todo e fazer muito barulho. Ao definir uma configuração, você pode dizer à AWS o que é importante e o que observar.
A Amazon usa um arquivo de configuração JSON para direcionar o agente no qual os logs e métricas serão coletados. Se você já está familiarizado com a criação desses arquivos ou recebeu um pré-fabricado pela sua organização, pode usá-lo. Se a criação de arquivos de configuração não é algo familiar, a Amazon também fornece um assistente para começar.
Para iniciar o assistente, você deve executá-lo no diretório de instalação do CloudWatch. Volte ao console do PowerShell e digite Invoke-Item "C: \ Arquivos de Programas \ Amazon \ AmazonCloudWatchAgent \ amazon-cloudwatch-agent-config-wizard. exe" Este comando iniciará o assistente em uma sessão interativa e depois de responder algumas perguntas, ele irá gerar um arquivo JSON com a configuração.
Por padrão, o assistente salva o arquivo de configuração no perfil do usuário como config. json, mas também é possível salvá-los no AWS Systems Manager. O Systems Manager permitirá que você tenha a mesma configuração com versão e seja facilmente acessível a várias instâncias ao mesmo tempo, mas exige que a configuração da AWS seja feita para cada uma dessas instâncias.
A seguir, é apresentado um exemplo de arquivo de configuração gerado pelo assistente. Seu arquivo pode ser um pouco diferente; o arquivo abaixo é apenas um exemplo básico.
{"logs": {"logs_collected": {"arquivos": {"collect_list": [{"file_path": "C: \\ ENTER \\ PATH \\ HERE \\ log. txt" , "log_group_name": "log. txt", "log_stream_name": ""}]}, "windows_events": {"collect_list": [{"event_format": "xml", "event_levels": ["WARNING", " ERRO "," CRITICAL "]," event_name ":" Sistema "," log_group_name ":" Sistema "," log_stream_name ":" "}}]}}}," metrics ": {" append_dimensions ": {" AutoScalingGroupName ": "$", "ImageId": "$", "InstanceId": "$", "InstanceType": "$"}, "metrics_collected": {"LogicalDisk": {"measure": ["% de espaço livre"] , "metrics_collection_interval": 60, "resources": ["*"]}, "Memory": {"measure": ["% de bytes confirmados em uso"], "metrics_collection_interval": 60}, "statsd": {" metrics_aggregation_interval ": 60," metrics_collection_interval ": 10," service_address ":": 8125 "}}}}
Iniciando o agente do CloudWatch
Agora que o serviço foi instalado e a configuração foi definida, você pode iniciar o agente. Dentro do console aberto do PowerShell, mude para o diretório CloudWatch executando o cd "C: \ Arquivos de Programas \ Amazon \ AmazonCloudWatchAgent" e execute o comando abaixo para iniciar o agente do CloudWatch com o arquivo de configuração que você acabou de criar em uma instância do EC2. Este comando pega o arquivo de configuração gerado pelo assistente e inicia o serviço com essas configurações.
. \ amazon-cloudwatch-agent-ctl. ps1 -um arquivo de busca-config -m EC2 -c: $ env: USERPROFILE \ config. json -s
Se você agora executar novamente o cmdlet Get-Service da versão anterior, verá que o serviço do agente CloudWatch está sendo executado agora, como mostrado abaixo.
Além disso, se você for para a página do CloudWatch no console da AWS, nas “ Metrics ” seção à esquerda, selecione a “ All-Metrics ” guia e, em seguida, vá em Tudo > EC2 > Métricas por instância, você verá suas métricas de instância relatando ao CloudWatch, conforme mostrado abaixo.
Conclusão
Agora você deve conseguir configurar o AWS CloudWatch nas instâncias do Windows EC2. Com algumas pequenas alterações nos comandos, o mesmo processo também funcionará para servidores locais. A partir daqui, você pode configurar alarmes para alertá-lo se algo der errado, grupos de logs para agregar logs de aplicativos de seus servidores e automatizar a instalação do agente CloudWatch usando o PowerShell.
Via: How to Geek
Nenhum comentário