Постановка задачи
Мне нужен был достаточно простой мониторинг на сервере, и не хотелось долго возиться с его настройкой.
Нужно:
мониторить загрузку сервера в течении суток
динамика загрузки процессора
динамика загрузки оперативной памяти
динамика свободного места на сервере
Не нужно:
отправлять алерты при проблемах
слишком подробный сбор статистики
отдельное копание с настройками мониторинга и его GUI
В общем нужен был простой в использовании мониторинг, который легко ставится и сразу работает без настроек.
Установка Monitorix
apt-get update
apt-get install monitorix
Собственно всё, на этом установка закончена.
После запуска будет доступен по адресу ip сервера:8080/monitorix
У меня этот порт уже занят - не хотел на него ещё и мониторинг вешать - поэтому пришлось поменять порт по умолчанию.
Настройки
Настройки лежат в папке /etc/monitorix/ в файле monitorix.conf :
Файл настроек
Настройка приложения:
title = Place a title here # Заголовок страницы
hostname = Monitorix test # Имя хоста
theme_color = black # Цвет темы
refresh_rate = 150
iface_mode = graph
enable_zoom = y
netstats_in_bps = n
disable_javascript_void = n
temperature_scale = c
show_gaps = n
global_zoom = 1
max_historic_years = 1
accept_selfsigned_certs = y
include_dir = /etc/monitorix/conf.d
base_dir = /var/lib/monitorix/www/
base_lib = /var/lib/monitorix/
base_url = /monitorix
base_cgi = /monitorix-cgi
Настройка веб сервера:
<httpd_builtin>
enabled = y # Включать собственный веб сервер или нет
host = # Адрес который будет прослушивать сервер
port = 8080 # Порт - заменил на 8888
user = nobody
group = nobody
log_file = /var/log/monitorix-httpd
hosts_deny = # Заблокированные хосты
hosts_allow = # Разрешенные хосты
<auth>
enabled = n
msg = Monitorix: Restricted access
htpasswd = /var/lib/monitorix/htpasswd
</auth>
</httpd_builtin>
В разделе «Graphs (de)activation» мы можем отключить(n) или включить(y) нужные нам графики. Просто ставим напротив нужного графика соответствующую букву: n — отключить, y — включить.
Ниже этого раздела уже идут индивидуальные настройки каждого графика.
После изменения каких либо параметров в файле конфигурации нужно выполнить команду
systemctl restart monitorix
после чего применятся все изменения
Установка и настройка мониторинга сервера у меня заняла 2 минуты.
Во всей настройке есть только 1 сложный момент: настройка подключения для мониторинга MySQL - его нужно будет настроить отдельно:
Сначала нужно создать пользователя, через которого будем подключаться к MySQL - назовём его например MonitorixMySQLUser.
В папке /etc/monitorix/ в файле monitorix.conf нужно долистать до пункта # MYSQL graph
monitorix.conf
.........
# MYSQL graph
# -----------------------------------------------------------------------------
<mysql>
conn_type = host #подключаемся через хост
list = localhost #адрес сервера, где развёрнут
#list = /var/lib/mysql/mysql.sock
<desc>
localhost = 3306, MonitorixMySQLUser, MonitorixMySQLUserPassword
</desc>
rigid = 0, 2, 0, 0, 0, 0
limit = 100, 100, 100, 100, 100, 100
</mysql>
При этом есть 1 неочевидный момент: только эта настройка перетирается другой настройкой, которая лежит в папке /etc/monitorix/conf.d/ в файле 00-debian.conf - в нём настроено подключение к MySQL через сокет и его необходимо поменять в соответствии с настройками в файле monitorix.conf. В итоге файл должен выглядеть следующим образом:
00-debian.conf
# This is the Debian/Ubuntu configuration file to be added in the directory
# /etc/monitorix/conf.d. It will override some default options without having
# to change any line of the main configuration file.
<httpd_builtin>
user = monitorix
group = monitorix
</httpd_builtin>
<mysql>
conn_type = host
list = localhost
#list = /run/mysqld/mysqld.sock
<desc>
localhost = 3306, MonitorixMySQLUser, MonitorixMySQLUserPassword
</desc>
</mysql>
<apcupsd>
cmd = /sbin/apcaccess
</apcupsd>
Примеры графиков
Если нужен только базовый мониторинг производительности сервера и быстро - Monitorix - отличный выбор!