Kā jūs veiksiet servera problēmu novēršanas procedūru lielas slodzes gadījumā? Kādus rādītājus analizēsiet un kurus utilītus izmantosiet?
sobes.tech AI
Atbilde no AI
Sāksšu ar sistēmu metriku analīzi, lai identificētu iemeslus augstajai slodzei.
Galvenie rādītāji analīzei:
load average: vidējais procesu skaits, kas gaida izpildi. Augsts skaitlis norāda uz CPU pārslodzi vai gaidīšanu uz I/O.CPU utilization: procesora laika procentuālā izmantošana. Palīdz saprast, kura daļa CPU ir aizņemta ar lietotāja procesiem, sistēmas izsaukumiem vai ir brīva.Memory utilization: operatīvās atmiņas izmantošana. Augsta patēriņa gadījumā var rasties aktīva swapēšana, kas būtiski samazina veiktspēju.Disk I/O: lasīšanas/rakstīšanas operāciju intensitāte uz diskiem. Augsta aktivitāte var būt šaurs punkts.Network activity: izejošais un ienākošais trafiks, tīkla savienojumu skaits. Augsta slodze var būt saistīta ar tīkla problēmām vai DoS uzbrukumu.Process list: palaisto procesu saraksts, to resursu patēriņš, stāvoklis. Palīdz identificēt konkrētu procesu, kas rada slodzi.
Diagnostikas rīki:
-
top/htop: interaktīva sistēmas resursu un procesu uzraudzība reāllaikā. Ļauj kārtot procesus pēc CPU, atmiņas patēriņa u.c.# top -c // pilnas komandas rindiņas attēlošana -
vmstat: virtuālās atmiņas, procesu, CPU un I/O aktivitātes pārskats.# vmstat 1 // izvada katru sekundi -
iostat: disku ierīču aktivitātes un veiktspējas uzraudzība.# iostat -xz 1 // paplašināts disku un CPU izvads, katru sekundi -
netstat/ss: tīkla savienojumu, maršrutu, tīkla interfeisa statistikas informācija.# netstat -tunapl // TCP/UDP savienojumi, LISTEN soketi, porti, PID # ss -tunapl -
sar: sistēmas aktivitātes apkopošana, pārskati un analīze (CPU, atmiņa, disks, tīkls). Bieži izmanto vēsturiskās veiktspējas analīzei.# sar -u 5 5 // CPU ik pēc 5 sekundēm, 5 reizes # sar -d 5 5 // disks ik pēc 5 sekundēm, 5 reizes # sar -n DEV 5 5 // tīkls ik pēc 5 sekundēm, 5 reizes -
iftop/nethogs: interaktīva tīkla trafika uzraudzība pēc interfeisiem vai procesiem.# iftop -i eth0 // uzraudzība interfeisā eth0 # nethogs eth0 // trafika uzraudzība pēc procesu uz eth0 -
dstat: universāls rīks, kas apvieno vmstat, iostat, netstat iespējas.# dstat -c -m -d -n // CPU, atmiņa, disks, tīkls -
strace/lsof: sistēmas izsaukumu traucēšana un atvērto failu saraksts konkrētam procesam. Noder dziļākai analīzei.# strace -p <PID> // traucēšana pēc PID # lsof -p <PID> // atvērti faili pēc PID
Procedūra būs iteratīva: identificēju šaurās vietas, izmantojot metriku, izvēlos atbilstošu rīku detaļām, analizēju cēloni (piemēram, konkrētu procesu), veicu korektīvas darbības (piemēram, pārstartēt vai optimizēt lietojumprogrammu, palielināt resursus). Ir svarīgi arī pārbaudīt lietojumprogrammu žurnālus un sistēmas žurnālus (journalctl, /var/log/*).