Linux: Используем vmstat для сбора данных об утилизацииУтилита vmstat позволяет получать информацию о запущенных процессах, утилизации памяти, процессора и системы ввода вывода. Данные получаемые в результате работы этой утилиты легко читаемые и понимаемые. Сегодня расскажем о vmstat подробнее.

[ad#ad-2]
В большинстве случаев

vmstat -S M
procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa
 1  0      0   1734    224    380    0    0   152    29  168  173  3  1 93  2

Как мы видим в первой строчке указаны шесть категорий по которым выдается информация, во второй строке — категории расписываются более детально, а в последующих (а она может быть не одна) указаны текущие значения для каждого параметра.
в нашем примере параметры «-S M» заставляют vmstat указывать все значения в Мегабайтах. Так же можно выбрать k — Кбиты, K — Кбайты, m — Мбиты, M- Мбайты. По умолчанию vmstat выводит информацию в Кбайтах.

vmstat
procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa
 0  0      0 1772452 229688 391348    0    0   127    24  170  171  3  1 94  2

Расскажем детально о каждом выдаваемом параметре.
r: Количество процессов которые выполняются в данный момент
b: Количество процессов находящихся в «глубоком сне» (по терминологии виндовс — они зависли), и будут запущены только при появлении свободных ресурсов для этого
swpd: Количество занятого Свопа (SWAP)
free: Количество свободной памяти
buff: Количество памяти выделенной под буфер
cache: Количество памяти занятой под кеш
si: Число загруженных процессов. (количество памяти выгруженной в Своп)
so: Число загруженных процессов. (количество памяти загруженных из Свопа в оперативную пямять)
bi: Количество блоков информации прочитанных с жестких дисков в секунду (blocks/s).
bo: Количество блоков информации записанных на жесткие диски в секунду (blocks/s).
in: Число прерываний устройств (несинхронных). (а если проще то это число прерываний, поступавших от устройств каждую секунду в течение интервала сбора информации.)
cs: Число переключений контекста.
us: Время CPU (в процентах) затраченное на выполнение пользовательских приложений
sy: Время CPU (в процентах) затраченное на выполнение системных приложений (время ядра)
id: Время (в процентах) в течении которого процессор простаивал (не выполняя никаких задач)
wa: Время (в процентах) в течении которого процессор простаивал (не выполняя никаких задач) ожидая когда окончится операция ввода вывода на жесткие диски.

Так же при помощи утилиты vmstat можно получать информацию о загрузке автоматически через определенное время, или определенное количество раз.
В следующем примере информация собирается каждые 2 секунды, но не более 5 раз

vmstat -S M 2 5
procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa
 1  0      0   1717    225    388    0    0    48    10  184  174  2  1 97  1
 0  0      0   1717    225    388    0    0     0     0  454  370  2  0 98  0
 0  0      0   1717    225    388    0    0     0    26  427  369  2  0 98  0
 0  0      0   1717    225    388    0    0     0     0  514  471  2  0 97  0
 0  0      0   1717    225    388    0    0     0     0  455  410  2  1 97  0

Или просто каждые две секунды до нажатия сочетания клавиш «Ctrl + C»

vmstat -S M 2
procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa
 1  0      0   1717    225    388    0    0    47     9  184  175  2  1 97  1
 2  0      0   1717    225    388    0    0     0     0  383  433  1  0 98  0
 0  0      0   1717    225    388    0    0     0     0  348  393  1  0 99  0
 1  0      0   1717    225    388    0    0     0    18  339  365  1  0 99  0
 0  0      0   1717    225    388    0    0     0     0  385  386  1  1 98  0
 1  0      0   1717    225    388    0    0     0    18  508  411  2  0 98  0
 0  0      0   1717    225    388    0    0     0     0  347  378  1  0 99  0
^C



Similar Posts:

Теги:
 

2 Responses to Linux: Используем vmstat для сбора данных об утилизации

  1. free — это не свободная память.
    free displays the total amount of free and used physical and swap memory in the system, as well as the buffers used by the kernel. The shared memory column
    should be ignored; it is obsolete.(man free)

  2. admin:

    не буду спорить, но насколько я помню free в контексте команды vmstat показывает именно количество свободной памяти, а у контексте команды free показывает то о чем пишете вы :)

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

*

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="" highlight="">