14 Komentorivityökalut suorittimen käytön tarkistamiseksi Linuxissa

Suorittimen suorituskyky on yksi näkökohta järjestelmän suorituskyky. Suorittimen suorituskyvyn seuranta on välttämätöntä prosessien virheenkorjaamiseksi missä tahansa järjestelmässä, järjestelmän resurssien hallitsemiseksi, järjestelmää koskevien päätösten tekemiseksi sekä järjestelmien arvioimiseksi ja tutkimiseksi reaaliajassa.

Seurantaan ja näyttämiseen on tarjolla paljon työkaluja. Suorittimen suorituskyky. Käyttöjärjestelmissä on sisäänrakennettu järjestelmäkutsu, johon nämä työkalut luottavat suorituskyvyn lukemien poimimiseksi.

Tässä opetusohjelmassa tutkitaan parhaita suorittimen käytön seurantatyökaluja ja niiden käyttötarkoituksia kaikissa Linux-pohjaisissa distroissa.

1) Yläosa

Yläkomento näyttää reaaliaikaisen näkymän järjestelmän kaikkien käynnissä olevien prosessien suorituskykyyn liittyvistä tiedoista. Oletusarvoisesti ylin komento päivittää tiedot 5 sekunnin välein. Kirjoita ”top” päätelaitteesta nähdäksesi järjestelmän suorituskykyyn liittyvät tilastotiedot.

 # top

Jos haluat muokata yläkomennon lähtöä, paina:

”P” lajitellaksesi suorittimen käytön mukaan.

”I” poistaa tyhjäkäynnillä olevat prosessit näytöltä ja palaa takaisin painamalla ”I” uudelleen.

”M” lajitellaksesi tiedot muistin käytön mukaan.

”S” lajitella sen mukaan, kuinka kauan prosessit ovat olleet käynnissä.

”P” lajitellaksesi suorittimen käytön mukaan.

”U” tarkastellaksesi tietyn käyttäjän omistamia prosesseja.

”K” tappaa prosessit.

”R” muuttaa prosesseja.

2) Iostat

Iostat-komento sisältää luettelon suorittimen käytöstä, laitteen käytöstä ja verkkotiedostojärjestelmän käytöstä. Tämän apuohjelman näyttöjärjestelmän keskimääräinen suorittimen käyttöaste viimeisen uudelleenkäynnistyksen jälkeen. Seuraavan komennon suorittaminen ilman mitään vaihtoehtoja näyttää kaikki kolme raporttia.

 # iostat

Yksittäisen raportin luetteloimiseksi käytä -kytkimiä -c, -d ja -h suorittimen käyttöön. , laitteen käyttö ja verkkotiedostojärjestelmän käyttö. Seuraava komento jakaa CPU: n käytön käyttäjäprosesseihin, järjestelmäprosesseihin, I / O-odotuksiin ja tyhjäkäyntiin.

 # iostat -c

Seuraava komento näyttää laajennetut tilastot ( -x), kuinka monta kertaa (-t) jokainen raportti on näytettävä suorittimen käyttöä varten (-c).

 # iostat -xtc 5 2

3) Vmstat

Vmstat-komento näyttää tilastotietoja järjestelmän prosesseista, muistista, vaihdosta, I / O: sta ja suorittimen suorituskyvystä. Tilastojen näyttämistä varten tiedot kerätään komennon viimeisestä suorituksesta nykyiseen. Jos komentoa ei koskaan suoriteta, tiedot ovat viimeisestä uudelleenkäynnistyksestä nykyiseen aikaan.

Useissa keskusyksikköjärjestelmissä vmstat keskittää lähtöjen suorittimien määrän. Vmstat-komento päivittää lähdön kuten ylempi komento.

Seuraava komento päivittää raporttinsa 5 sekunnin välein, kunnes tapahtuu keskeytys.

 # vmstat 5

Seuraava komento näyttää tiedot, jotka päivittyvät 5 sekunnin välein, ja arvot mitataan uudelleen ja raportoidaan 1 sekunnin välein.

 # vmstat 1 5

