Может, ты хочешь возразить, сказать, что есть ATOP/HTOP и прочие товарищи. Но посмотреть все интересующие параметры удобнее онлайн, не используя SSH, правда?
Для наблюдений за состоянием железа обычно мониторится процессор, оперативка, жесткий диск, количество различного типа трафика (реже температура отдельных узлов, а также температура "внутренностей") и средние значения по этим же показателям. Итак, погнали шерстить инструменты!
Scout realtime
Scout realtime – опенсорсный программный продукт. Позиционируется как удобная альтернатива консоли с выводом обновляемых графиков в реальном времени. Сделать какие-то выводы, анализируя график, проще, чем мерцающие цифры, которые постоянно меняются в терминале.
Эта штуковина получает
данные для отрисовки из procfs
, поэтому
пользователи FreeBSD и MacOS не смогут
оценить всю прелесть данного софта.
Установить и запустить продукт можно так (все забиндится на 5555 порту):
Чтобы начать просмотр, создай SSH-туннель:
После этих действий
открывай браузер: http://localhost:5555/
.
Если firewall блокирует все подряд, то попроси его тебя пропустить (но тогда твою стату смогут видеть все):
Nagios
Самая распространенная система для наблюдения за железом. Очень мощный инструмент, позволяющий мониторить практически любой узел в сети: DVR-ку, камеру, ноут, коммутатор, телефон и даже дорогущий пограничный роутер за 750 000 р. Софтина построена на наборе конфигов для каждой группы событий или объектов. Рулит этим всем движок, а движком – ты, через веб-морду.
Для установки сделай следующее:
Создай юзера и группу для запуска нагоиса:
Теперь создай юзера для запуска Apache:
Далее скачай свеженькую версию по ссылке выше, разархивируй и начинай компилить:
В
/usr/local/nagios/etc/
найди contact.cfg
(контакты для оповещений) и заполни
его:
После этого создай
пароль nagiosadmin
, чтобы он смог попасть на веб-морду:
Включи на веб-сервере поддержку cgi и перезагрузи сервак:
А теперь запусти Nagios:
Проследуй по адресу http://localhost/nagios
.
Munin
Здесь используется
RRDTool и Perl. Допиливать что-то свое (плагины, модули и прочее) можно на
любом языке. Munin имеет архитектуру master/node
– мастер коннектится ко всем
нодам и опрашивает их через постоянные промежутки времени. Все полученные
данные он сохраняет в RRD-файлах и (при необходимости) обновляет графики. Одним
из преимуществ софта является простота создания графиков.
Для установки мастера сделай следующее:
В файлике nano /etc/munin/munin.conf
найди строку
[localhost.localdomain]
и отредактируй по своему усмотрению (это отображаемое имя хоста на графиках). Например,
так: srv-01.proglib.io
Это сделай на всех нодах:
В файлике nano /etc/munin/munin-node.conf
найди строку #host_name
localhost.localdomain
. Раскомментируй ее и впиши туда имя сервака и имя ноды (host_name srv-01.proglib.io
).
Настрой nginx:
Перезагрузи его:
И создай юзера:
New Relic
New Relic – не сильно популярная система в наших русских кругах, но весьма хороший инструмент, правда, платный. С помощью него можно отслеживать все – от потребления ресурсов каким-либо приложением и состояния железа до уровня удовлетворенности посетителей.
Установить продукт можно на любую систему, даже на Android/iOS и в облако. Есть поддержка горы ЯП, среди них: Java, Python, C, Go и т. д.
Для установки создай конфиг и добавь в него следующее:
Потом активируй GPG-ключ:
Создай репозиторий агента, используя команду:
Обнови apt-кеш:
И запусти установку:
Готово!
Zabbix
Одна из популярнейших систем мониторинга. Она работает в связке MySQL + PHP (хотя с легкостью можно юзать и PostgreSQL, SQLite или Oracle). Эта штука не просто попискивает в динамики, чтобы тебя, уснувшего, поднять с клавиатуры, так еще и смс-ки может отправлять, стучаться на почту и во всякие мессенджеры, а также выполнить определенное задание при срабатывании триггера. Графики, карта сети и комплексные отчеты – это вообще не обсуждается.
Для установки сделай следующее:
С официального сайта стянем пакетик:
И добавим репу:
Далее установи пакет для Zabbix с поддержкой MySQL:
Создай базу и специального юзера:
В папке со скачанным пакетом найди и запусти скрипт, который создаст тебе структуру БД:
Перезагрузи все:
Теперь можно перейти на
IP-адрес сервера/zabbix
и
увидеть веб-морду.
Collectd
Collectd – это простенькая система сбора инфы с машины, на которой она стоит. Обычно собранную инфу отправляют в Graphite. У данного продукта есть невероятное количество модулей и плагинов, которые расширяют функционал – это большой плюс. Установим же!
Для дальнейшей настройки останови демон:
Далее редактируем файлик
/etc/collectd/collectd.conf
:
В этот же конфиг внеси настройки мускли:
На очереди Nginx. Поставь последнюю версию (или обновись) и отредактируй
/etc/nginx/conf.d/your.domain.conf
:
После этого в конфиг выше добавь такое:
Готово!
Monitorix
Еще одно простое решение для мониторинга. Поможет тебе следить как за аппаратными ресурсами, так и за софтом. Ты сможешь получать данные от: сетевушек, термодатчиков, памяти, процессора и практически любого ПО на сервере.
Для установки сделай следующее:
После установки все
запустится само. Для добавления/редактирования хостов используй конфиг: /etc/monitorix/monitorix.conf
.
В конце перегрузи софтину:
И проследуй по адресу: http://localhost:8080/monitorix
Комментарии