Сравним несколько популярных OpenSource средств мониторинга сервера: Munin, SysUsage, и Monitorix.
Munin
Munin является сетевым инструментом мониторинга ресурсов сервера. Утилита позволяет получать данные как с одного, так и с нескольких серверов. Статистика отображается в виде графиков. Архитектура инструмента построена на использовании плагинов, что позволяет использовать только необходимые утилиты без избыточного функционала. Написан на Perl. Собираемые данные обрабатываются утилитой RRDtool, которая позволяет просматривать графики статистики через web-интерфейс.
Архитектура Master/Nodes позволяет собирать данные со многих устройств в сети на master-сервер.
Сайт проекта: http://munin-monitoring.org
Страница загрузки: https://munin-monitoring.org/download/
Репозиторий на GitHub: https://github.com/munin-monitoring/munin
Документация: http://guide.munin-monitoring.org/en/latest/tutorial/advanced-features.html
Поддерживаемые ОС:
- Linux
- FreeBSD
- NetBSD
- Solaris
- AIX
- OS X / Darwin (supported in trunk)
- HP-UX
Общие возможности
- Разбиение устройств на группы для более удобного мониторинга
- Аналитика утилизации сетевых интерфейсов
- Поддержка SNMP
- Триггеры оповещения на android, e-mail, SMS
- Просмотр статистики через web-интерфейс
- Мониторинг большого количества устройств
- Поддержка IPv6
SysUsage
Утилита предназначена для мониторинга состояния системных ресурсов и устройств сервера. Статистика собирается и отображается с помощью утилит RRDtool и sysstat. Возможен мониторинг удалённых устройств, а также устройства, на котором установлена утилита. Статистика отображается в текстовом и графическом виде. Поддерживается большое количество дополнительных плагинов, значительно расширяющих базовый функционал. Проект написан на Perl. Настраивается оповещение о событиях по e-mail и SMS.
Сайт проекта: http://sysusage.darold.net
Страница загрузки: https://sourceforge.net/projects/sysusage/
Репозиторий на GitHub: https://github.com/darold/sysusage
Поддерживаемые ОС: Любые Unix-платформы
Общие возможности
- Оповещение по sms, e-mail
- Возможность настройки получения данных от других серверов по SSH
- Возможности мониторинга
Процессор
- Распределение ресурсов процессора (user, nice, system)
- Общая статистика работы процессора (iowait, процент загруженности)
Память
- Использование памяти
- Использование swap
- Утилизация Hugepage
Ввод-вывод
- Количество переключений контекста в секунду
- Количество прерываний в секунду
- Page swapping
- Статистика I/O запросов
- Статистика I/O блоков
Сеть
- Количество TCP соединений в секунду
- Количество TCP сегментов в секунду
- Количество используемых сокетов (TCP, UDP)
- Количество сокетов в состоянии TIME_WAIT
- Использование сетевого интерфейса
- Статистика по пакетам (bad, drop, коллизии)
Устройства
- Временные затраты на операции ввода-вывода
- Пропускная способность дисков
- Температура жесткого диска, процессора, материнской платы
- Количество оборотов вентилятора системы охлаждения
Файлы
- Количество открытых файлов
- Свободное место на смонтированных разделах
Процессы
- Средняя загрузка процессора
- Количество созданных процессов в секунду
- Количество запущенных процессов
- Количество активных потоков
- Количество задач, заблокированных из-за ожидания системы ввода-вывода
Monitorix
Утилита предназначена для мониторинга состояния системных ресурсов и устройств сервера. Данный инструмент обладает максимальным количеством опций для мониторинга. Возможен мониторинг неограниченного количества удалённых устройств, а также устройства, на котором установлена утилита. Статистика отображается в графическом виде. Присутствует поддержка сторонних плагинов. Проект написан на Perl. Настраивается оповещение о событиях по e-mail, SMS.
Сайт проекта: http://www.monitorix.org
Страница загрузки: http://www.monitorix.org/downloads.html
Репозиторий на GitHub: https://github.com/mikaku/Monitorix
Документация: http://www.monitorix.org/documentation.html
Поддерживаемые ОС:
- RedHat/Fedora/CentOS
- Arch Linux
- FreeBSD 9, 10
- Debian/Ubuntu
- Slackware
Общие возможности
- Мониторинг состояния сервера
- Сбор данных с неограниченного количества устройств
- Оповещения по sms, e-mail
- Встроенный HTTP-сервер с поддержкой авторизации и настройки доступа по IP-адресу (белые и чёрные списки)
- Отправка графиков на e-mail
Возможности мониторинга
- Загруженность системы
- Использование ядра (I/O, контексты, прерывания)
- Использование ядра с разбивкой по процессорам
- Поддержка HP ProLiant
- Температура процессора, материнской платы, видеокарты
- Обороты вентиляторов системы охлаждения
- Напряжение на процессоре, материнской плате, видеокарте
- Температура и состояние жесткого диска
- Использование файловой системы
- Статистика работы ZFS
- Трафик и утилизация сетевых интерфейсов (до 10 устройств)
- Статистика работы Netstat
- Статистика работы libbirt
- Статистика потребления ресурсов процессами
- Статистика работы почтового сервера
- Статистика работы FTP
- Статистика работы Apache
- Статистика работы Nginx
- Статистика работы LightHttpd
- Статистика работы MySQL
- Статистика Varnish
- Статистика работы Squid
- Статистика работы NFS сервера и клиента
- Статистика работы BIND сервера
- Статистика работы NTP
- Статистика работы Chrony
- Статистика работы сервера IceCast
- Статистика работы Fail2ban
- Статистика работы Wowza