ensimmäinen rivi tulostaa keskimääräiset arvot tietokoneen edellisen käynnistämisen jälkeen. Loput rivit näyttävät niiden nykyiset arvot. Normaali käyttäjä voi suorittaa vmstat-komennon.

4) Mpstat

Mpstat on osa sysstat-pakettia Linuxissa. Mpstat-komento kirjoittaa vakiolähtöön kunkin käytettävissä olevan prosessorin toiminnoista, prosessori 0 on ensimmäinen. Jos mitään toimintoa ei ole valittu, oletusraportti on suorittimen käyttöraportti.

mpstat ilman mitään vaihtoehtoa näyttää kaikkien suorittimien keskimääräiset keskimääräiset toiminnot

 # mpstat

mpstat with -p -vaihtoehto ja ”ALL” listaa tilastotiedot kaikista suorittimista yksitellen alkaen nollasta.

 # mpstat -P ALL

Seuraava komento listaa keskimääräinen suorittimen käyttö 4 kertaa, kukin 2 sekunnin kuluttua.

 # mpstat -P ALL 2 4

5) Sar

Sar on suorituskyvyn seurantatyökalu kerätä, tarkastella ja tallentaa suorituskykytietoja ja voi luetella, mitä järjestelmä tekee jatkuvasti. Sar-komento voi luoda raportin ja lähettää ne sähköpostitse järjestelmänvalvojalle. Sarin raportoimat tilastot sisältävät muun muassa I / O-siirtonopeudet, hakutoiminnan, prosesseihin liittyvät toiminnot, keskeytykset, verkkotoiminnan, muistin ja vaihtotilan käytön, suorittimen käytön, ytimen toiminnot ja TTY-tilastot. Suorita sar ilman mitään vaihtoehtoa ja tarkista lähtö. Oletuslähtöluettelotilastot 10 minuutin välein ja lopullinen keskiarvo.

 # sar

Näytä suorittimen tilastot 3 kertaa 2 sekunnin välein.

 # sar 2 3

Seuraava komento näyttää kaikkien suorittimien reaaliaikaisen kumulatiivisen reaaliaikaisen käytön 2 sekunnin välein yhteensä 3 kertaa.

 # sar -u 2 3

”-P ALL” -vaihtoehto näyttää kaikkien yksittäisten ytimien tilastot. Jos järjestelmässäsi on 4 ydintä, ”CPU-sarake” sisältää numerot 0, 1, 2, 3, jotka osoittavat vastaavat suorittimen ydinnumerot.”2 3″ -vaihtoehto näyttää tilastot kahden sekunnin välein 3 kertaa.

 # sar -P ALL 2 3

Vaihtoehto ”-P 2” näyttää kolmannen ytimen tilastot 2 sekunnin välein. 3 kertaa.

 # sar -P 2 2 3

6) CoreFreq

CoreFreq on suorittimen suorituskyvyn seurantaohjelmisto, joka on suunniteltu 64-bittisille prosessoreille Intel-arkkitehtuureilla Atom, Core2, Nehalem, SandyBridge ja ylivoimainen, AMD-perhe. CoreFreq tarjoaa kehyksen suorittimen tietojen hakemiseen erittäin tarkasti. Ytimoduuli, daemon ja userland-komentoriviliitäntä (CLI) ovat Corefreqin kolme osaa. Ytimoduulilla on täysi pääsy isäntään. Sen vastuulla on kerätä matalan tason tietoja. Userland-daemon kerää tiedot. Sinun pitäisi olla pääkäyttäjä suorittamaan daemon. Lopuksi CoreFreqin mukana tulee päätelaite, joka raportoi tiedot ihmisille luettavassa muodossa. Kyseinen CLI-työkalu on tavallinen prosessi, jota loppukäyttäjä voi käyttää.

Edellytys

i) CoreFreq käyttää matalan tason laskuria, joten sinun on ensin poistettava NMI-valvoja käytöstä / etc / default / grub. Muokkaa / etc / default / grub ja lisää ytimen komentorivin argumentti ”nmi_watchdog = 0” ja suorita sen jälkeen update-grub.

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

