Rivedi i processi sul tuo server
Tutto ciò che viene eseguito sul server (email, cron job, mysql, siti) utilizzerà CPU e memoria. È importante rivedere i processi in esecuzione sul server quando si verificano problemi di lentezza o intermittenti. Questo ti aiuterà a determinare la causa e ti indicherà come risolverla in modo che i tuoi siti funzionino normalmente.Perché dovrei rivedere i processi?
- L'utilizzo della memoria o della CPU è elevato sul server.
- Un backup o un'altra attività pianificata viene eseguita più a lungo del normale.
- Uno o più siti stanno registrando tempi di caricamento più lenti del normale.
- Le attività (come l'accesso a un sito) richiedono molto tempo.
- Ricevi errori e/o timeout durante l'esecuzione di un'attività.
Come posso rivedere i processi?
Userai top e ps per indagare sul tuo server. Il comando top mostra una visualizzazione in tempo reale dei dettagli sul tuo server Linux. Il comando ps elenca i processi in esecuzione.
Se esegui top M , vedrai un output simile a questo:
[root@server ~] $ top M top - 12:39:25 su 300 giorni, 3:15, 2 utenti, caricamento medio: 0,06, 0,07, 0,08 Attività: 437 totali, 1 in esecuzione, 432 inattivo, 0 interrotto, 4 CPU zombi: 0,6%usa, 2.2%s y, 0,8%ni, 96,2%id, 0,2%wa, 0,0%hi, 0,0%s io, 0,0%s t Mem: 31.237G totali, 12.921G usati, 18.316G liberi, 361.410M di buffer Swap: 8191.996M totali, 23.781M usati, 8168.215M liberi, 5107.738M PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 4425 radice 20 0 393m 11m 4436 S 6.0 0.0 7776: 50 pvaagentd 2931 td-agent 20 0 2590m 330m 2272 S 1.0 1.0 2233: 30 rubino 108702 radice 20 0 2394m 46m 10m S 0.7 0.1 0: 22.20 TaniumClient 21 radice 20 0 0 0 0 S 0.3 0.0 690: 42.23 eventi/2
Ci sono vari interruttori che puoi usare con top per cambiare il layout dei dati. Per un elenco completo dei tasti di scelta rapida, usa man top in SSH.
Se esegui ps fauxx , vedrai un output simile a questo:
PID UTENTE %CPU %MEM VSZ RSS STATO TTY COMANDO ORA INIZIO root 1 0.0 0.0 10372 752? Ss Feb06 0:15 init [3] radice 1412 0,0 0,0 5924 624? Ss Feb06 0:02 syslogd -m 0 dbus 1421 0,0 0,0 21276 1064? Ss Feb06 0:00 dbus-daemon-root di sistema 1930 0,0 0,0 20888 1184? Ss Feb06 0:04 radice crond 22304 0,0 0,0 12800 788? Ss Feb06 0:00 /sbin /udevd -d root 22224 0,0 0,0 10788 1344? S 14 feb 0:00/bin/sh/usr/bin/mysqld_safe mysql 22421 0.0 3.7 522976 70492? Sl 14 feb 8:42 \ _/usr/libexec/mysqld root 23576 0,0 0,0 21668 976? Ss Feb14 0:01 xinetd -stayalive -pidfile /var/run/xinetd.pid qmails 28232 0,0 0,0 3868 472? S Feb14 0:00 qmail-send qmaill 28234 0,0 0,0 3820560? S 14 feb 0:00 \ _ splogger qmail
Ci sono vari interruttori che puoi usare con ps per cambiare il layout dei dati. Per un elenco completo dei tasti di scelta rapida, usa man ps in SSH.
Altre varianti utili:
Principali utenti di CPU:
ps -e -o pcpu, args --sort -pcpu | capo -10
Principali utenti di RAM:
ps -o pid, utente,%mem, comando ax | ordina -b -k3 -r | capo -10
I 10 migliori processi di consumo della memoria:
ps auxx | ordina -nk +4 -r | testa
Passaggi successivi
Una volta individuato un processo problematico (come un backup sospeso), potrebbe essere necessario eliminarlo per liberare risorse.
Per terminare un processo:
kill -9 PID
Per terminare tutti i processi per utente (come più processi cron):
pkill -u nome utente
Per un elenco completo dei tasti di scelta rapida, usa man kill o man pkill in SSH.
Se riscontri problemi frequenti con processi imprevisti, rivedi i registri del server per individuare e risolvere il problema.