10 полезных утилит для мониторинга Linux-сервера


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

# 1 – htop – информативная версия top

Команда htop является усовершенствованной версией всем нам знакомой команды top. Кроме информации об использовании системных ресурсов процессами, которая мало чем отличается от команды top, но представлена в более удобном виде, команда htop строит псевдографические графики загрузки каждого ядра процессора, памяти и свопа. В принципе практически то же самое, что и top, но красивее и нагляднее.


htop – более информативная версия top

#2 – atop – продвинутый монитор процессов

Если команда htop – более наглядная версия top, то atop – совсем другая зверушка. Это продвинутый интерактивный монитор производительности. В отличие от top, выводит только новые изменения об активных системных процессах. Позволяет контролировать нагрузку процессора, памяти, накопителя, сети, а также просматривать распределение нагрузок по работающим процессам. В Ubuntu и Debian запускается автоматически и постоянно записывает информацию о процессах в /var/log/atop.log.


atop – монитор производительности

#3 – apachetop – мониторинг веб-сервера в реальном времени

Утилита apachetop не устанавливается по умолчанию, для ее установки нужно инсталлировать одноименный пакет. Опция –f позволяет задать файл access_log, если его расположение отличается от стандартного или если нужно мониторинг журнал доступа определенного виртуального хоста. Предоставляет информацию о текущем положении дел веб-сервера и даже о URL, к которым обращаются в данный момент.


apachetop

#4 – mytop – мониторинг MySQL

Если есть утилита мониторинга Apache, то, вероятно, должна быть и утилита мониторинга MySQL. Для ее запуска нужно указать три параметра:

  1. -u – задает имя пользователя;
  2. -p – задает пароль;
  3. -d – база данных.

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


Утилита mytop: мониторинг MySQL

#5 – iotop – мониторинг ввода/вывода

Сервер тормозит? Есть подозрение на дисковую подсистему? Утилита iotop позволяет определить процесс, узурпировавший всю подсистему ввода/вывода.


Утилита iotop

#6 – iftop – мониторинг сетевого интерфейса

Утилита iftop похожа на утилиту top, но вместо проверки использования процессора она прослушивает сетевой трафик на выбранных интерфейсах и отображает таблицу текущего использования. Она позволяет ответить на вопрос: "Почему у мое соединение такое медленное?".


Утилита iftop

#7 – jnettop – еще один монитор сетевого интерфейса

На первый взгляд похожа на iftop, но отличия есть и существенные. Если iftop показывает только обмен между узлами, то jnettop показывает и URL, и передаваемый в данный момент файл. Можно увидеть, какие файлы (картинки, сценарии, HTML-страницы и т.д.) передаются в данный момент клиентам. Не устанавливается по умолчанию, для ее установки нужно инсталлировать одноименный пакет.


Утилита jnettop

#8 – iptraf – мониторинг трафика

Утилита предоставляет различные полезные метрики вроде счетчика TCP-пакетов, счетчика байтов, статистику по интерфейсу, индикаторы активности и т.д.


Утилита iptraf

#9 – ngrep – утилита для профессионала

Утилита ngrep – это то же самое, что и обычный grep, но для сетевого уровня. Она позволяет просмотреть все передаваемые пакеты. Есть возможность задания фильтров, в том числе с помощью регулярных выражений. Примеры использования ngrep можно найти по этой [ссылке].


Утилита ngrep

#10 - nmon – швейцарский нож

Утилита nmon – мониторинг на все случаи жизни. Запустите ее и выберите объект, по которому вы хотите получить статистику – процессор, память, диски, ядро, сеть, виртуальная память и т.д.


Утилита nmon