ii) Ei virtualisointia. Virtuaalikoneet eivät anna pääsyä CoreFreq-ohjaimen käyttämiin rekistereihin.

Asenna CoreFreq

Asenna ytimoduuli insmodilla

 # sudo insmod corefreqk.ko

Luettele CoreFreq-moduuli lsmodilla

 # lsmod | grep corefreq corefreqk 49152 0

dmesg-komennon tulos osoittaa, että prosessori on tunnistanut CoreFreqin.

 # sudo dmesg | grep CoreFreq CoreFreq: Processor Architecture CPU 

Käynnistä CoreFreq-daemon

 # sudo ./corefreqd -i &

Käynnistä nyt corefreq-asiakas käyttäjänä.

 # ./corefreq-cli

7) Htop

Htop on prosessinäkymä ja tekstimoodisovellus järjestelmän valvontaan reaaliajassa kuten top. Se näyttää täydellisen luettelo käynnissä olevista ja helppokäyttöisistä prosesseista. Se perustuu n-kursseihin prosessien tarkastelemiseksi päätelaitteessa käynnissä olevassa käyttöliittymän kaltaisessa ympäristössä. Htop näyttää käytön CPU: ta kohti sekä muistin ja vaihdon käytön, ja merkittävä tekstikaavio tulostetaan yläosassa. Htop on erittäin kätevä käyttää ja helppo ymmärtää. Kun aloitat HTOP: n käytön, y Et ehkä palaa TOP-versioon.

Asenna htop käyttämällä seuraavaa komentoa päätelaitteessa.

 # sudo apt-get install htop

Suorita htop seuraavalla komennolla.

 # htop

8) Nmon

nmon (Nigelin Performance Monitor for Linux & AIX) on kehittänyt IBM: n työntekijä Nigel Griffiths. Tätä työkalua käytetään järjestelmäresurssien, kuten suorittimen, muistin, verkon, levyjen, tiedostojärjestelmien, NFS: n, päätelaitteen huippuprosessien seurantaan. NMON tukee erilaisia arkkitehtuureja, kuten POWER, x86, x86_64, Mainframe ja ARM (Raspberry Pi). Tämä työkalu auttaa järjestelmänvalvojaa virittämään, vertailemaan suorituskykytietoja suorittimen / järjestelmän suorituskyvyn vianmäärityksessä, jos on ongelmia. Reaaliaikaisessa seurannassa se käyttää kirouskirjastoa alhaisella suorittimen vaikutuksella ja näyttää tilastotiedot näytöllä ja päivittää kahden sekunnin välein. nmon kuluttaa vähemmän suorittimen muistia verrattuna muihin työkaluihin, koska se käyttää kirouskirjastoa.

Asennus

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

CentOS-käyttäjien on asennettava / sallittava EPEL-arkisto nmonin asentamiseksi.

Kirjoita nmon päätelaitteeseen ja paina Enter, nmon näyttää aloitusnäytön, jossa on kaikki vaihtoehdot sen käyttämiseksi edelleen. Jos haluat näyttää suorittimen käytön, paina c ja piilota suorittimen käyttöwidgetien tilastotiedot painamalla ”c” uudelleen.

9) Katseet

Glances on Pythoniin kirjoitettu monitasoinen kirouksiin perustuva valvontatyökalu, joka käyttää psutil-kirjastoa tietojen hakemiseen järjestelmästä. Katsausmonitori CPU, keskimääräinen lataus, muisti, verkkoliitännät, levyn I / O-toiminnot, prosessit ja tiedostojärjestelmien tilojen käyttö.

Asenna katsaus järjestelmään seuraavalla komennolla.

Ubuntu :

 # sudo apt-get install glances

Centos:

 # sudo yum install glances

Voit suorittaa silmäyksiä kolmessa tilassa-

1. Itsenäinen

Jos haluat valvoa paikallista laitettasi (itsenäinen), suorita yksinkertaisesti-

 # glances

2. Asiakas / palvelin

Jos haluat tarkkailla laitetta etänä, suorita seuraava palvelimella.

 # glances -s

ja sitten asiakkaalta , suorita seuraava komento.

 # glances -c @server

