Мониторинг загрузки процессора через команду Top

Описание использования утилиты top для мониторинга процессов и загрузки CPU.

Для контроля работы сервера и своевременного выявления процессов, потребляющих чрезмерное количество ресурсов, на VPS и выделенных серверах удобно использовать утилиту top, которая отображает нагрузку на CPU, оперативную память и swap.

Top позволяет выводить список запущенных процессов в виде таблицы и оценивать, сколько ресурсов потребляет каждый процесс, включая нагрузку на дисковую подсистему. Эта информация помогает оптимизировать работу сервера и вовремя принимать меры при чрезмерной нагрузке.

Для начала работы подключитесь к серверу по SSH и введите команду top. После нажатия Enter вы увидите таблицу с перечнем процессов, изначально отсортированных по убыванию использования процессора.

Запуск команды top и расшифровка таблицы

file

Первые два столбца — номер процесса (PID) и имя пользователя, который его запустил (USER).

Следующие два столбца показывают текущий приоритет процесса (PR) и приоритет, присвоенный процессу командой NICE (NI).

Остальные колонки отражают уровень потребления ресурсов процессом:

  • VIRT — виртуальная память, используемая процессом
  • RES — физическая память, занятой процессом
  • SHR — общий объём памяти, который процесс делит с другими
  • S — текущий статус процесса: R — running, S — sleeping, Z — zombie
  • %CPU — процент использования процессором
  • %MEM — процент использования ОЗУ
  • TIME+ — время работы процесса с момента запуска
  • COMMAND — имя команды (программы), инициировавшей процесс

Расшифровка данных перед таблицей

Полезная информация содержится не только в таблице, но и в пяти строках, предшествующих ей — это сводные данные о всех процессах.

Первая строка — общая информация о загрузке системы (top)

file

  • текущее время
  • up — время работы системы с момента запуска
  • user — количество пользователей, подключённых к системе
  • load average — средняя загрузка системы за 1, 5 и 15 минут

Считается нормой, если показатель не превышает 1 для одноядерных процессоров. Значение load average, равное количеству ядер, считается предельным.

Вторая строка — статистика процессов (task)

file

  • total — общее количество процессов
  • running — количество активно работающих процессов
  • sleeping — количество процессов, ожидающих события
  • stopped — количество остановленных процессов
  • zombie — количество процессов, ожидающих завершения родительского процесса

Третья строка — статистика использования CPU (cpu)

file

  • us — процент использования CPU пользовательскими процессами
  • sy — процент использования CPU системными процессами
  • ni — процент использования CPU процессами с изменённым приоритетом (nice)
  • id — процент времени простоя CPU
  • wa — процент времени, когда CPU ждёт завершения операций ввода-вывода
  • hi — Hardware IRQ (аппаратные прерывания)
  • si — Software Interrupts (программные прерывания)
  • st — Steal Time — ресурсы CPU, "заимствованные" гипервизором для других задач; на физических серверах равно нулю

Четвёртая и пятая строки — информация об использовании оперативной памяти и swap. Значения идут в порядке: общее количество памяти (total), занято (used), свободно (free), кэш/буферы (buffers).

file

Добавление столбцов и сортировка таблицы top

По умолчанию таблица сортируется по использованию CPU (%CPU).

  • Чтобы отсортировать процессы по памяти (%MEM) — нажмите Shift+M
  • Для сортировки по времени работы процесса (TIME+)Shift+T
  • Для сортировки по PID — Shift+N
  • Чтобы вернуться к сортировке по CPU — Shift+P

Не все сортировки доступны через горячие клавиши. Например, чтобы определить процессы с наибольшим использованием SWAP, используйте меню выбора полей Shift+F.

file

С помощью клавиш навигации выберите SWAP (или другой параметр), нажмите d, чтобы добавить его в таблицу (рядом появится символ «*»). Для сортировки по выбранному полю нажмите s и выйдите из меню (ESC). Чтобы убедиться, что сортировка работает, нажмите x — колонка с выбранным параметром выделится жирным.

file

Примечание

Существует более удобная утилита atop. Подробнее о её функционале можно узнать на этой странице.


Помощь

Если у вас возникли трудности или появились дополнительные вопросы, обращайтесь в службу поддержки через систему тикетов.

Обновлено:
Нужна помощь?Наши инженеры бесплатно помогут с любым вопросом за считанные минутыНаписать нам