🐧 Guia de referência para sysadmins Linux. Este artigo agrega todos os procedimentos de diagnóstico de desempenho para VMs Linux, organizados por componente. Cada secção tem o seu artigo dedicado com comandos detalhados, interpretação de métricas e checklists prontas a usar — compatível com Debian, Ubuntu, RHEL, CentOS e Rocky Linux.

Compatível com as principais distribuições:

🟠 Debian
🟣 Ubuntu
🔵 RHEL
🟢 Rocky Linux
🟡 CentOS

Quando uma VM Linux apresenta lentidão — seja em aplicações, operações de disco, na rede ou no processamento geral — é essencial seguir uma metodologia estruturada. O diagnóstico improvisado leva a conclusões erradas. Este guia organiza as ferramentas nativas e de sistema para diagnóstico sistemático, da camada mais visível até ao kernel.

🎯 Os 4 comandos de arranque

Antes de abrir qualquer artigo específico, executar sempre estes comandos de baseline:

# Carga do sistema vs número de CPUs
uptime && nproc

# Estado geral — CPU, memória, swap e I/O
vmstat 1 5

# Top processos por CPU e memória
ps aux --sort=-%cpu | head -10

# Estado de disco e rede
df -h && ip -s link show
⚠️ Load Average: O valor de load average do uptime deve ser interpretado em relação ao número de CPUs (nproc). Um load average de 4.0 numa VM com 4 vCPUs significa saturação total — com 2 vCPUs seria crítico, com 8 seria normal.

📦 Instalar ferramentas essenciais

# Debian / Ubuntu
apt install -y sysstat iotop iftop net-tools dstat atop lsof strace mtr

# RHEL / CentOS / Rocky Linux
yum install -y sysstat iotop iftop net-tools dstat atop lsof strace mtr

# Ativar recolha histórica de dados (sar)
systemctl enable --now sysstat

📋 Artigos de diagnóstico por componente

CPU

Diagnóstico de CPU e Carga do Sistema

top, mpstat, vmstat, sar histórico, pidstat por processo, CPU steal em VMs e profiling com perf.

Ver artigo →

Memória

Diagnóstico de Memória RAM e Swap

Interpretação correta de buff/cache, análise de swap in/out, OOM Killer e processos com maior consumo.

Ver artigo →

Disco

Diagnóstico de Disco — I/O e Latência

iostat com interpretação de await e %util, iotop por processo, fio benchmark e smartctl.

Ver artigo →

Rede

Diagnóstico de Rede e Conectividade

ip -s link, ss, mtr, tcpdump, diagnóstico DNS com dig e parâmetros sysctl TCP.

Ver artigo →

Processos

Diagnóstico de Processos e Serviços

ps, strace por syscall, lsof, systemctl, journalctl e análise de prioridade com nice/renice.

Ver artigo →

Kernel

Diagnóstico de Kernel, Logs e Sistema

dmesg, journalctl, logs por distro, parâmetros sysctl, OOM, atop histórico e integridade de pacotes.

Ver artigo →

Ferramentas

Ferramentas Avançadas e Automatização

dstat all-in-one, eBPF/bpftrace, script de diagnóstico automático (.sh) e tabela completa de ferramentas.

Ver artigo →

📊 Limiares de referência rápida

Métrica ✅ Normal ⚠️ Atenção 🔴 Crítico
Load Average (1 min) < nº de CPUs = nº de CPUs > 2× nº de CPUs
CPU iowait (%wa) < 5% 5% – 20% > 20% sustentado
CPU steal (%st) em VMs < 1% 1% – 5% > 5%
RAM Available (VM 4 GB) > 500 MB 200 – 500 MB < 200 MB
Swap usage 0 – 10% 10% – 50% > 50% ou swap out > 0
Disco await (ms) < 10 ms 10 – 25 ms > 25 ms
Disco %util < 70% 70% – 90% > 90%
Disco aqu-sz (fila) < 1 1 – 3 > 3
Espaço livre em disco > 20% 10% – 20% < 10%
Inodes livres > 20% 5% – 20% < 5%
TCP retransmissões/s 0 < 5 > 5

✅ Checklist de arranque em 5 minutos

Fase 1 — Executar sempre em primeiro lugar

  • Confirmar sintomas com utilizador — quando, como, frequência, impacto
  • Verificar alterações recentes: updates de kernel, pacotes, cron jobs, deployments
  • uptime && nproc — load average vs número de CPUs
  • free -h — campo available (não free!)
  • df -h && df -i — espaço e inodes em todos os volumes
  • top -bn1 | head -20 — leitura visual imediata de CPU e processos
  • Verificar se apenas esta VM é afetada — escalar para hypervisor se necessário

🔗 Artigo relacionado

Trabalhas também com Windows? Consulta o artigo equivalente: Diagnóstico de Desempenho em VMs Windows.


Guia testado em Debian 12, Ubuntu 22.04 LTS, RHEL 9 e Rocky Linux 9.

Este artigo foi útil?

Duarte Spínola

Deixe um Comentário