jossa @palvelin on palvelimen IP-osoite tai isäntänimi.

3. Verkkopalvelin

Suorita vilkaisut verkkopalvelintilassa suorittamalla seuraava komento terminaalissa.

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

Muuta päivitystaajuutta lisää vain piste sekunteina URL-osoitteen loppuun. Jos haluat esimerkiksi päivittää sivun 30 sekunnin välein, liitä 10 selaimen vilkaisupalvelimen URL-osoitteeseen.

 http://@server:61208/30

10) Cpustat

Cpustat on kuin hienostunut yläosa, joka tekee erilaisia asioita. Suurin osa suoritustyökaluista keskimääräinen suorittimen käyttö muutamassa sekunnissa tai jopa minuutissa. Tämä johtaa mielikuvaan ylikapasiteetista, koska resurssien käyttö lisääntyy äkillisesti vähemmän kiireisillä jaksoilla. Toisaalta cpustat ottaa korkeamman taajuuden näytteet kustakin prosessista ja tiivistää nämä näytteet matalammalla taajuudella. Se voi esimerkiksi mitata prosessin 200 ms välein ja tiivistää näytteet 5 sekunnin välein, mukaan lukien joidenkin muuttujien min / keskiarvo / max-arvot.

Asenna Cpustat

Cpustat on kirjoitettu Go-kielellä. Siksi tarvitset GO järjestelmääsi. Jos sitä ei ole, asenna se seuraavien komentojen avulla päätelaitteessa.

Ubuntu

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

CentOSissa

 # yum install golang

Kun Golang on asennettu järjestelmään, luo hakemisto Cpustatille ja anna tämä hakemisto GOPATH: n käyttöön.

 # mkdir cpustat # export GOPATH=$HOME/cpustat

Asenna Cpustat ja tarkista, että hakemistot on kopioitu kansioon cpustat.

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

Lisää lokikansio PATH-ympäristömuuttujaan. Voit myös lisätä seuraavan rivin ~ / .bashrc- tai / etc / -profiiliin käyttämäsi mukaan.

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

Tämän voi näyttää kahdella tavalla tiedot. Joko tiivistelmävälin puhdas tekstiluettelo tai jokaisen näytteen värikäs vierityspaneeli. Jos haluat näyttää tietoja hienossa päätelaitteessa, suorita seuraava komento päätelaitteessa.

 # cpustat -t

Suorita puhtaassa tekstitilassa käyttämällä seuraavaa komentoa. Tekstitilassa muutama koko järjestelmän kattava yhteenvetomittari tulee hakemistosta / proc / stat.

 # cpustat

Seuraava komento ottaa näytteen kaikista prosesseista 500 ms välein. Yhteenveto näistä tiedoista 10 näytteen jälkeen, joka tapahtuu joka 5. sekunti.

 # cpustat -s 500 -s 10 -n 20

Käytä seuraavaa komentoa mittaamaan prosesseja, jotka ovat joko käyttäjän juuren tai käyttäjän ubuntun omistamia. Järjestelmän kokonaistilastot mitataan edelleen.

 # cpustat -u root, ubuntu

Mittaa vain ”apache” – tai ”mysql” -prosesseja. Cpustat -optio vie luettelon prosessin tunnuksista, jotka pgrep palauttaa. pgrepiä käytetään prosessitunnusten (-d-vaihtoehto) saamiseen.

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

Kirjoita muistiprofiili tiedostoon seuraavan komennon avulla.

 # cpustat -memprofile test.txt

11) perf

Perf voi mitata suorittimen suorituskykylaskureita, jäljityspisteitä, kprobeja ja uprobeja, jotka sisältyvät Linux-ytimeen, työkalut / perf-kohtaan. perf aloitti työkaluna suorituskyvyn laskureiden alijärjestelmän käyttämiseen Linuxissa, ja sillä on ollut useita parannuksia jäljitysominaisuuksien lisäämiseksi. Perf-työkalut on integroitu Linux-ytimeen 2.6-versiosta lähtien ja ne perustuvat perf events -alijärjestelmään. Perf-profiloija käyttää laitteistolaskureita sovelluksen profilointiin. Tämän profiloijan tulos on selkeä ja nopea. Täydellinen apuohjelma löytyy linux-tools -paketista.

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

