Hogyan végzi el a hibaelhárítási folyamatot a szerveren magas terhelés esetén? Milyen mutatókat fog elemezni és milyen segédprogramokat fog használni?
sobes.tech MI
Válasz az MI-től
Kezdem a rendszermetrikák elemzésével a magas terhelés okainak feltárásához.
Fő mutatók elemzéshez:
load average: átlagos folyamatok száma, amelyek várakoznak a végrehajtásra. Magas érték CPU túlterhelést vagy bemenet-kimenet várakozást jelez.CPU utilization: a processzoridő felhasználási százaléka. Segít megérteni, hogy a CPU mely része van foglalva felhasználói, rendszerhívások vagy üres állapotban.Memory utilization: a RAM használata. Magas fogyasztás aktív swap-hoz vezethet, ami jelentősen csökkenti a teljesítményt.Disk I/O: olvasási/írási műveletek intenzitása a lemezeken. Magas aktivitás szűk keresztmetszet lehet.Network activity: kimenő és bejövő forgalom, hálózati kapcsolatok száma. Magas terhelés hálózati problémákra vagy DoS támadásra utalhat.Process list: futó folyamatok listája, erőforrás-felhasználásuk, állapotuk. Segít azonosítani a terhelést okozó konkrét folyamatot.
Diagnosztikai eszközök:
-
top/htop: interaktív rendszer- és folyamatfigyelő valós idejű adatokkal. Lehetővé teszi a folyamatok szortírozását CPU, memória szerint.# top -c // teljes parancssor megjelenítése -
vmstat: virtuális memória, folyamatok, CPU és bemenet-kimenet aktivitás jelentése.# vmstat 1 // másodpercenkénti kiadás -
iostat: lemezaktivitás és teljesítmény figyelése.# iostat -xz 1 // részletes kiadás másodpercenként -
netstat/ss: hálózati kapcsolatok, útvonalak, hálózati interfészek statisztikái.# netstat -tunapl // TCP/UDP kapcsolatok, LISTEN socketek, portok, PID # ss -tunapl -
sar: rendszer aktivitás gyűjtése, jelentése és elemzése (CPU, memória, lemez, hálózat). Gyakran használják történeti teljesítmény elemzésére.# sar -u 5 5 // CPU 5 másodpercenként, 5 alkalommal # sar -d 5 5 // lemez 5 másodpercenként, 5 alkalommal # sar -n DEV 5 5 // hálózat 5 másodpercenként, 5 alkalommal -
iftop/nethogs: interaktív hálózati forgalom figyelése interfészek vagy folyamatok szerint.# iftop -i eth0 // eth0 interfész figyelése # nethogs eth0 // forgalom figyelése folyamatok szerint az eth0-n -
dstat: univerzális eszköz, amely ötvözi a vmstat, iostat, netstat lehetőségeit.# dstat -c -m -d -n // CPU, memória, lemez, hálózat -
strace/lsof: rendszerhívások nyomon követése (strace) és nyitott fájlok listázása (lsof) adott folyamat számára. Mélyebb alkalmazás viselkedés elemzéséhez.# strace -p <PID> // folyamat nyomon követése PID szerint # lsof -p <PID> // nyitott fájlok listázása PID szerint
A folyamat iteratív lesz: a metrikák alapján szűk keresztmetszetet azonosítok, a megfelelő eszközt használom a részletes elemzéshez, az okot elemzem (pl. konkrét folyamat), és korrekciós lépéseket teszek (pl. újraindítás vagy alkalmazás optimalizálása, erőforrások növelése). Fontos a alkalmazás- és rendszerlogok ellenőrzése (journalctl, /var/log/*).