Мониторинг нагрузки — одна из наиболее важных задач, особенно если вы имеете дело с серверами. Это не только дает вам представление о том, как используются ресурсы вашей системы, но также помогает диагностировать проблемы, связанные с производительностью. В этой статье мы обсудим, как осуществлять мониторинг нагрузки в Linux с помощью инструмента atop.
Примечание : все примеры, использованные в статье, протестированы на Ubuntu 14.04.
На вершине
Согласно справочной странице, инструмент командной строки atop
представляет собой интерактивный монитор для просмотра нагрузки на систему Linux. Он показывает, как заняты аппаратные ресурсы вашей системы, включая процессор, память, диск и сеть, с точки зрения производительности. Не только это, но и показывает, какие процессы отвечают за указанную
На вершине
trong>Примечание : загрузка диска отображается, если в ядре для каждого процесса активен «учет хранилища» или если установлен патч ядра «cnt». Аналогичным образом, сетевая нагрузка отображается для каждого процесса только в том случае, если установлен патч ядра «cnt».Загрузить и установить
Пользователи систем на базе Debian (таких как Mint и Ubuntu) могут загрузить и установить инструмент с помощью следующей команды:
sudo apt-get install atop
Те, кто использует другие дистрибутивы Linux, могут использовать соответствующие инструменты управления пакетами. Например, yum
в случае Red Hat. Вы также можете скачать инструмент с Официальный веб-сайт .
Поверх вывода
После установки вы можете запустить инструмент, выполнив следующую команду из командной строки:
sudo atop
Вот пример вывода:
Как видите, это большой объем инфо
Загрузить и установить
е части: уровень системы и уровень процесса. Первый состоит из следующих строк вывода:PRC : эта строка содержит общее время процессора, затраченное в системном режиме («sys») и в пользовательском режиме («user»), общее количество процессов, присутствующих в данный момент (‘# proc’), общее количество потоков, находящихся в данный момент в состояниях «работает» (‘#trun’), «спящий прерываемый» (‘#tslpi’) и «спящий непрерываемый» (‘#tslpu’), количество процессов-зомби («#zombie»), количество системных вызовов клонирования («клонов») и количество процессов, завершившихся в течение интервала («#exit», который показывает «?», если учет процессов не используется). ).
ЦП : эта строка содержит п
Поверх вывода
раченного в режиме ядра всеми активными процессами («sys»), в пользовательском режиме («пользователь») для всех активных процессов (включая процессы, выполняющиеся со значением nice больше нуля), для обработки прерываний («irq»), включая softirq, а также процент неиспользованного времени процессора, когда ни один процесс не ожидает дискового ввода-вывода («простой») и пока хотя бы один процесс ожидал дискового ввода-вывода («ожидание»). В случае многопроцессорной системы дополнительная строка отображается для каждого отдельного процессора (с «процессором» в нижнем регистре), отсортированного по активности.CPL : эта строка содержит информацию о загрузке ЦП — количество потоков, которые доступны для запуска на ЦП (т. е. являются частью очереди выполнения) или ожидают дискового ввода-вывода, число переключений контекста («csw»), количества обслуживаемых прерываний («intr») и количества доступных процессоров.
MEM : эта строка содержит информацию, связанную с потреблением памяти — общий объем физической памяти («tot»), объем памяти, которая в данный момент свободна («свободно»), объем память, используемая в качестве страничного кэша («кэш»), объем памяти внутри страничного кэша, который необходимо сбросить на диск («грязный»), объем памяти, используемый для метаданных файловой системы («бафф») и объем памяти, используемой для ядра malloc («slab»).
SWP : эта строка содержит общий объем пространства подкачки на диске («tot») и объем свободного пространства подкачки («free»), а также выделенное пространство виртуальной памяти («vmcom»). ) и максимальный предел выделенного пространства (‘vmlim’)
DSK : эта строка содержит информацию, связанную с использованием диска — часть времени, в течение которой устройство было занято обработкой запросов («занято»), количество выданных запросов на чтение («чтение»), количество выданных запросов на запись («запись»), количество Кибайт на одно чтение («КиБ/r»), количество Кибайт на запись («КиБ/w»), количество Мибайт в секунду, пропускная способность для чтения ( «MBr/s»), количество миллибайт в секунду для записи («MBw/s»), средняя глубина очереди («avq») и среднее количество миллисекунд, необходимое для запроса («avio») для поиска., задержка и передача данных.
NET : это информация, связанная с использованием сети (TCP/IP). Одна строка отображается для активности транспортного уровня (TCP и UDP), одна строка для уровня IP и одна строка на активный интерфейс.
За информацией системного уровня следует информация уровня процесса, которая, как следует из названия, содержит подробную информацию, связанную с процессами, использование ресурсов которых изменилось в течение последнего интервала (интервал по умолчанию составляет 10 секунд).
Важным моментом, который стоит упомянуть, является то, что atop использует цвета (красный, голубой и другие) для обозначения критичности потребления ресурсов на уровне системы. Например, когда ресурс превысил критический процент занятости, вся линия экрана окрашивается в КРАСНЫЙ цвет.
Примечание : просмотрите справочная страница команды, чтобы получить более подробную информацию о выводе команды.
Интерактивные команды
Вы можете управлять выводом команды atop с клавиатуры. Например, нажмите m
, чтобы отобразить выходные данные, связанные с памятью, d
для выходных данных, связанных с диском, n
для выходных данных, связанных с сетью, v
для различных характеристик процесса, c
для командной строки процесса и т. д.
Вот снимок экрана с информацией об уровне процесса, созданной командой atop при нажатии c
:
Как видите, в выводе отображается командная строка процесса.
Заключение
Atop — это очень полезная команда мониторинга нагрузки в Linux, которая не только предоставляет массу информации о системных ресурсах, но и различные способы настройки и управления ее выводом. Чтобы узнать об этом больше, рекомендуется пройти справочная страница команды .