Cpu baixa load alto linux. Essa é a clássica “dor de cabeça” de quem administra servidores Linux. Ver o uso da CPU em 10% enquanto o Load Average marca 50.00 é um sinal claro de que o sistema está enfrentando um gargalo, mas não de processamento puro.
O Load Average não mede apenas o que a CPU está fazendo, mas sim o número de processos na fila de execução (R) somado aos processos em estado de espera ininterrupta (D).
Aqui está um roteiro técnico para diagnosticar e resolver esse cenário:
1. O Suspeito Principal: I/O Wait (Disco ou Rede)
Se a CPU está baixa e o load está alto, 90% das vezes o problema é I/O Wait. O processador está “ocioso”, mas está parado esperando que o disco ou a rede responda para completar uma tarefa.
Como identificar:
Use o comando top ou iostat. Olhe para a métrica %wa (I/O Wait).
- Se
%waestiver acima de 10-15%, seu disco é o gargalo. - Causas comuns: Backups rodando, swap excessivo, banco de dados (MariaDB) realizando muitos “Disk Reads” por falta de índices.
2. Processos em Estado “D” (Uninterruptible Sleep)
Processos nesse estado estão esperando por hardware (geralmente E/S de disco ou sistemas de arquivos de rede como NFS). Eles contam para o Load Average, mas não consomem ciclos de CPU.
Como identificar:
Execute:
ps -eo state,pid,cmd | grep "^D"
Se você vir muitos processos com o estado D, você encontrou a origem do Load Alto.
3. O Fator MariaDB/MySQL
Em ambientes com DirectAdmin ou cPanel, o MariaDB costuma ser o culpado silencioso. Se o innodb_buffer_pool_size estiver mal configurado, o servidor fará leituras constantes no disco em vez de ler da RAM.
O que verificar:
- Slow Queries: Consultas sem índices travam a tabela.
- Ajuste Fino: Se você tem 32GB de RAM, seu Buffer Pool deve ocupar cerca de 70-80% disso se o servidor for dedicado ao banco.
4. O Gargalo de Rede / NFS
Se você utiliza montagens externas (NFS, S3FS) ou se o seu storage é remoto, uma latência na rede pode fazer com que o kernel coloque os processos em espera. A CPU fica livre, mas a fila de processos só aumenta.
Comandos Essenciais para o Diagnóstico
| Comando | O que observar |
uptime | Verifica a tendência do Load (1, 5 e 15 min). |
vmstat 1 | Coluna b (processos bloqueados) e wa (wait). |
iotop -o | Mostra exatamente qual processo está escrevendo/lendo no disco agora. |
htop | Veja se as barras de CPU estão cinzas (I/O Wait) ou vermelhas (Kernel). |
Como resolver na prática?
- Otimização de Disco: Se estiver usando HDD, migre para NVMe. Se já estiver em NVMe, verifique o agendador de I/O (
mq-deadlineounone). - Sysctl Tuning: Ajuste o
vm.swappinesspara 10 para evitar que o Linux use o disco como RAM prematuramente. - MariaDB Tuning: Use ferramentas como o
mysqltuner.plpara ajustar os buffers. - Verifique o CloudLinux (se aplicável): Se estiver usando LVE, o Load alto pode ser reflexo de limites de IOPS atingidos por um usuário específico, segurando os processos na fila.

