Обзор систем мониторинга серверов. Заменяем munin на…

Обзор систем мониторинга серверов. Заменяем munin на…Очень долго хотел написать статью, но не хватало времени. Нигде (в том числе на Хабре) не нашёл такой простой альтернативы munin, как описанная в этой статье.

В большинстве случаев для проекта хватает одного сервера и мне как старшему разработчику (и просто ответственному человеку) всегда нужно было контролировать его ресурсы, чтобы понимать когда мы упрёмся в его ограничения. Для этих целей было достаточно munin.

Интерфейс

Munin

Он легко устанавливается и имеет небольшие требования. Он написан на perl и использует кольцевую базу данных (RRDtool ).

Пример установки

Выполняем команды:

apt-get install munin munin-node

service munin-node start

Теперь munin-node будет собирать метрики системы и писать их в бд, а munin раз в 5 минут будет генерировать из этой бд html-отчёты и класть их в папку /var/cache/munin/www

Для удобного просмотра этих отчётов можно создать простой конфиг для nginx

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

Для мониторинга ресурсов сервера его всегда хватало, а для мониторинга доступности сервера использовался бесплатный сервис наподобие uptimerobot. com .

Я использую такую комбинацию для мониторинга своих домашних проектов на виртуальном сервере.

Если проект вырастает из одного сервера, тогда на втором сервере достаточно установить munin-node, а на первом — добавить в конфиге одну строчку для сбора метрик со второго сервера. Графики по обоим серверам будут раздельные, что не удобно для просмотра общей картины — на каком сервере заканчивается свободное место на диске, а на каком оперативная память. Эту ситуации можно исправить добавив в конфиг уже десяток строчек для агрегации одного графика с метриками с обоих серверов. Соответственно целесообразно это делать только для самых основных метрик. Если в конфиге сделать ошибку, то придётся долго читать в логах, что именно к ней привело и не найдя информации попытаться исправить ситуацию «методом тыка».

Стоит ли говорить, что для большего количества серверов это превращается в самый настоящий ад. Может это из-за того, что munin был разработан в 2003 году и изначально не был рассчитан на это.

Альтернативы munin для мониторинга нескольких серверов

Определил для себя необходимые качества, которыми должна обладать новая система мониторинга:

  • количество метрик не меньше чем у munin (у него их около 30 базовых графиков и ещё около 200 плагинов в комплекте)
  • возможность написания собственных плагинов на bash (у меня было два таких плагина)
  • иметь небольшие требования к серверу
  • возможность вывода метрик с разных серверов на одном графике без правки конфигов
  • уведомления на почту, в slack и telegram
  • Time Series Database более мощную чем RRDtool
  • простая установка
  • ничего лишнего
  • бесплатно и с открытым исходным кодом

Я перечислю, всё что я рассматривал.

This entry was posted in Для чего нужен мониторинг серверов? and tagged . Bookmark the <a href="http://monitorzon.ru/obzor-sistem-monitoringa-serverov-zamenyaem-munin-na/" title="Permalink to Обзор систем мониторинга серверов. Заменяем munin на…" rel="bookmark">permalink</a>.

Comments are closed.