Amazon CloudWatch – Monitoramento de aplicativos e infraestrutura

Amazon CloudWatch

O Amazon CloudWatch permite que você colete, acesse e correlacione dados e informações em uma única plataforma com todos os seus recursos. Com a demanda crescente do trabalho remoto quase todas as grandes empresas estão migrando seus aplicativos para a nuvem. Desde medias a pequenos seguem a suíte. Você pode ser um deles!

O que é Amazon CloudWatch? (Amazon CloudWatch – é um serviço de monitoramento e gerenciamento que fornece dados e percepções acionáveis ​​para recursos de infraestrutura e aplicativos AWS, híbridos e locais. Com o CloudWatch, você pode coletar e acessar todos os seus dados de desempenho e operacionais na forma de logs e métricas de uma única plataforma.)

Mas mudar para a nuvem não é suficiente! Você precisa garantir que os recursos e serviços da nuvem estejam continuamente disponíveis para garantir que os aplicativos que você está movendo para a computação em nuvem estejam disponíveis para seus clientes.

Recursos e serviços na nuvem

Em essência, os serviços em nuvem não devem ser nunca desativados. Isso pode ser muito prejudicial para os negócios. Mas como você garante que os serviços em nuvem não sejam desativados?

Simples! Você precisará de uma ferramenta para monitorar os aplicativos que está movendo para a nuvem.

Amazon CloudWatch é um desses aplicativos ou você achou que o Amazon CloudWatch era tipo um relógio digital igual ao SmartWatch da Apple?

Pois é, o mais incrível é que muitas pessoas acham exatamente isso mesmo! Bom, você não precisa saber tudo com antecedência, então, vamos aprender mais sobre esse serviço e seus recursos na cloud.

Agora que você sabe o que é Amazon CloudWatch, aqui está uma pergunta simples que precisa ser respondida e, dependendo da resposta você decidirá se continua lendo esse artigo inteiro ou simplesmente pode ignorá-lo e ir para outro.

Aqui está a questão: “Você precisa do Amazon CloudWatch se o seu site WordPress estiver hospedado no servidor de nuvem da Amazon?

A resposta – não, não precisa! Então vamos direto ao assunto… Se você está lendo este artigo apenas para aprender como monitorar o tempo de atividade do seu site, existem dezenas de ferramentas mais simples. Algo tão simples que até o Jetpack pode fazer isso por você.

Se você está além do WordPress ou de sites, blog e portais simples, se for afirmativo, acredito que você ainda vai continuar lendo o restante do artigo.

Mais uma coisa simples que você deve saber – Amazon CloudWatch é para aplicativos de nível empresarial executados na nuvem. Não é para pessoas comuns como você e eu.

O AWS CloudWatch é usado para monitorar aplicativos e outros recursos em execução na plataforma AWS. Essa ferramenta coletará dados operacionais por meio de logs, métricas e eventos que, juntos, fornecem uma visão unificada dos aplicativos e recursos da AWS.

Agora que a ideia sobre o Amazon CloudWatch esta ficando mais clara, vamos seguir com o tutorial.

Mas, não espere muito, okay, não vai ter um treinamento prático por aqui. Você precisa de um administrador da AWS se quiser usar o AWS CloudWatch. Isso requer conhecimento profundo da AWS.

Este artigo abordará apenas o básico para lhe dar uma noção descomplicada do produto da Amazon. Isso é tudo!

Vamos começar…

Neste tutorial e revisão você vai saber sobre:

  • O que é Amazon CloudWatch?
  • Como funciona o CloudWatch?
  • Por que você precisa do CloudWatch?
  • Vantagens de usar CloudWatch.
  • Criação de painéis do CloudWatch.
  • Criação e configuração de alarmes CloudWatch.
  • Por que Monitorar seus aplicativos?

Vamos começar com cada tópico.

O que é Amazon CloudWatch?

O que é Amazon CloudWatch?

Amazon CloudWatch é um componente da AWS. Ele permite que você monitore os recursos da AWS, como instâncias EC2, balanceadores de carga, grupos de escalonamento automático, elástico, etc. Você também pode monitorar outros serviços da AWS como RDS, SQS, SNS e Amazon S3.

Para usar o Amazon CloudWatch, você precisa ser um administrador da AWS. Se sua função estiver abaixo do administrador, será seguro presumir que você não tem um conhecimento completo da AWS. Isso o tornará incapaz de usar o CloudWatch.

