14 Parancssori eszközök a CPU használatának ellenőrzésére Linuxban

A CPU teljesítménye az egyik szempont a egy rendszer teljesítménye. A CPU teljesítményének nyomon követése elengedhetetlen a folyamatok hibakereséséhez bármely rendszeren belül, a rendszer erőforrásainak kezeléséhez, a rendszer döntéseinek meghozatalához, valamint a rendszerek valós idejű értékeléséhez és vizsgálatához. CPU teljesítmény. Az operációs rendszerek beépített rendszerhívásokkal rendelkeznek, amelyekre ezek az eszközök támaszkodnak a teljesítményértékek kivonásához.

Ebben az oktatóanyagban a legjobb CPU-használatfigyelő eszközt és azok felhasználását fogjuk feltárni minden Linux-alapú disztribúcióban.

1) Felső

A felső parancs valós idejű képet jelenít meg a rendszer összes futó folyamatának teljesítményével kapcsolatos adatokról. Alapértelmezés szerint a felső parancs 5 másodpercenként frissíti az adatokat. Írja be a terminál “top” parancsát a rendszer teljesítményével kapcsolatos statisztikai adatok megtekintéséhez.

 # top

A top parancs kimenetének módosításához nyomja meg a következőt:

“P” a CPU használat szerinti rendezéshez.

“I” az alapjárati folyamatok eltávolításához a kijelzőről és a visszatéréshez nyomja meg ismét az “I” gombot.

“M” az adatok memóriahasználat szerinti rendezéséhez.

“S” a folyamatok típusa szerinti rendezéshez.

“P” a CPU-használat szerinti rendezéshez.

“U” egy adott felhasználó tulajdonában lévő folyamatok megtekintéséhez.

“K” a folyamatok leöléséhez.

“R” a folyamatok átnevezéséhez.

2) Iostat

Az iostat parancs felsorolja a CPU kihasználtságát, eszközhasználatát és hálózati fájlrendszer-kihasználtságát. Ez a segédprogram megjeleníti a CPU átlagos kihasználtságát az utolsó újraindítás óta. A következő parancs opciók nélküli futtatása megjeleníti a három jelentést.

 # iostat

Az egyes jelentések felsorolásához használja a -c, -d és -h kapcsolókat a CPU használatához. , eszközhasználat és hálózati fájlrendszer-kihasználás. A következő parancs a CPU-k felhasználását felhasználói folyamatokra, rendszerfolyamatokra, I / O várakozásra és üresjárati időre bontja.

 # iostat -c

A következő parancs kiterjesztett statisztikákat jelenít meg ( -x), az egyes jelentések számát (-t) kell megjeleníteni a CPU kihasználtságához (-c).

 # iostat -xtc 5 2

3) Vmstat

Az vmstat parancs statisztikákat jelenít meg a rendszer folyamatairól, a memóriáról, a swapról, az I / O-ról és a CPU teljesítményéről. A statisztikák megjelenítéséhez az adatokat a parancs legutóbbi futtatásától a jelenig gyűjtik. Abban az esetben, ha a parancs soha nem fut, az adatok az utolsó újraindítástól az aktuális időig fognak tartani.

Több CPU rendszeren a vmstat átlagolja a kimenet CPU -inak számát. Az vmstat parancs frissíti a kimenetét, mint a top parancs.

A következő parancs 5 másodpercenként frissíti a jelentését, amíg meg nem szakad.

 # vmstat 5

A következő parancs megjeleníti azokat az adatokat, amelyek 5 másodpercenként frissülnek, és az értékeket 1 másodpercenként újra mérik és jelentik.

 # vmstat 1 5

Az első sor az átlagértékeket írja ki a számítógép legutóbbi újraindítása óta. A többi sor a mindenkori aktuális értékeket jeleníti meg. Egy normál felhasználó futtathatja az vmstat parancsot.

4) Mpstat

Az Mpstat a sysstat csomag része a Linuxban. Az mpstat parancs az összes rendelkezésre álló processzor tevékenységéről ír szabványos kimenetre, az első a 0 processzor. Ha nincs kiválasztva tevékenység, akkor az alapértelmezett jelentés a CPU kihasználtsági jelentés.

Az mpstat opció nélkül megjeleníti az összes CPU globális átlagos tevékenységét

 # mpstat

mpstat -p opcióval és az “ALL” 0-tól kezdve egyenként felsorolja az összes CPU statisztikáját.

 # mpstat -P ALL

A következő parancs sorolja fel az átlagos CPU-használat négyszeresét, mindegyik 2 másodperc után.

 # mpstat -P ALL 2 4

5) Sar

A sar teljesítményfigyelő eszköz teljesítményadatok összegyűjtése, megtekintése és rögzítése, és felsorolhatja, hogy a rendszer folyamatosan mit csinál. A Sar parancs jelentést generálhat és e-mailt küldhet a rendszergazdának. A sar által közölt statisztikák tartalmazzák többek között az I / O átviteli sebességet, a személyhívási tevékenységet, a folyamathoz kapcsolódó tevékenységeket, a megszakításokat, a hálózati aktivitást, a memória és a cserehely kihasználtságát, a CPU kihasználtságát, a kerneltevékenységeket és a TTY statisztikákat. Futtassa a sar-t minden opció nélkül, és ellenőrizze a kimenetet. Az alapértelmezett kimeneti lista statisztikák 10 percenként és egy végső átlag.

 # sar

A CPU statisztikáinak megjelenítése háromszor, 2 másodperces intervallummal.

 # sar 2 3

A következő parancs az összes CPU összesített valós idejű CPU-használatát jeleníti meg 2 másodpercenként, összesen háromszor.

 # sar -u 2 3

A “-P ALL” opció az egyes magok statisztikáit jeleníti meg. Ha a rendszernek 4 magja van, akkor a “CPU oszlop” a 0, 1, 2, 3 számot fogja tartalmazni, jelezve a megfelelő CPU magszámokat.A “2 3” opció 3 másodpercenként 2 másodpercenként megjeleníti a statisztikákat.

 # sar -P ALL 2 3

A “-P 2” opció 2 másodpercenként megjeleníti a harmadik mag statisztikáit. 3 alkalommal.

 # sar -P 2 2 3

6) CoreFreq

A CoreFreq egy Intel processzorokhoz tervezett 64 bites processzorokhoz tervezett processzor teljesítményfigyelő szoftver Atom, Core2, Nehalem, SandyBridge és felsőbbrendű, AMD Family. A CoreFreq keretet biztosít a CPU-adatok nagy pontosságú lekéréséhez. A kernelmodul, a démon és a userland parancssori felület (CLI) a Corefreq három része. A kernelmodul teljes hozzáféréssel rendelkezik a gazdagéphez. Feladata az alacsony szintű adatok összegyűjtése. A userland démon összegyűjti az adatokat. A démon futtatásához root felhasználónak kell lennie. Végül a CoreFreq egy terminál interfésszel érkezik, amely az emberek számára szépen olvasható formátumban jelenti az adatokat. Ez a CLI eszköz egy hétköznapi folyamat, és a végfelhasználó is használhatja.

Előfeltétel

i) A CoreFreq az alacsony szintű számlálót használja, ezért először ki kell kapcsolnia az NMI watchdogot a / etc / default / grub. Szerkessze az / etc / default / grub fájlt, és adja hozzá az “nmi_watchdog = 0” rendszermag parancssori argumentumot, majd futtassa az update-grub parancsot.

 # vi /etc/default/grub
 .................... .................... GRUB_CMDLINE_LINUX="nmi_watchdog=0" .................... ....................
 # update-grub && reboot

ii) Nincs virtualizáció. A virtuális gépek nem biztosítanak hozzáférést a CoreFreq illesztőprogram által használt nyilvántartásokhoz.

A CoreFreq telepítése

A kernelmodul telepítése az insmod

 # sudo insmod corefreqk.ko

Sorolja fel a CoreFreq modult az lsmod

 # lsmod | grep corefreq corefreqk 49152 0

