Métricas de utilização de recursos

Visualizando as métricas e a utilização de recursos no Docker

Posted by Diego Aquino on March 18, 2024 · 3 mins read

Visualizando as métricas e a utilização de recursos no Docker

Para garantir o desempenho ótimo e a eficiência na gestão de contêineres Docker, é essencial monitorar as métricas e o uso de recursos de forma eficaz. O Docker vem equipado com uma série de comandos e ferramentas integradas destinadas a auxiliar nesta tarefa, fornecendo dados valiosos sobre o consumo de CPU, memória, utilização da rede e I/O de disco. Além das soluções nativas, existem também ferramentas de terceiros que expandem essas capacidades, oferecendo insights mais aprofundados e dashboards para monitoramento avançado. Neste artigo, vamos explorar algumas das principais opções disponíveis para monitoramento de contêineres Docker.

1. Utilizando o Comando docker stats

O comando docker stats permite visualizar em tempo real as estatísticas de uso de recursos dos contêineres. Ele fornece informações detalhadas, incluindo:

  • Uso de CPU em porcentagem: Quanto da capacidade de CPU está sendo utilizada pelo contêiner.
  • Uso de memória: A quantidade de memória usada pelo contêiner, tanto em termos absolutos quanto em porcentagem do total disponível.
  • I/O de rede: Os dados de entrada e saída através da rede pelo contêiner.
  • I/O de bloco (disco): A atividade de leitura e escrita no disco pelo contêiner.

Para visualizar essas métricas, basta executar:

docker stats

Para monitorar contêineres específicos, você pode incluir seus nomes ou IDs:

docker stats contêiner1 contêiner2

2. Detalhes com docker inspect e Métricas de Uso

Embora o docker inspect seja mais conhecido por fornecer informações de configuração e estado estático dos contêineres, ele também pode ser usado para acessar algumas métricas de uso, através de:

docker inspect --format='' contêiner_id

Vale ressaltar que docker inspect não fornece dados em tempo real, mas é útil para obter detalhes específicos ou informações de configuração.

3. Capturando "Snapshots" com docker stats --no-stream

Para quem necessita de um relatório pontual do estado dos contêineres, sem o fluxo contínuo de dados, o comando docker stats vem com a opção --no-stream:

docker stats --no-stream

Isso é particularmente útil para scripts de automação ou quando se deseja um snapshot do uso de recursos em um momento específico.

Conclusão

Monitorar a utilização de recursos é um pilar crucial na gestão de contêineres Docker, impactando diretamente no desempenho e na eficiência dos mesmos. Ferramentas integradas como docker stats e docker inspect oferecem funcionalidades básicas de monitoramento, enquanto soluções avançadas de terceiros, como cAdvisor, Prometheus e Grafana, permitem análises mais profundas e a visualização de métricas ao longo do tempo. Essas ferramentas não só ajudam a identificar oportunidades de otimização como também garantem a manutenção da saúde e performance dos contêineres em ambientes de produção.