Linuxi jõudluse jälgimine Vmstat ja Iostat käskudega


See on meie käimasolev käskude ja jõudluse jälgimise sari Linuxis. Mõlemad käsud Vmstat ja Iostat on saadaval kõigis suuremates Unixi-laadsetes (Linux/Unix/FreeBSD/Solaris) operatsioonisüsteemides.

Kui teie kastil pole käske vmstat ja iostat, installige palun sysstat. Vmstat, sar ja iostat käsud on sysstatis sisalduvate pakettide kogu - süsteemi jälgimise tööriistad. Iostat genereerib protsessori ja kogu seadme statistika aruandeid. Võite alla laadida ja installida sysstat, kasutades allika tarballi lingist sysstat, kuid soovitame installida käsu YUM kaudu.

$ sudo yum install sysstat         #CentOS and RHEL systems 
$ sudo dnf install sysstat         #Fedora 22+ systems 
$ sudo apt-get install sysstat     #Ubuntu and Debian based systems 
$ sudo pacman -S sysstat           #Arch Linux

  1. vmstat - kokkuvõtlik teave mälu, protsesside, lehitsemise jms kohta
  2. iostat - keskseadme (CPU) statistika ning seadmete ja sektsioonide sisendi/väljundi statistika.

Allpool toodud näites on kuus veergu. Veerude olulisust on üksikasjalikult selgitatud vmstat'i manulehel. Enamik olulisi välju on vaba mälu all ja si, seega vahetusveerus.

 vmstat -a

procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
 r  b   swpd   free  inact active   si   so    bi    bo   in   cs us sy id wa st
 1  0      0 810420  97380  70628    0    0   115     4   89   79  1  6 90  3  0

    1. Vaba - vaba/tühikäigu mäluruumide arv.
    2. si - vahetatud iga sekundiga kettalt Kilo baiti.
    3. nii - vahetage iga sekund Kilo baiti kettale.

    Märkus. Kui käivitate vmstat ilma parameetriteta, kuvatakse sellest kokkuvõtlik aruanne alates süsteemi käivitamisest.

    Selle käsuga käivitab vmstat iga kahe sekundi järel ja peatub automaatselt pärast kuue intervalli täitmist.

     vmstat 2 6
    
    procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
     r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
     0  0      0 810420  22064 101368    0    0    56     3   50   57  0  3 95  2  0
     0  0      0 810412  22064 101368    0    0     0     0   16   35  0  0 100  0  0
     0  0      0 810412  22064 101368    0    0     0     0   14   35  0  0 100  0  0
     0  0      0 810412  22064 101368    0    0     0     0   17   38  0  0 100  0  0
     0  0      0 810412  22064 101368    0    0     0     0   17   35  0  0 100  0  0
     0  0      0 810412  22064 101368    0    0     0     0   18   36  0  1 100  0  0

    vmstat käsk koos -t parameetriga näitab ajatemplid iga trükitud reaga, nagu allpool näidatud.

    [[email  ~]$ vmstat -t 1 5
    
    procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------ ---timestamp---
     r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
     0  0      0 632028  24992 192244    0    0    70     5   55   78  1  3 95  1  0        2012-09-02 14:57:18 IST
     1  0      0 632028  24992 192244    0    0     0     0  171  514  1  5 94  0  0        2012-09-02 14:57:19 IST
     1  0      0 631904  24992 192244    0    0     0     0  195  600  0  5 95  0  0        2012-09-02 14:57:20 IST
     0  0      0 631780  24992 192244    0    0     0     0  156  524  0  5 95  0  0        2012-09-02 14:57:21 IST
     1  0      0 631656  24992 192244    0    0     0     0  189  592  0  5 95  0  0        2012-09-02 14:57:22 IST

    vmstat käsk ja -s lüliti kuvavad erinevate sündmuste loendurite ja mälu statistika kokkuvõtte.

    [[email  ~]$ vmstat -s
    
          1030800  total memory
           524656  used memory
           277784  active memory
           185920  inactive memory
           506144  free memory
            26864  buffer memory
           310104  swap cache
          2064376  total swap
                0  used swap
          2064376  free swap
             4539 non-nice user cpu ticks
                0 nice user cpu ticks
            11569 system cpu ticks
           329608 idle cpu ticks
             5012 IO-wait cpu ticks
               79 IRQ cpu ticks
               74 softirq cpu ticks
                0 stolen cpu ticks
           336038 pages paged in
            67945 pages paged out
                0 pages swapped in
                0 pages swapped out
           258526 interrupts
           392439 CPU context switches
       1346574857 boot time
             2309 forks

    vmstat koos -d suvandiga kuvab kogu ketta statistika.

    [[email  ~]$ vmstat -d
    
    disk- ------------reads------------ ------------writes----------- -----IO------
           total merged sectors      ms  total merged sectors      ms    cur    sec
    ram0       0      0       0       0      0      0       0       0      0      0
    ram1       0      0       0       0      0      0       0       0      0      0
    ram2       0      0       0       0      0      0       0       0      0      0
    ram3       0      0       0       0      0      0       0       0      0      0
    ram4       0      0       0       0      0      0       0       0      0      0
    ram5       0      0       0       0      0      0       0       0      0      0
    ram6       0      0       0       0      0      0       0       0      0      0
    ram7       0      0       0       0      0      0       0       0      0      0
    ram8       0      0       0       0      0      0       0       0      0      0
    ram9       0      0       0       0      0      0       0       0      0      0
    ram10      0      0       0       0      0      0       0       0      0      0
    ram11      0      0       0       0      0      0       0       0      0      0
    ram12      0      0       0       0      0      0       0       0      0      0
    ram13      0      0       0       0      0      0       0       0      0      0
    ram14      0      0       0       0      0      0       0       0      0      0
    ram15      0      0       0       0      0      0       0       0      0      0
    loop0      0      0       0       0      0      0       0       0      0      0
    loop1      0      0       0       0      0      0       0       0      0      0
    loop2      0      0       0       0      0      0       0       0      0      0
    loop3      0      0       0       0      0      0       0       0      0      0
    loop4      0      0       0       0      0      0       0       0      0      0
    loop5      0      0       0       0      0      0       0       0      0      0
    loop6      0      0       0       0      0      0       0       0      0      0
    loop7      0      0       0       0      0      0       0       0      0      0
    sr0        0      0       0       0      0      0       0       0      0      0
    sda     7712   5145  668732  409619   3282  28884  257402  644566      0    126
    dm-0   11578      0  659242 1113017  32163      0  257384 8460026      0    126
    dm-1     324      0    2592    3845      0      0       0       0      0      2

    Vmstat kuvab mälu statistikat vaikimisi kilobaitides, kuid argumendiga -S M saate kuvada ka mälu suurusega aruandeid megabaitides. Vaatleme järgmist näidet.

     vmstat -S M 1 5
    
    procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
     r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
     0  0      0    346     53    476    0    0    95     8   42   55  0  2 96  2  0
     0  0      0    346     53    476    0    0     0     0   12   15  0  0 100  0  0
     0  0      0    346     53    476    0    0     0     0   32   62  0  0 100  0  0
     0  0      0    346     53    476    0    0     0     0   15   13  0  0 100  0  0
     0  0      0    346     53    476    0    0     0     0   34   61  0  1 99  0  0

    iostat ilma argumentideta kuvab kõigi partitsioonide CPU ja I/O statistikat, nagu allpool näidatud.

     iostat
    
    Linux 2.6.32-279.el6.i686 (linux-console.net)         09/03/2012      _i686_  (1 CPU)
    
    avg-cpu:  %user   %nice %system %iowait  %steal   %idle
               0.12    0.01    1.54    2.08    0.00   96.24
    
    Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
    sda               3.59       161.02        13.48    1086002      90882
    dm-0              5.76       159.71        13.47    1077154      90864
    dm-1              0.05         0.38         0.00       2576          0

    iostat koos -c argumentidega kuvab ainult protsessori statistikat, nagu allpool näidatud.

     iostat -c
    
    Linux 2.6.32-279.el6.i686 (linux-console.net)         09/03/2012      _i686_  (1 CPU)
    
    avg-cpu:  %user   %nice %system %iowait  %steal   %idle
               0.12    0.01    1.47    1.98    0.00   96.42

    iostat koos -d argumentidega kuvab kõigi kettade sisend-/väljundstatistikat ainult näidatud viisil.

     iostat -d
    
    Linux 2.6.32-279.el6.i686 (linux-console.net)         09/03/2012      _i686_  (1 CPU)
    
    Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
    sda               3.35       149.81        12.66    1086002      91746
    dm-0              5.37       148.59        12.65    1077154      91728
    dm-1              0.04         0.36         0.00       2576          0

    Vaikimisi kuvab see kõigi sektsioonide statistikat, kusjuures -p ja seadme nime argumendid kuvavad ainult konkreetse seadme ketaste sisend-/väljundstatistikat, nagu näidatud.

     iostat -p sda
    
    Linux 2.6.32-279.el6.i686 (linux-console.net)         09/03/2012      _i686_  (1 CPU)
    
    avg-cpu:  %user   %nice %system %iowait  %steal   %idle
               0.11    0.01    1.44    1.92    0.00   96.52
    
    Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
    sda               3.32       148.52        12.55    1086002      91770
    sda1              0.07         0.56         0.00       4120         18
    sda2              3.22       147.79        12.55    1080650      91752

    Parameetriga -N (suurte tähtedega) kuvatakse ainult LVM statistikat, nagu näidatud.

     iostat -N
    
    Linux 2.6.32-279.el6.i686 (linux-console.net)         09/03/2012      _i686_  (1 CPU)
    
    avg-cpu:  %user   %nice %system %iowait  %steal   %idle
               0.11    0.01    1.39    1.85    0.00   96.64
    
    Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
    sda               3.20       142.84        12.16    1086002      92466
    vg_tecmint-lv_root     5.13       141.68        12.16    1077154      92448
    vg_tecmint-lv_swap     0.04         0.34         0.00       2576          0

    Parameetriga -V (suurte tähtedega) kuvatakse iostati versioon, nagu näidatud.

     iostat -V
    
    sysstat version 9.0.4
    (C) Sebastien Godard (sysstat  orange.fr)

    Märkus: vmstat ja iostat sisaldavad veergude ja märkide arvu, mida ei pruugi olla võimalik üksikasjalikult selgitada. Kui soovite selle kohta rohkem teada saada, võite viidata vmstat'i ja iostati manulehele. Palun jagage seda, kui leiate, et see artikkel on kasulik meie alloleva kommentaarikasti kaudu.