A dmesg parancs kimenetéből kiderül, hogy a processzor felismerte a CoreFreq-et.

 # sudo dmesg | grep CoreFreq CoreFreq: Processor Architecture CPU 

Indítsa el a CoreFreq démont

 # sudo ./corefreqd -i &

Most indítsa el a corefreq klienst felhasználóként.

 # ./corefreq-cli

7) Htop

A Htop egy folyamatnézegető és szöveges módú alkalmazás a rendszer valós idejű felügyeletéhez, mint a top. A futó és könnyen használható folyamatok listája. Alapja a terminálon futó GUI-szerű környezetben a folyamatok megtekintésére szolgáló ncurs-ek. A Htop megjeleníti a CPU-nkénti felhasználást, a memóriát és a cserehasználatot, jelentős szöveggrafikával kinyomtatva a tetején. A Htop használata nagyon kényelmes és könnyen érthető. Miután elkezdte használni a HTOP-t, y Lehet, hogy nem tér vissza a TOP-ra.

Telepítse a htopot a következő paranccsal a terminálba.

 # sudo apt-get install htop

A htop futtatásához használja a következő parancsot.

 # htop

8) Nmon

nmon (Nigel performance Monitor Linux rendszerhez & AIX) az IBM alkalmazottja, Nigel Griffiths fejlesztette ki. Ezt az eszközt olyan rendszererőforrások figyelésére használják, mint a CPU, a memória, a hálózat, a lemezek, a fájlrendszerek, az NFS, a terminál legfelső folyamatai. Az NMON különféle architektúrákat támogat, mint a POWER, x86, x86_64, Mainframe és ARM (Raspberry Pi). Ez az eszköz segít a rendszergazdának a teljesítményadatok hangolásában, összehasonlításában a CPU / rendszer teljesítményének elhárításához, ha vannak problémák. A valós idejű megfigyeléshez az átokkönyvtárat használja a CPU alacsony hatásához, és statisztikákat jelenít meg a képernyőn, és két másodpercenként frissíti. Az nmon kevesebb CPU-memóriát fogyaszt, mint más eszközök, mivel az átokkönyvtárat használja.

Telepítés

 # sudo apt-get install nmon (Ubuntu) # sudo yum install nmon (CentOS)

A CentOS felhasználóknak telepíteniük / engedélyezniük kell EPEL adattár az nmon telepítéséhez.

Írja be az nmon szót a terminálba, és nyomja meg az Enter billentyűt. Ha meg szeretné jeleníteni a CPU kihasználtságát, nyomja meg a c gombot, és a CPU kihasználtsági widgetek statisztikájának elrejtéséhez nyomja meg ismét a “c” gombot.

9) Pillantások

A Glances egy platformon átkú alapú, Pythonban írt megfigyelő eszköz, amely a psutil könyvtár segítségével használja az adatok lekérését a rendszerből. Pillantásfigyelő CPU, Átlagos terhelés, Memória, Hálózati interfészek, Lemez I / O, Folyamatok és fájlrendszer terek kihasználása.

Telepítse a pillantásokat a rendszerébe a következő paranccsal.

Ubuntuban :

 # sudo apt-get install glances

Centos-ban:

 # sudo yum install glances

A Pillanatokat 3 módban futtathatja-

1. Önálló

Ha figyelni szeretné a helyi gépét (önálló), egyszerűen futtassa a

 # glances

2 parancsot. Ügyfél / kiszolgáló

Ha távolról szeretné figyelni a gépet, akkor hajtsa végre a következőket a kiszolgálón.

 # glances -s

majd az ügyféltől , hajtsa végre a következő parancsot.

 # glances -c @server

ahol a @szerver a kiszolgáló IP-címe vagy hosztneve.

3. Webszerver

Futtassa a pillantásokat webkiszolgáló módban a következő parancs végrehajtásával a terminálban.

 # glances -w Glances web server started on http://0.0.0.0:61208/

A fájl frissítési gyakoriságának megváltoztatása oldalon, csak adja meg a pontot másodpercek alatt az URL végén. Például az oldal 30 másodpercenként történő frissítéséhez csatoljon 10-et a böngészőből a kiszolgáló URL-jéhez.

 http://@server:61208/30