Jos olet kiinnostunut etsimään suorittimen suorituskykyä tietylle” komennolle ”, kuten cp: lle. Seuraava perf-komento profiloi cp: tä samalla, kun se kopioi koko hakemistot Dokumentit uuteen sijaintiin (Docs).

 # perf stat cp -r Documents/ Docs

Jos haluat löytää suorittimen laskuritilastot kohteelle määritetty PID käyttää sitten seuraavaa komentoa, kunnes CTRL + C painetaan.

 # perf stat -p 2087

Löydä suorittimen perustilastot 10 sekunnin ajan käyttämällä seuraavaa komento. Voit myös jättää minkä tahansa alla olevista vaihtoehdoista tarkemmaksi.

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

Kerää näytteitä suorittimen käyttöohjeista 5 sekunnin ajan ja sitten käytä perf-raporttia tarkastellaksesi raporttia.

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

Kerää näytteitä suorittimen pinojäljistä 10000 tason tason 1 datan välimuistin puuttuessa 5 sekunnin ajan ja käytä sitten perf-raporttia tarkastella raporttia.

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

12) tiptop

Tiptop lukee laitteiston suorituskykylaskureita ja näyttää tilastoja käynnissä olevista Linux-prosesseista, kuten IPC tai välimuisti puuttuu. Se tarjoaa dynaamisen reaaliaikaisen kuvan järjestelmässä suoritettavista tehtävistä. Tiptop on hyvin samanlainen kuin yläosa, mutta näytettävät tiedot tulevat laitteistolaskureista.

Siinä on kaksi käyttötilaa, live-tila ja eräajotila. Kummassakin tilassa järjestelmältä kysytään säännöllisesti laitteistolaskurien arvot, ja jokaiselle tehtävälle tulostetaan erilaisia suhteita.

13) ps-komento

Voimme löytää ps-komennon etsimään prosessorin käyttö jokaiselle prosessille tai käyttäjälle. Annettu muutama ymmärrettävä esimerkki.

Suorittimen korkeimman & näyttäminen. Muistin käyttöaste juurin suorittamien prosessien mukaan

Suorita seuraava komento näyttääksesi tietyn komennon suorittimen käytön:

Näyttää kaikkien käyttäjien prosessit, joita ei ole liitetty päätelaitteeseen täysimuotoisessa luettelossa eräänlaisella

14) dstat-komento

dstat-komento on monipuolinen työkalu järjestelmäresurssitilastojen luomiseen, ja se näyttää myös suorittimen tilastot. Sinun on asennettava se voidaksesi käyttää sitä

Centos

# yum install -y dstat

Ubuntussa

# apt-get install dstat

Seurata ohjelmaa, joka käyttää eniten prosessoria ja kuluttaa eniten muistia.

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

Johtopäätös

Tässä opetusohjelmassa olemme tutkineet muutamia suorittimen suorituskyvyn seurantatyökaluja ja niiden käyttötapoja. Muista lukea jokaisen man-sivut, koska se dokumentoi myös yksityiskohdat yksityiskohtaisesti. Muista, että näiden työkalujen käyttäminen vie myös suorittimen osan. Esimerkiksi huippu vie 3–4% suorittimesta, kun taas katseet vievät 15–20% suorittimesta. Joten kun käytät jotakin näistä, sinun on otettava huomioon myös tämä näkökohta. Lyhyesti sanottuna voit löytää mikä prosessi vie enemmän suorittimen aikaa, onko tarpeeksi vapaata muistia, pysähtyykö prosessit odottaessaan I / O: ta. levylle tai verkkoon pääsy lukemisen / kirjoittamisen loppuunsaattamiseksi ja paljon muuta käyttämällä muutaman niistä yhdistelmää.

Lue myös:

  • Linux-suorituskyvyn seuraaminen Sar-komennolla
  • Asenna htop 2.0.2 ja käytä komentoriviä Linuxissa

Write a Comment

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *