Amazon Elastic Container Service (ECS) é um serviço de orquestração de contêineres fornecido pela Amazon Web Services (AWS). É uma solução desenvolvida pela AWS para resolver o problema de gerenciamento de grandes cluster de contêineres.
Por que usar o ECS?
Existem outras ferramentas de orquestração de contêineres, cada uma com suas vantagens, mas o ECS é feito para a AWS e oferece integração fácil com o ecossistema AWS. Você pode usá-lo com o AWS Elastic Load Balancer (ELB), AWS Identity and Access Management (IAM), AWS CloudTrail, armazenar dados persistentes no AWS Elastic Block Store ou monitorá-los com AWS CloudWatch.
Você pode usá-lo também com AWS Fargate, que é um motor de computação sem serviço que fornece contêineres totalmente gerenciados.
O que é Monitoramento?
Monitoramento é o processo de rastrear e observar o desempenho, disponibilidade e saúde geral de seus recursos, serviços e aplicações. Isso ajuda a detectar e resolver problemas antes que eles afetem usuários, melhorar a confiabilidade e disponibilidade das aplicações, otimizar o uso de recursos e aumentar a segurança das suas aplicações.
É apenas uma forma de certificar-se que toda a infraestrutura estiver rodando como deveria. Também o ajuda a saber quanto tráfego sua aplicação está recebendo, se for um aplicativo web ou site, e o que realmente está acontecendo com ele.
Existem diferentes aspectos de monitoramento, alguns dos quais incluem:
-
Monitoramento de desempenho: Aqui, rastreamos e monitorizamos as métricas de desempenho da infraestrutura, como uso de CPU, consumo de memória, disco, I/O e redes, e assim por diante.
-
Monitoramento de erros e logs: Aqui, coletamos e analisamos logs e mensagens de erro.
-
Monitoramento de disponibilidade: Garantimos que os sistemas estejam funcionando.
-
Monitoramento de segurança: Também rastreamos e monitamos eventos e atividades relacionadas à segurança para responder a ameaças e vulnerabilidades potenciais. O monitoramento pode ajudar você a detectar coisas como um ataque de DoS, identificando padrões incomuns no tráfego de entrada.
O que você monitora no ECS?
No monitoramento da nuvem, métricas são usadas para monitorar a saúde e o desempenho da infraestrutura. Elas são usadas em conjunto com dimensões. Métricas são os pontos de dados coletados e monitorados para medir o desempenho, saúde e uso de seus recursos e serviços na nuvem.
Dimensões são atributos e características que ajudam a filtrar, categorizar e dar contexto às métricas. Elas são representadas sob a forma de pares chave/valor.
A Amazon ECS fornece várias métricas para o monitoramento de recursos. Algumas delas incluem:
-
Reserva de CPU: Esta é a porcentagem de unidades de CPU reservadas por tarefas em execução.
-
Reserva de Memória: Porcentagem de memória reservada por tarefas em execução.
-
Utilização de CPU: Esta é a porcentagem de unidades de CPU utilizadas por tarefas em execução.
-
Utilização de Memória: Esta é a porcentagem de memória usada por tarefas em execução.
-
Instâncias de Container: Este é o número de instâncias de container no cluster.
-
Contagem de Tarefas em Execução: O número de tarefas que estão sendo executadas atualmente no cluster.
A Amazon ECS também fornece dimensões, algumas das quais são:
-
Nome do Container: O nome do container.
-
Nome do Cluster: O nome do cluster ECS.
-
ServiceName: O nome do serviço
-
ServiceNameSpace: O namespace usado para agrupar um conjunto de serviços em um cluster.
-
InstanceType: Isso se refere ao tipo de instância EC2 usada. Por exemplo: t2.micro, c4.large, r5.xlarge, e assim por diante.
-
TaskID: O identificador único atribuído a cada tarefa.
No AWS ECS, você pode monitorar seus recursos em diferentes níveis. Por exemplo, no nível do cluster, você pode olhar para coisas como CPUUtilization, CPUReservation, MemoryUtilization e MemoryReservation. No nível do serviço, você pode ver coisas como CPUUtilization e MemoryUtilization.
Como você monitora o ECS**?**
Você pode fazer isso usando:
Amazon CloudWatch: Este é um serviço de monitoramento da AWS que permite coletar, analisar e visualizar dados dos seus recursos AWS. Também ajuda você a configurar alarmes e ser notificado quando um limite é alcançado.
AWS Management Console: Você também pode visualizar as métricas do seu cluster ou serviço diretamente na console de gerenciamento.
A API do ECS: A API do ECS fornece acesso programático ao serviço ECS para que você possa usá-lo para criar, modificar e monitorar clusters e recursos fora da AWS.
Ferramentas de terceiros: Existem ferramentas de terceiros como Datadog, Prometheus e outras que podem ser usadas para monitorar essas métricas. Algumas funcionarão perfeitamente com a AWS, enquanto outras exigirão que você instale um agente.
Para monitorar o ECS em instâncias EC2, você tem acesso direto às instâncias EC2 subjacentes e pode usar ferramentas de monitoramento de servidor tradicionais para monitorar métricas no sistema operacional. No entanto, para o ECS no Fargate, você não tem acesso às instâncias EC2.
Como Monitorar Clusters ECS com o AWS CloudWatch
Com o AWS CloudWatch, você pode monitorar seus clusters ECS de várias maneiras, desde métricas até logs e configuração de alarmes. Neste guia, vou mostrar como usar os Painéis Automáticos para visualizar as métricas de cluster ECS. Para fazer isso, siga estes passos:
- Na Console de Gerenciamento da AWS, abra o CloudWatch e vá para Painéis na barra lateral.
- Clique na guia Painéis Automáticos.
- Clique em Cluster ECS. Isso o levará ao painel onde você verá as métricas pré-configuradas para seus clusters ECS.
Você também pode expandir métricas individuais.
Concluindo
Neste artigo, você aprendeu sobre monitoramento do ECS. Você aprendeu sobre as diferentes métricas que pode monitorar e como monitorá-las.
Por fim, você aprendeu como monitorar clusters ECS usando o AWS CloudWatch.
Obrigado por ler. Você pode se conectar comigo no LinkedIn ou me seguir no X.
Source:
https://www.freecodecamp.org/news/ecs-monitoring-explained-with-examples/