Troubleshooting CPU

From Linux Wiki
Jump to navigation Jump to search

CPU la 100% cauzat de un proces legitim

Este cea mai comună situație. Un server web (Nginx/Apache), un proces Java (Tomcat/Elasticsearch) sau un script PHP/Python buclează la infinit și consumă tot procesorul.

Identificare

# ps aux --sort=-%cpu | head -n 11

Remediere

# kill -15 <PID> # Graceful kill # kill -9 <PID> # Hard kill

Dacă procesul este important dar vrei să nu mai sufoce serverul, îi scazi prioritatea (crești valoarea nice de la 0 la 19): # renice -n 15 -p <PID>

Load Average foarte mare, dar utilizarea CPU mică

Vezi un "Load Average" de 20 sau 50, dar în top/htop procesorul pare că stă degeaba (stare "wa" sau "iowait"). CPU nu lucrează, ci așteaptă după un disc lent, o conexiune de rețea (NFS/CIFS storage) sau un drive blocat.

Identificare

# ps -eo pid,ppid,state,cmd | grep " D " # vezi procesele blocate în "Uninterruptible Sleep" # mpstat 1 5 # urmărește coloana %iowait # iotop -o # verifică ce proces generează "I/O block"

Remediere

Identificare # umount -f -l /path/to/mount # umount NFS/CIFS blocat