CloudWatch é uma ferramenta avançada que permitirá que você monitore vários aplicativos e instâncias da AWS a partir de um painel centralizado.

Ao começar a usar o CloudWatch, você pode fazer o seguinte:

  • Detectar qualquer anomalia na configuração do ambiente de nuvem que você está usando.
  • Criar um painel personalizado que mostrará as métricas de todos os serviços da AWS que você está usando.
  • Criar alarmes e configure-os para monitorar as métricas da AWS e até mesmo acionar ações automáticas.
  • Entender claramente o desempenho de seus aplicativos, quanto dos recursos da AWS você está usando e a integridade geral de todas as suas operações.

Você entendeu, certo? O CloudWatch não é apenas uma ferramenta complexa, mas também incrivelmente poderosa. Não é algo que você usa para monitorar um blog no WP.


Como funciona o CloudWatch?

Existem quatro funções principais do CloudWatch. Eles são:

  1. Coletar métricas e logs.
  2. Monitorar e visualizar os dados coletados.
  3. Acionar respostas automáticas a qualquer mudança.
  4. Analisar todas as suas métricas.

Meu Deus, O que são todas essas e elas significam?

Vamos descobrir!

1. Coletando métricas e registros

O CloudWatch irá recuperar ou coletar métricas e logs de todos os serviços da AWS que você está usando. Todas as métricas são armazenadas no repositório, incluindo qualquer métrica customizada que você insere no repositório.

Existem vários serviços da AWS que publicam métricas do CloudWatch. Por exemplo, se você estiver usando o Amazon CloudFront, ou Amazon Athena, ou AppStream versão 2.0, Amazon API Gateway, etc. – o CloudWatch obterá métricas de todos eles.

2. Monitorando e visualizando dados coletados

O que acontece com os dados coletados? O CloudWatch irá visualizar os dados usando painéis do CloudWatch onde você pode obter uma visão unificada de cada aplicativo, servidor e recurso da AWS que você está usando. Não importa se você os está executando na nuvem ou no local.

A apresentação visual permitirá que você execute uma análise visual e o ajudará a aprender como os recursos estão sendo executados no momento. Você conhecerá a saúde geral de suas operações.

3. Acione respostas automáticas a qualquer mudança

Uma vez que o CloudWatch encontra quaisquer mudanças operacionais, ele irá automaticamente disparar uma resposta usando alarmes. Você precisa definir os alarmes.

Por exemplo, você pode acionar uma reinicialização automática ou um encerramento automático de instâncias EC2 se um determinado conjunto de condições for atendido.

Não apenas isso, você pode até definir alarmes para o acionamento automático do Amazon SNS ou do Amazon EC2 escalonamento automático.

A resposta que o CloudWatch irá disparar dependerá do alarme que você definir e configurar.

Aprenderemos como criar e configurar alarmes posteriormente neste artigo.

4. Analise todas as suas métricas

Esta é a última etapa em que você analisará e visualizará os dados coletados. A análise o ajudará a obter uma visão clara do desempenho do seu aplicativo.

Você pode usar o CloudWatch Metric Math para análises em tempo real. Isso o ajudará a compreender profundamente seus dados e a tomar as medidas necessárias.

Por que você precisa do CloudWatch?

Por que você precisa do CloudWatch?

Sua empresa ou organização gostaria de ter um aplicativo com desempenho inadequado? Claro que não! Embora seja necessário ter aplicativos baseados na web e na nuvem, também é necessário ter uma ferramenta de monitoramento útil capaz de monitorar redes, infraestrutura e plataformas em nuvem.

Suponha que você tenha um aplicativo da web implantado na nuvem. Você não quer saber as respostas para estas perguntas:

  • Quanta largura de banda seu aplicativo está consumindo todos os dias?
  • Quantos usuários estão usando seu aplicativo?
  • Como está o desempenho do seu aplicativo na nuvem?
  • Seus clientes estão satisfeitos com seu aplicativo ou estão insatisfeitos?

O CloudWatch lhe dará respostas para todas essas perguntas. Isso o ajudará a monitorar o desempenho de seu aplicativo na nuvem.

Com os dados que o CloudWatch colocará à sua disposição, você pode identificar os gargalos (se houver) que estão impactando (ou podem potencialmente impactar) o desempenho do seu aplicativo.

Depois de identificar esses gargalos, você pode eliminá-los rapidamente para melhorar o desempenho do seu aplicativo. Quanto melhor o desempenho do seu aplicativo, mais seu negócio cresce.

A AWS está ficando cada vez mais complexa a cada dia. É alcançado um ponto em que o monitoramento manual de todos os aplicativos e recursos usados ​​é virtualmente impossível.

— CloudWatch, que é essencialmente uma ferramenta de automação, ajuda você a monitorar tudo em um só lugar. Essa é a razão pela qual você precisa do CloudWatch.


Vantagens de usar CloudWatch

Se você começar a usar o CloudWatch para monitorar seus aplicativos e infraestrutura em nuvem, poderá desfrutar de pelo menos 5 benefícios.

Eles são:

1. Um único ponto de monitoramento – painel unificado

Amazon CloudWatch desfruta de integração nativa com mais de 70 serviços relacionados à AWS. Isso significa que você pode monitorar todos eles (se usar todos) em um único lugar.

A quantidade de dados gerados por aplicativos baseados em nuvem é enorme. Ser capaz de coletar dados de todos os aplicativos em um único lugar por meio de métricas e registros abre o caminho para uma fácil integração dos dados com todos os seus aplicativos.

Ser capaz de visualizar os dados permite uma análise fácil dos aplicativos em execução na nuvem AWS. Isso, por sua vez, garante que você possa manter seu aplicativo livre de erros e gargalos.

2. Permite a otimização de recursos e melhoria da eficiência operacional

Com o CloudWatch, você pode obter insights em tempo real que permitem otimizar a eficiência operacional. Quando a eficiência aumenta, o custo reduz!

Usando o CloudWatch, você pode entender o tipo de capacidade de carga de trabalho necessária para que seu aplicativo funcione sem falhas.

Como o CloudWatch permite definir e personalizar alarmes, você sempre pode obter automação em ações usando limites predefinidos. Você pode até usar algoritmos de aprendizado de máquina para detectar anomalias e tomar as devidas providências.

3. Obtenha dados granulares da AWS, bem como de aplicativos locais

Como o CloudWatch se integra nativamente com mais de 70 serviços da AWS, o CloudWatch pode coletar dados de métricas e publicá-los automaticamente.

A quantidade de dados detalhados que você pode obter é desconcertante. Você pode obter métricas nativas e personalizadas de 1 minuto com granularidade de um segundo.

Esse tipo de dados o ajudará a se aprofundar cada vez mais para descobrir tudo o que você precisa saber sobre o desempenho de seu aplicativo.

O que mais? O CloudWatch oferece suporte nativo à arquitetura AWS híbrida que usa recursos baseados em nuvem e recursos locais. Portanto, se seu aplicativo estiver usando arquitetura híbrida, você ainda pode se beneficiar do CloudWatch.

4. Maior visibilidade operacional

O CloudWatch pode reunir dados em seus aplicativos, pilhas de infraestrutura, redes e outros serviços da AWS que você possa estar usando.

Isso permite uma melhor otimização dos aplicativos.

Por exemplo, o CloudWatch pode dizer claramente quanta memória seu aplicativo está consumindo ou quanta largura de banda está usando todos os dias. Se as coisas não parecerem certas, você pode otimizar seu aplicativo para minimizar o uso tanto quanto possível.

Você sabia que, com os dados do CloudWatch, você pode realizar operações matemáticas relacionadas a métricas? Esses cálculos matemáticos podem ajudá-lo a obter insights incríveis.

Suponha que você tenha várias instâncias EC2. Com os dados do CloudWatch, você pode obter o agregado do uso de memória em todas as instâncias.

Isso fará com que todo o seu sistema fique visível à sua frente. Se você detectar quaisquer problemas de desempenho, poderá resolvê-los imediatamente.

5. Obtenha informações valiosas

O CloudWatch gera logs de diferentes aplicativos e serviços AWS. Ao analisar e explorar os registros, você pode monitorar coisas como uso da capacidade, utilização da CPU, uso da memória, etc.

No que diz respeito aos pagamentos, você precisa pagar apenas pelas consultas de log que você realizar com o CloudWatch. As consultas de log também podem aumentar dependendo da complexidade e do volume de seus logs.


Criação de painéis no CloudWatch

Você pode personalizar os painéis do CloudWatch para obter uma visão unificada de todos os recursos da AWS que você está usando, independentemente das regiões.

O CloudWatch permitirá que você crie quantos painéis desejar. Existem duas maneiras de criar um painel do CloudWatch:

  • Console CloudWatch
  • API PutDashboard

Veja como você cria um painel usando o Console CloudWatch:

Etapa 1: Abra o “Console CloudWatch”.

Etapa 2: No painel de navegação: Painéis >> Criar painel.

Etapa 3: insira o nome do painel na caixa “Criar novo painel” que será exibida. Insira o nome do seu painel e clique no botão “Criar painel”.

Nota: Caso você nomeie seu painel como “CloudWatch-Default”, o painel que você criar começará a ser exibido na página inicial do CloudWatch. Se você modificar ligeiramente o nome do painel para “CloudWatch-Default-“, o painel aparecerá na homenagem do CloudWatch apenas e somente quando você abrir o grupo de recursos específico da AWS.

Execute o que você precisar.

Etapa 4Wifi: depois de criar o painel, você terá que adicionar algo a ele. Você verá uma caixa de ação que diz “Adicionar a este painel”.

Você pode adicionar o que quiser.

Adicionando um gráfico – Se você deseja adicionar um gráfico, você precisa selecionar Stacked ou Line Area e então clicar na opção configure.

Você verá uma caixa de diálogo chamada “Adicionar gráfico de métrica”. Você precisa escolher a métrica que deseja incluir no gráfico. Depois de selecionar a métrica, clique em “Criar widget”.

Adicionando um número para exibir uma métrica – Você pode adicionar um número para exibir uma métrica. Para fazer isso, selecione Número e clique na opção configurar.

Selecione as métricas que deseja incluir no gráfico usando a caixa de diálogo “Adicionar gráfico de métricas” que aparece. Agora, clique na opção “Criar widget”.

Adicionando um bloco de texto – Se quiser adicionar um bloco de texto, você também pode fazer isso. Basta selecionar Texto e clicar na opção configurar.

Depois de fazer isso, uma nova caixa de diálogo chamada “Novo widget de texto” aparecerá. Selecione Markdown e adicione seu texto. Não se esqueça de formatar seu texto.

Por fim, clique na opção “Criar widget”.

Etapa 5: se você quiser adicionar mais widgets, faça isso e, em seguida, salve seu painel.

É isso!

Explicar como criar um painel usando a função PutDashboard API está além do escopo deste artigo. Então, vou pular essa parte. No entanto, aqui estão alguns parâmetros comuns que são amplamente usados:

  • DashboardName: isto irá especificar o nome do seu painel em formato de string. É um campo obrigatório.
  • DashboardBody: isto irá especificar todas as informações que seu painel manterá, incluindo os widgets que você deseja no painel e sua posição no painel.

Criação e configuração de alarmes CloudWatch

Você pode criar dois tipos de alarmes:

  1. Alarmes métricos
  2. Alarmes compostos

O alarme métrico monitorará apenas uma métrica ou uma métrica matemática com base em uma expressão matemática.

O alarme composto, por outro lado, disparará se e somente se as condições definidas para todos os outros alarmes configurados forem satisfeitas.

O CloudWatch também permitirá a criação de um alarme com base em:

  • Expressão matemática métrica.
  • Detecção de anomalia.
  • O limite estático de uma única métrica.

Veja o guia passo a passo para configurar um alarme CloudWatch:

Criação de alarme com base em métrica única

Etapa 1Wifi: No painel de navegação do Console do CloudWatch, clique em Alarmes >> Criar Alarme.

Etapa 2Wifi: selecione a métrica desejada e execute um dos dois:

  • Na caixa de pesquisa, procure uma métrica e pressione o botão “Enter”.
  • Encontre e selecione o namespace de serviço que contém as métricas que você deseja incluir no alarme.

Etapa 3Wifi: mude para a guia “Métricas gráficas” e faça o seguinte:

  • Em Estatísticas, escolha qualquer um dos percentis ou estatísticas disponíveis.
  • De Período, especifique o período de avaliação do alarme.
  • Clique na opção “Selecionar métrica” para abrir a página chamada “Especificar métrica e condições”. Esta página é onde você encontra todas as informações das estatísticas e métricas especificadas por você.