10) Cpustat

A Cpustat is mint egy divatos felső, amely különböző dolgokat csinál. A legtöbb teljesítményeszköz átlagos CPU-használatát néhány másodperc vagy akár egy perc alatt elvégzi. Ez a kapacitásfelesleg fantáziáját eredményezi az erőforrás-felhasználás hirtelen növekedése miatt, amely kevésbé elfoglalt időszakokkal keveredik össze. Másrészről, a cpustat magasabb frekvenciájú mintákat vesz az egyes folyamatokból, és ezeket a mintákat alacsonyabb frekvencián foglalja össze. Például mérhet egy folyamatot 200 ms-onként, és 5 másodpercenként összefoglalhatja a mintákat, beleértve a metrikák min / átlag / max értékeit is.

A Cpustat telepítése

A Cpustat be van írva Go nyelven. Ezért GO-ra van szüksége a rendszerében. Ha nincs, telepítse a terminál következő parancsainak használatával.

Ubuntu

 # sudo add-apt-repository ppa:longsleep/golang-backports # sudo apt-get update # sudo apt-get install golang-go

CentOS-ban

 # yum install golang

Ha a Golang telepítve van a rendszeredbe, akkor hozz létre egy könyvtárat a Cpustat számára, és tedd elérhetővé ezt a könyvtárat a GOPATH számára.

 # mkdir cpustat # export GOPATH=$HOME/cpustat

Telepítse a Cpustat alkalmazást, és ellenőrizze, hogy a könyvtárak át vannak-e másolva a cpustat mappába.

 # go get github.com/uber-common/cpustat # cd cpustat && ls

Adjon hozzá bin mappát a PATH környezeti változóhoz. A következő sort hozzáadhatja a ~ / .bashrc vagy az / etc / profilhoz is, attól függően, hogy mit használ.

 # export PATH=$PATH:/root/cpustat/bin

Ennek kétféle megjelenítési módja van adat. Vagy az összesítési intervallum tiszta szöveges listája, vagy az egyes minták színes görgető irányítópultja. Az adatok képzeletbeli terminál módban történő megjelenítéséhez hajtsa végre a következő parancsot a terminálban.

 # cpustat -t

Tiszta szöveges módban történő futtatáshoz használja a következő parancsot. Szöveges módban kevés rendszerszintű összefoglaló mutató származik a / proc / stat könyvtárból.

 # cpustat

A következő parancs 500 ms-onként minden folyamatból mintát vesz. 10 minta után összesítse ezeket az adatokat, ez 5 másodpercenként történik.

 # cpustat -s 500 -s 10 -n 20

A következő paranccsal mérheti a felhasználói gyökér vagy a felhasználói ubuntu tulajdonában lévő folyamatokat. A rendszer általános statisztikáit továbbra is mérni fogjuk.

 # cpustat -u root, ubuntu

Csak az “apache” vagy a “mysql” folyamatait mérjük. A cpustat -p opciója felsorolja a pgrep által visszaadott folyamatazonosítókat. A pgrep a folyamatazonosítók (-d opció) lekérésére szolgál.

 # cpustat -p $(pgrep -d, apache2\|mysqld)

A következő paranccsal írja be a memóriaprofilt egy fájlba.

 # cpustat -memprofile test.txt

11) perf

A Perf képes megmérni a Linux kerneljében található CPU teljesítményszámlálókat, nyomkövetési pontokat, kprobesokat és uprobokat az tools / perf alatt. A perf a teljesítményszámlálók alrendszer Linuxos használatának eszközeként kezdődött, és számos fejlesztéssel rendelkezik a nyomkövetési képességek hozzáadásához. A perf eszközök a 2.6-os verzió óta vannak integrálva a Linux kerneljébe, és a perf events alrendszeren alapulnak. A tökéletes profilozó hardver számlálókat használ az alkalmazás profilozásához. Ennek a profilozónak az eredménye egyértelmű és gyors. A tökéletes segédprogram megtalálható a linux-tools csomagban.

