Linux

O que monitorar em um servidor Linux

Métricas essenciais, ferramentas recomendadas e como configurar alertas que realmente importam em servidores Linux.

Por WSUL Tecnologia — 12 de fevereiro de 2025  ·  9 min de leitura

Métricas essenciais

Monitorar um servidor Linux é mais do que verificar se ele está "ligado". Um servidor pode estar respondendo ao ping enquanto o banco de dados não aceita conexões, o disco está 95% cheio ou a aplicação está consumindo 100% de CPU. Monitoramento eficaz cobre todas as camadas relevantes.

CPU

O uso de CPU em si raramente é o problema — o que importa é o contexto. Um servidor de banco de dados que sustenta 80% de CPU durante o dia pode ser normal. O mesmo percentual em um servidor web em horário de baixo acesso é sinal de alerta.

  • Load average: compare com o número de núcleos. Load de 4.0 em um servidor com 8 núcleos é aceitável; em um com 2 núcleos, é crítico.
  • iowait: CPU aguardando I/O de disco indica gargalo de armazenamento, não de processador.
  • Processos em estado D: processos em "uninterruptible sleep" apontam para problemas de I/O.

Memória

  • Monitore memória disponível (não apenas uso — o Linux usa memória livre como cache, o que é normal)
  • Alerte se o uso de swap for significativo e crescente — indica que a RAM está insuficiente
  • Monitore OOM killer events nos logs do sistema (dmesg | grep -i "oom")

Disco

  • Espaço disponível em todas as partições (especialmente /, /var, /tmp)
  • Inodes disponíveis — tão importante quanto o espaço em bytes
  • I/O wait e throughput (ferramentas: iostat, iotop)
  • Health do disco via S.M.A.R.T. para hardware físico

Rede

  • Tráfego de entrada e saída por interface
  • Erros e drops de pacote
  • Número de conexões estabelecidas (ss -s)
  • Latência para serviços externos críticos

Ferramentas recomendadas

Zabbix — monitoramento enterprise

O Zabbix é a ferramenta mais completa para ambientes corporativos. Suporta auto-discovery, templates para centenas de serviços, alertas configuráveis por múltiplos canais e dashboard com histórico.

# Instalar Zabbix Agent 2 no Ubuntu
wget https://repo.zabbix.com/zabbix/6.4/ubuntu/pool/main/z/zabbix-release/zabbix-release_6.4-1+ubuntu22.04_all.deb
dpkg -i zabbix-release_6.4-1+ubuntu22.04_all.deb
apt update && apt install -y zabbix-agent2
systemctl enable --now zabbix-agent2

Prometheus + Grafana — métricas e visualização

Ideal quando você quer dashboards bonitos e precisa monitorar métricas de aplicação além da infraestrutura. O Node Exporter coleta métricas do sistema operacional.

# Instalar Node Exporter
useradd -rs /bin/false node_exporter
wget https://github.com/prometheus/node_exporter/releases/latest/download/node_exporter-*.linux-amd64.tar.gz
# Extrair e configurar como serviço systemd

Uptime Kuma — disponibilidade HTTP

Para monitorar URLs, APIs e portas com uma interface visual simples. Self-hosted, gratuito, com notificações por Telegram, e-mail, Slack e outros.

Configurando alertas eficazes

O maior erro no monitoramento não é a ausência de alertas — é o excesso. Alert fatigue (fadiga de alertas) faz com que a equipe ignore notificações porque "sempre aparece isso". Configure alertas com critério:

  • Disco > 70%: alerta informativo — planejar limpeza
  • Disco > 85%: alerta prioritário — ação imediata necessária
  • Disco > 95%: crítico — serviços podem parar
  • CPU > 90% por 15 minutos: investigar processo
  • Serviço indisponível por 3 verificações consecutivas: crítico
  • Certificado SSL vence em 30 dias: alerta preventivo

Monitoramento de logs

Além das métricas de sistema, os logs contêm informações valiosas sobre falhas silenciosas. Configure o monitoramento para alertar em padrões críticos:

# Com tail e grep simples para testes
tail -f /var/log/syslog | grep -E "error|critical|failed|OOM"

# Com Zabbix log monitoring — adicionar ao arquivo de configuração do agente
LogFile=/var/log/auth.log

Ferramentas como Loki (do ecossistema Grafana) ou o módulo de log do Zabbix permitem centralizar e pesquisar logs de múltiplos servidores em um único lugar.

Monitoramento de serviços

Monitorar o processo rodando não é suficiente. Um processo pode estar ativo mas não funcional. Configure verificações de serviço que validam a resposta real:

  • Nginx/Apache: HTTP check na URL principal esperando código 200
  • MySQL/MariaDB: verificar conexão e executar query simples (SELECT 1)
  • Certificado SSL: verificar data de expiração e validade da cadeia
  • Backup: verificar se o arquivo do último backup existe e tem tamanho razoável

Conclusão

Um bom sistema de monitoramento é a diferença entre descobrir um problema às 3h da manhã por ligação de cliente, ou receber um alerta às 22h e resolver silenciosamente antes que alguém perceba. O segundo cenário é o que a WSUL entrega para todos os ambientes que gerencia.

Sua infraestrutura tem esses riscos?

Solicite um diagnóstico gratuito e descubra em quais pontos seu ambiente pode ser melhorado.