~/questoes/devops
Para gerenciar eficientemente um cluster Kubernetes, é fundamental coletar e visualizar métricas de consumo de recursos como CPU e memória. Prometheus e Grafana formam a dupla essencial dessa tarefa: Prometheus coleta as métricas do cluster, enquanto Grafana transforma esses dados em dashboards visuais e intuitivos.
Prometheus e Grafana são as ferramentas padrão de observabilidade em Kubernetes. Prometheus funciona como agente coletor de métricas, scrapeando endpoints dos pods e nós continuamente, enquanto Grafana consome esses dados para criar dashboards visuais que facilitam a análise de trends, alertas e anomalias de performance.
Elasticsearch e Kibana são excelentes para análise centralizada de logs de aplicações, mas não são as ferramentas primárias para coletar e visualizar métricas de recursos do cluster. Logs e métricas são conceitos diferentes: logs registram eventos, enquanto métricas medem valores contínuos como CPU e memória.
Docker Compose e kubectl logs são úteis para diagnóstico manual de containers, mas não oferecem coleta automatizada e visualização estruturada de métricas. Além disso, `kubectl logs` acessa apenas logs da aplicação, não métricas de consumo de recursos do sistema.
Jenkins e GitLab CI são ferramentas de CI/CD focadas em automação de deploy e testes, não em coleta contínua de métricas de recursos. Embora possam disparar alertas baseados em eventos, não são sistemas de monitoramento de performance do cluster.
Prometheus coleta métricas em tempo real dos componentes do Kubernetes (nós, pods, kubelet), armazenando-as em séries temporais. Grafana consulta esses dados do Prometheus e cria dashboards ricos, permitindo visualizar CPU, memória, rede e outros recursos de forma clara e responsiva.