Vmstat
Sissejuhatus
Antud leheküljel on kirjeldatud UNIX süsteemides toimiva käsurea tööriista vmstat. Kirjutise eesmärgiks on tutvustada, kuidas see käsk toimib ning mille jaoks seda kasutatakse.
Virtual memory statistics ehk vmstat on käsurea tööriist, mida kasutatakse arvuti mälu, protsessori, saalimise ja katkestuste jälgimiseks.
Vmstat’i tööriist on saadaval enamikes UNIXi ja Unixi-taolistes operatsioonisüsteemides (näiteks Linuxis ja Solarises), kuid erinevates operatsioonisüsteemides võivad käsusüntaks ja väljastatava informatsiooni esitus olla veidi erinevad. Vmstat ei ole Linuxis jooksev protsess ning seda tööriista on võimalik kasutada ka tavakasutaja õigustes.
Käsusüntaks
vmstat [-a] [-n] [delay [ count]] vmstat [-f] [-s] [-m] vmstat [-S unit] vmstat [-d] vmstat [-p disk partition] vmstat [-V]
Lisavalikud
vmstat -a -näitab aktiivset / mitte aktiivset mälu.
vmstat -f -näitab fork[1] , vfork[2] ja clone[3] protsesside arvu alates viimasest alglaadimisest ning mis on võrdne loodud ülesannete kogusummaga. Iga protsess esindab ühte või mitut ülesannet, sõltuvalt täidetavate lõimede (täidetavate programmiosade) hulgast. Raportis olevad kirjed ei kordu.
vmstat -m -kuvab segmendiinfot
vmstat -n -päiseid ei kuvata perioodiliselt. Iga kord, kui raportisse midagi lisatakse, on see uus rida ilma päiseta.
vmstat -s - kuvab virtuaalmälus toimuvate sündmuste ja mälu statistika tabeli. See tabel ei kordu.
vmstat -d -kuvab ketta statistika.
vmstat -p -kuvab valitud kettapartitsiooni detailse statistika.
vmstat -S -väljastatud raportis saab kasutaja määrata, millistes ühikutes ta soovib raportit saada, kas k(1000 baiti), K(1024 baiti), m(1000000 baiti) või M(1048576 baiti)
vmstat -V -kuvab versiooni informatsiooni.
Lisavalikute detailsemad kirjeldused on toodud peatükis vmstat'i kasutamise näited.
Vmstat'i kasutamise näited
Allolevad pildid ja näited on tehtud kasutades Linuxi terminali, täpsemalt Ubuntu 11.04 serveri versiooni.
- Vmstat süntaks
Kasutatud käsk: vmsat --help
- vmstat raporti väljastamine.
Kasutatud käsk: vmstat
Vmstat’i esimene raport kuvab keskmiseid näitajaid alates eelmisest taaskäivitusest. Protsessi ja mälu raportites väljastatakse hetkeseis.
procs:
r: näitab palju protsesse ootavad käima minemist.
b: näitab palju on hõivatud protsesse.
memory:
swpd: kasutatud virtuaalne mälu
free: vaba virtuaalne mälu
buff: mälu, mida kasutatakse kui puhvrit
cache: mälu, mida kasutatakse vahemäluna
swap:
si: mälu swapitud kettalt (igaks sekundiks)
so: mälu swapitud kettale (igaks sekundiks)
io:
bi: blocks in (iga sekundi kohta)
bo: blocks out (iga sekundi kohta)
system:
in: katkestused iga sekundi kohta
cs: taustalülituste arv sekundi kohta
cpu:
us: user time ehk kasutaja aeg
sy: system time ehk süsteemi aeg
id: idle time ehk tegevusetu aeg
wa: wait time ehk ooteaeg
- vmstat -V - väljastab versiooni informatsiooni
Kasutatud käsk: vmstat -V
Procps on Linuxi tarkvarapakett, mis sisaldab mitut erinevat utiliiti, mille abil on võimalik saada informatsiooni protsesside kohta /proc failisüsteemis.
Nagu ülalolevalt jooniselt on näha, on siin tegemist versiooniga 3.2.8
- vmstat -n [aeg sekundites]
Iga kord, kui tuleb uus raport, lisandub ekraanile üks rida ilma päiseta.
vmstat -a: näitab aktiivset/mitteaktiivset mälu.
vmstat -d: väljastab ketta statistika – lugemised, kirjutamised, I/O statistika.
Väljade kirjeldus:
Reads - lugemised:
Total: kõik lugemised, mis on edukalt lõpetatud.
Merged: grupeeritud lugemised (tulemusena ühes I/O-s)
Sectors: edukalt loetud sektorid
Ms: lugemisele kulutatud aeg millisekundites.
Writes - kirjutamised:
Total: kõik kirjutamised, mis on edukalt lõpetatud
Merged: grupeeritud kirjutamised (tulemusena ühes I/O-s)
Sectors: edukalt kirjutatud sektorid
Ms: kirjutamiseks kulunud aeg millisekundites
IO - Input Output:
Cur: I/O-d töös
S: I/O jaoks kulunud aeg sekundites
- vmstat -D: väljastab ketta tabeli.
- vmstat -p[ketta partsitsioon]: kasutatakse selleks, et väljastada ketta I/O statistikat ühe ketta partitsiooni kohta.
Väljade kirjeldus:
Reads - lugemised:
Read sectors: sellele partitsioonile loetud sektorite koguarv
Writes - kirjutamised:
Requested writes: selle partitsioonile tehtud kirjutamise taotluste koguarv
- vmstat -s: väljastab tabeli, mis koosneb erinevatest sündmuste loenduritest ja mälu statistikast. See raport ei kordu. Kasutatakse, et väljastada raportit tabeli kujul. Prindib vm (virtual memory) tabeli.
- vmstat –m: väljastab segmendiinfot
Väljade kirjeldus:
Cache: cache’i nimi
Num: käesoleval hetkel aktiivsete objektide arv
Total: saadaval olevate objektide koguarv
Size: iga objekti suurus
Pages: vähemalt ühe aktiivse objektiga lehekülgede arv
Totpages: reserveeritud lehekülgede koguarv
Palab: lehekülgede arv segmendi kohta
- vmstat -S[ühik]: väljastab vmstat’i raporti nii, et ühikud raportis on kasutaja poolt valitud ühikutena väljastatud, näiteks k või K või m või M.
- vmstat –f: väljastab protsesside koopiate arvu, mida süsteem on teinud alates eelmisest alglaadimisest.
- vmstat [delay[count]] : käsk, mis väljastab raporteid vastavalt valitud parameetritele.
Delay – aeg uuenduste vahel sekundites. Kui seda ei ole eraldi välja toodud, siis väljastatakse ainult keskmised väärtused alates eelmisest taaskäivitusest. Count – mitu uuendust soovitakse valitud aja jooksul saada.
Kokkuvõtteks
Vmstat tööriista kasutamiseks Linuxi süsteemides ei ole vaja sisse logida juurkasutaja õigustes. Vmstat ei ole Linuxis jooksev protsess. Kõik Linuxi plokid on 1024 baidised. Vanadel tuumadel võib olla 512, 2048 või 40296 baidiseid plokke. Alates props 3.1.9 laseb vmstat valida ühikuid (k, K, m, M), vaikimisi on ühikuks K (1024 baiti). Raportid on mõeldud selleks, et aidata identifitseerida süsteemi kitsaskohti ehk niinimetatud süsteemi pudelikaelu.
Kasutatud materjalid
http://www.thegeekstuff.com/2011/07/iostat-vmstat-mpstat-examples/
http://linuxcommand.org/man_pages/vmstat8.html 12.11.2015
http://linux.die.net/man/8/vmstat 12.11.2015
http://linux.about.com/library/cmd/blcmdl8_vmstat.htm 12.11.2015
Autor
Nele Kiigemägi Rühm A21 2011
Täiendas:
Diana Lõhmus Rühm AK21 2015