В этом руководстве будут рассмотрены основы использования инструмента vmstat для мониторинга производительности системы на быстрых и простых примерах. Хотя используемый дистрибутив Linux не имеет большого значения для этого руководства, хорошо отметить, что мы тестировали его на Debian 10.06 система.
Введение в vmstat?
Vmstat - это инструмент командной строки, используемый для мониторинга и составления отчетов об использовании ресурсов в вашей системе. Он отслеживает использование системных ресурсов, таких как системная память, процессор и своп.
Он предоставляет отчеты с данными в режиме реального времени, которые могут помочь системным администраторам и специалистам по устранению неполадок Linux быстро и легко определить причины проблем с производительностью и высокого использования памяти в системе.
Как использовать vmstat
Чтобы использовать инструмент vmstat, выполните команду vmstat в терминале. Вы получите результат, аналогичный показанному ниже:
Использование команды vmstat без аргументов выводит среднее представление об использовании ресурсов системы с момента последней перезагрузки системы. Чтобы отфильтровать точную информацию, используйте команду:
vmstatПосле использования указанного выше синтаксиса vmstat сообщает о средней системе, использованной с момента последней перезагрузки, и впоследствии, пока не будет достигнуто значение счетчика. Например, если значение счетчика равно 10, vmstat отобразит использование системной информации 10 раз. Команда также указывает, что vmstat должен сообщать данные о каждом значении интервала (в секундах).
Использование vmstat
В зависимости от информации или типа диагностируемой проблемы вы часто будете запускать vmstat с небольшим значением интервала. Рассмотрим следующий вывод vmstat. Сообщать каждые 2 секунды 15 раз.
Вы также можете выполнить команду vmstat без аргумента count. Это даст текущие отчеты об использовании системы в режиме реального времени за указанный интервал.
Например:
Лучше вывести отчет из vmstat в файл журнала, чтобы прочитать и проанализировать его позже. Чтобы остановить запущенный сеанс vmstat, нажмите клавиши CTRL + C.
По умолчанию vmstat отображает отчеты о памяти в килобайтах, при этом один килобайт эквивалентен 1024 байтам. Чтобы настроить vmstat на использование 1 килобайта как 1000 байт, используйте команду:
vmstat -S k 1 10
Если вы хотите использовать мегабайты для отображения размера памяти, используйте аргумент -S m, и Vmstat сообщит, что один мегабайт эквивалентен 1000 килобайт.
Понимание вывода vmstat
Как мы уже упоминали, vmstat сообщает о текущем состоянии системы. Он предоставляет полезную информацию о состоянии системы, которая помогает при устранении проблем с производительностью.
Учитывая это, важно понимать, что представляет собой вывод vmstat.
Vmstat группирует выходную информацию в столбцы. Эти столбцы содержат связанную информацию в зависимости от указанной команды. Ниже приведены некоторые столбцы из вывода vmstat.
1: столбец Procs
Таблица procs представляет количество заданий в очереди (заданий, ожидающих выполнения). Этот столбец может помочь вам определить процессы, блокирующие выполнение системой других заданий.
Внутри столбца procs вы найдете столбцы r и b. Они отображают общее количество процессов, ожидающих перехода в процессор, и общее количество функций в состоянии сна.
В большинстве случаев значения в столбце b равны 0.
2: столбец памяти
В столбце памяти отображается информация об общем объеме свободной и используемой памяти в системе. Этот вывод похож на бесплатную команду.
В столбце Память есть еще четыре столбца:
- Swapd
- Бесплатно
- Бафф
- Кеш
На вкладке подкачки или подкачки отображается объем памяти, который уже был обменен (заменен) в файл подкачки или раздел подкачки.
В столбце «Свободно» вы найдете информацию о количестве неиспользуемой памяти. (нераспределенная память).
Столбец буферов отображает информацию об объеме используемой памяти. (выделенная память).
Наконец, в столбце кеша вы найдете информацию о выделенной памяти, которую можно обменять на диск, если требуются ресурсы.
3: Поменять местами столбец
Затем у нас есть столбец подкачки, используемый для отчета о скорости, с которой память переключается в и из файла или раздела подкачки.
Используя swapd и общую активность диска, vmstat позволяет рассчитать взаимосвязь активности диска с системой подкачки.
В столбце подкачки вы также найдете si и столбцы, используемые для отображения объема памяти, передаваемой из подкачки в основную память каждую секунду, и количества памяти, перемещаемой для подкачки из основной памяти каждую секунду.
4: столбец ввода / вывода
В следующем столбце вы найдете информацию о системных действиях ввода и вывода, выраженную в чтении и записи на блок. Под столбцом ввода-вывода находятся столбцы bi и bo, представляющие количество блоков, получаемых с диска в секунду, и количество блоков, отправляемых на диск в секунду, соответственно.
5: Системный столбец
В системном столбце отображается информация об общем количестве системных процессов в секунду. В системном столбце есть еще два столбца, i.е., в и cs. В первом столбце показаны системные прерывания (включая прерывания от системных часов) в секунду. В столбце cs указано количество переключений контекста, сделанных системой для успешной обработки всех задач.
6: столбец ЦП
Последний столбец - ЦП. В этом столбце отображается использование ресурсов ЦП. Столбец CPU имеет четыре основных столбца под ним.
- нас
- св
- я бы
- ва
Первый столбец (us) представляет собой общее количество времени, затраченного процессором на задачи, созданные пользователем.
В следующем столбце (sv) отображается информация, связанная со временем, которое процессор использует для процессов ядра.
Столбец id показывает количество времени, которое процессор провел в режиме ожидания.
Наконец, столбец (wa) показывает общее количество времени, затраченного процессором на операции ожидания ввода-вывода.
Добавление всех значений в столбцы ЦП дает в сумме 100, представляя процент доступного времени.
Заключение
В этом руководстве мы узнали, как использовать vmstat, инструмент, используемый для отчета об использовании ресурсов системы. Мы также рассмотрели, как это работает и как мы можем запросить конкретную информацию. Мы также обсудили, как понять вывод vmstat и использовать его для устранения проблем с системными ресурсами.