Desempenho

Histórico de carga do servidor: 24 horas, 7 ou 30 dias (recolha a cada 5 minutos)

Load Average (1m)
2.89
CPU
6.5%
RAM
29.5%
ESTABLISHED
77
Processos
5 / 426
Load Average
CPU
Memória
Rede (KB/s)
Disco I/O (KB/s)
Ligações TCP
Disco e limites (%)
MySQL
Processos na última medição 11:19
ProcessoCPU %RAM %
php-fpm 8.9 12.2
clamd 6.2 10.8
suricata 3.7 15.3
fail2ban-server 1.9 16.4
mysqld 1.1 14.8
Processos no pico do dia 12.10 09:44 · load 3.09
ProcessoCPU %RAM %
php-fpm 12.0 9.2
suricata 5.9 11.7
mysqld 4.2 8.0
crowdsec 2.6 15.9
clamd 1.4 19.0

Histórico de carga do servidor sem Prometheus nem Grafana

O top responde a uma pergunta sobre o segundo actual, ao passo que a pergunta que realmente se faz é sobre a noite passada: porque é que às três da manhã tudo parou e voltou sozinho. A essa altura já não há nada para ver, porque nada ficou registado. Instalar Prometheus e Grafana para um único VPS levanta um problema próprio: a pilha que observa pesa mais do que o servidor observado.

Um colector acrescenta uma linha à base de dados de cinco em cinco minutos, e esta página desenha a partir daí as últimas 24 horas. Load average, utilização do CPU com o I/O wait à parte, RAM e swap, tráfego de rede recebido e enviado, leituras e escritas de disco, ligações TCP estabelecidas, processos, ocupação da partição, inodes e descritores de ficheiro em percentagem do limite, ligações do MySQL. Tudo numa página e no mesmo eixo temporal, de modo que as coincidências se vêem a olho.

Estes gráficos lêem-se aos pares. Um I/O wait elevado com o CPU tranquilo significa que o servidor está à espera do disco, e acrescentar núcleos não ajudará. Uma swap que subiu uma vez e nunca regressou a zero diz que o pico de memória já aconteceu, por muito calmo que pareça agora. Descritores de ficheiro perto dos cem por cento são um too many open files com algumas horas de antecedência. E na maioria dos servidores os inodes esgotam-se bastante antes do espaço livre.