Как стать автором
Обновить

Monitorix - за минуту развёртываем мониторинг Linux сервера

Время на прочтение3 мин
Количество просмотров22K

Постановка задачи

Мне нужен был достаточно простой мониторинг на сервере, и не хотелось долго возиться с его настройкой.

Нужно:

  • мониторить загрузку сервера в течении суток

  • динамика загрузки процессора

  • динамика загрузки оперативной памяти

  • динамика свободного места на сервере

Не нужно:

  • отправлять алерты при проблемах

  • слишком подробный сбор статистики

  • отдельное копание с настройками мониторинга и его 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>

Примеры графиков

Аптайм, загрузка оперативки
Аптайм, загрузка оперативки
Загрузка процессора
Загрузка процессора
Использование сети
Использование сети
Какие процессы жрут память и проц
Какие процессы жрут память и проц
Статистика по MySQL
Статистика по MySQL

Если нужен только базовый мониторинг производительности сервера и быстро - Monitorix  - отличный выбор!

Теги:
Хабы:
Всего голосов 10: ↑10 и ↓0+10
Комментарии30

Публикации

Истории

Работа

Ближайшие события

15 – 16 ноября
IT-конференция Merge Skolkovo
Москва
22 – 24 ноября
Хакатон «AgroCode Hack Genetics'24»
Онлайн
28 ноября
Конференция «TechRec: ITHR CAMPUS»
МоскваОнлайн
25 – 26 апреля
IT-конференция Merge Tatarstan 2025
Казань