Troubleshooting CPU: Difference between revisions

From Linux Wiki
Jump to navigation Jump to search
No edit summary
 
Line 48: Line 48:
&#32;# ethtool -G ens18 rx 4096 tx 4096 <span style="font-style: italic;color:#4d4d4d"># Optimizare la nivel de NIC</span>
&#32;# ethtool -G ens18 rx 4096 tx 4096 <span style="font-style: italic;color:#4d4d4d"># Optimizare la nivel de NIC</span>
</code>
</code>
Pentru a putea activa și porni serviciul irqbalance, pachetul trebuie mai întâi instalat.
Pentru a putea activa și porni serviciul irqbalance, pachetul trebuie mai întâi instalat.
<code class="mw-code mw-highlight plainlinks" style="display:block"><!--
<code class="mw-code mw-highlight plainlinks" style="display:block"><!--

Latest revision as of 19:10, 20 October 2026

CPU la 100% cauzat de un proces legitim[edit | edit source]

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[edit | edit source]

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

Remediere[edit | edit source]

# 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ă[edit | edit source]

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[edit | edit source]

# 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[edit | edit source]

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

CPU sufocat de întreruperi de rețea[edit | edit source]

Apare de obicei pe mașini virtuale cu trafic de rețea foarte intens (DB, HAProxy) unde CPU este încărcat cu procesearea pachetele de reţea.

Identificare[edit | edit source]

# watch -d -n 1 "cat /proc/interrupts" # arată care core/thread este încărcat de placa de reţea

Remediere[edit | edit source]

# systemctl enable --now irqbalance # Activarea irqbalance # ethtool -G ens18 rx 4096 tx 4096 # Optimizare la nivel de NIC

Pentru a putea activa și porni serviciul irqbalance, pachetul trebuie mai întâi instalat. # apt update && sudo apt install -y irqbalance # dnf install -y irqbalance