Etapa 4Wifi: mude para a guia “Condições” e faça o seguinte:

  • Dê um nome e uma descrição ao seu alarme.
  • Defina o valor limite da métrica usando o campo “Sempre que for”.
  • Clique na opção que diz “Configuração adicional”.
  • Defina o número de pontos de dados ou pontos de avaliação no campo “Pontos de dados para alarme”. Este é o valor necessário para acionar o alarme.
  • No caso de pontos de dados ausentes, use o “Tratamento de dados ausentes” para definir as configurações de alarme e clique no botão Avançar.

Etapa 5Wifi: mude para a guia “Notificação” e selecione o tópico Amazon SNS.

Etapa 6Wifi: se desejar que o alarme execute ações específicas do EC2 (como escala automática), selecione as opções apropriadas.

Etapa 7Wifi: Mude para a guia “Visualizar e criar”. É aqui que você pode visualizar todas as configurações. Se você estiver satisfeito, clique na opção “Criar alarme”.

Isso é tudo! Você criou um alarme com sucesso.

Criação de alarme com base na detecção de anomalias

Etapa 1Wifi: execute as etapas 1, 2 e 3 mencionadas acima para a criação de um alarme baseado em métrica única.

Etapa 2Wifi: mude para a guia “Condições” e faça o seguinte:

  • Selecione a opção “Detecção de anomalias”.
  • Especifique o intervalo de valor da métrica que pode disparar um alarme no campo “Sempre que for”.
  • No campo “Limite de detecção de anomalias”, especifique o número de detecção de anomalias.
  • Clique na opção “Configuração adicional”.
  • Especifique o número de pontos de dados ou pontos de avaliação (necessários para disparar o alarme) no campo “Pontos de dados para alarme”.
  • Defina as configurações de alarme em “Tratamento de dados ausentes” se houver pontos de dados ausentes e clique no botão Avançar.

Etapa 3: Repita as etapas 5, 6 e 7 mencionadas acima para a criação de um alarme baseado em métrica única.

Criação de alarme com base na expressão matemática métrica

Etapa 1: execute as etapas 1, 2 e 3 mencionadas acima para a criação de um alarme baseado em métrica única.

Passo 2: Adicione uma nova linha para a expressão clicando em “Adicionar uma expressão matemática.”

  • Na coluna “Detalhes” da nova linha, adicione uma expressão matemática.
  • Na coluna “Id”, adicione outra expressão matemática ou uma métrica.

Você pode adicionar mais expressões matemáticas se precisar.

Etapa 3: exiba a página “Especificar métrica e condições” clicando em “Selecionar métrica”. A página exibirá todas as informações da expressão matemática métrica que você selecionou.

Etapa 4: Mude para a guia “Condições” e execute tudo mencionado na Etapa 2 de criação de alarme com base na detecção de anomalia.

Etapa 5: Repita as etapas 5, 6 e 7 mencionadas acima para a criação de um alarme baseado em métrica única.

Você também vai gostar:

Prós e Contras do Amazon CloudWatch


Prós do Amazon CloudWatch

  • Permite monitorar todos os aplicativos em mais de 70 serviços da AWS.
  • Fornece dados granulares para análise detalhada.
  • Permite a análise visual de todos os dados em um único painel unificado.
  • Gerencia facilmente os períodos de registro.
  • Economiza tempo e dinheiro.
  • Oferece monitoramento em tempo real.
  • Permite a criação de alarmes com base em gatilhos personalizados.
  • Pague pelo que usar.

Contras do Amazon CloudWatch

  • Requer amplo conhecimento da AWS.
  • Melhor gerenciado por administradores AWS do que por novatos.
  • A ferramenta de nível empresarial não é adequada para iniciantes e pequenos proprietários de sites.
  • Funciona apenas com serviços AWS. Não pode ser usado com outras plataformas de nuvem.

Monitorar seus aplicativos

Amazon CloudWatch é uma ferramenta extremamente poderosa para monitorar seus aplicativos e recursos em nuvem oferecidos pela AWS. Infelizmente, não é para todos.

Para até mesmo implantar o CloudWatch, quanto mais usá-lo, é necessário ter um amplo conhecimento da AWS.

Para novatos e pequenos proprietários de blog que usam os serviços de hospedagem da AWS, o CloudWatch é nada menos que um sonho distante que apenas deuses podem ousar ver. É literalmente sem sentido para pequenos blogs e sites.

Nós aqui do Internetix pensamos que se alguém souber exatamente com o que está lidando no Amazon CloudWatch pode ser um salva-vidas.