Measure entire system for 10 seconds using perf.
 # perf stat -a -- sleep 10

Ha érdekel egy CPU teljesítményének meghatározása egy adott” parancsnál “, például a cp-nél. A következő perf parancs a cp profilját végzi, miközben a teljes Dokumentum könyvtárat új helyre másolja (Dokumentumok).

 # perf stat cp -r Documents/ Docs

Ha a egy megadott PID, majd a CTRL + C megnyomásáig használja a következő parancsot.

 # perf stat -p 2087

Keresse meg az alapszintű CPU-statisztikákat 10 másodpercig, egész rendszeren át, a következő paranccsal. parancs. Az -e opció bármelyikének opcióját elhagyhatja, hogy pontosabb legyen.

 # perf stat -e cycles,instructions,cache-references,cache-misses,bus-cycles -a sleep 10

Gyűjtsön mintákat a CPU-n 5 másodpercig, majd használja a perf jelentést a jelentés megtekintéséhez.

 # perf record -e cycles:u -a -- sleep 5 # perf report

Gyűjtsön mintákat a CPU verem nyomaiból, minden 10 000 1. szintű adatgyorsítótár hiányzása után, 5 másodpercig, majd használja a perf jelentést a jelentés megtekintéséhez.

 # perf record -e L1-dcache-load-misses -c 10000 -ag -- sleep 5 # perf report

12) tiptop

A Tiptop elolvassa a hardver teljesítményszámlálóit és statisztikákat jelenít meg a futó Linux folyamatokról, például az IPC-ről , vagy a gyorsítótár hiányzik. Dinamikus, valós idejű képet nyújt a rendszerben futó feladatokról. A Tiptop nagyon hasonlít a tetejére, de a megjelenített információk hardverpultokról származnak.

Két futási módja van, az élő mód és a kötegelt mód. Mindkét módban a rendszer rendszeresen lekérdezi a hardver számlálók értékeit, és az egyes feladatokhoz különféle arányokat nyomtatnak.

13) ps parancs

A ps paranccsal megtalálhatjuk CPU-használat az egyes folyamatokhoz vagy felhasználókhoz. Néhány megértendő példa

A CPU legmagasabb megjelenítéséhez & A root által futtatott folyamatok memória-kihasználtsága.

Futtassa a következő parancsot a CPU használatának megjelenítéséhez az adott parancsnál:

A folyamatok megjelenítése minden felhasználó számára, és nem egy terminálhoz van csatolva teljes formátumú listában, egyfajta

14) dstat parancs

A dstat parancs sokoldalú eszköz a rendszererőforrás-statisztikák előállításához, és a CPU-statisztikákat is megjeleníti. Telepítéséhez telepítenie kell

A Centos

# yum install -y dstat

Ubuntun

# apt-get install dstat

A legtöbb CPU-t használó és a legtöbb memóriát fogyasztó program megfigyeléséhez.

# dstat -c --top-cpu -dn --top-mem

Következtetés

Ebben az oktatóanyagban kevés CPU teljesítményfigyelő eszközt tártunk fel, azok felhasználásával együtt. Ne felejtse el elolvasni mindegyik man oldalát, mivel ez részletesen dokumentálja a felhasználásokat is. Ne feledje, hogy ezen eszközök használata CPU-szeletet is igényel. A top például a CPU 3–4% -át veszi igénybe, míg a pillantások a CPU 15–20% -át veszik igénybe. Tehát ezek bármelyikének használata közben figyelembe kell vennie ezt a szempontot is. Dióhéjban megtudhatja, melyik folyamat igényel több CPU-időt, van-e elegendő szabad memória, leálltak-e a folyamatok az I / O-re való várakozással szemben. lemezes vagy hálózati hozzáférés az olvasás / írás befejezéséhez és még sok minden máshoz, ezek közül néhány kombinációjának használatával.

Olvassa el még:

  • A Linux teljesítményének figyelése a Sar parancs használatával
  • Telepítse a htop 2.0.2-t, és használja a parancssort Linux-on

Write a Comment

Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük