В этом посте я хочу обсудить средства мониторинга, которыми я пользуюсь в повседневной работе. Все эти утилиты ставятся простой командой: apt-get install <название_утилиты>, поэтому заострять на этом внимание я не буду. Также не вижу особого смысла расписывать отображаемые данные. Лучше один раз поставить их и увидеть всё самому, чем смотреть на скриншоты. 🙂
Для мониторинга общего состояния серверов я пользуюсь прекрасной системой:
Munin
Я уже писал про установку munin-ноды. Сервер, где собираются данные со всех серверов, настраивается не менее просто. Смотрим файл /etc/munin/munin.conf и добавляем в него сервера, с которых будет собираться информация.
В munin есть довольно много плагинов, которые позволяют мониторить практически что угодно. А если нужно снимать какие-то специфические данные, можно написать свой плагин на perl’е.
htop
Прекрасный вьюер процессов, работающий в многоядерных системах. Отображает загрузку ядер процессора, количество процессов, использование памяти каждым процессом и другую информацию, позволяющую выявить самый прожорливый процесс.
iotop
Позволяет смотреть использование каналов ввода/вывода. Собирает информацию от ядра Linux и показывает её в виде таблицы использования каналов ввода/вывода каждым процессом системы. Утилита помогает понять, почему жёсткий диск так долго шуршит и чем именно он занят.
atop
Монитор производительности, отображающий информацию только об активных системных ресурсах и процессах, и выводящий только изменения, произошедшие с предыдущего показа. Через равные промежутки времени показываются загруженность ЦП, памяти, область подкачки, дисков и сети, а также доля в загрузке процессора каждым активным процессом в системном и пользовательском режимах, рост резидентной памяти, приоритет, имя пользователя. Для процессов, которые завершили свою работу со времени последнего обновления, выводится полный отчёт о потреблённых ими ресурсах.
iftop
Монитор сетевых интерфейсов. Собирает информацию о сетевом трафике и позволяет найти ответ на извечный вопрос «почему сеть так тормозит?» 🙂
dnstop
Монитор DNS-трафика. С его помощью можно увидеть, информация о каких доменах запрашивается, насколько успешно это выполняется и какие ошибки возникают в работе DNS.
mytop
Неплохая утилита для мониторинга производительности MySQL. Отображает количество подключений, статистику запросов, что в итоге помогает понять что именно занимает больше всего времени в работе MySQL.