Установка
sudo install -m 755 elx-healthmonitor-linux-amd64 /usr/local/bin/elx-healthmonitor
sudo /usr/local/bin/elx-healthmonitor --install-service
sudo systemctl enable --now elx-healthmonitor
# веб-интерфейс: http://<сервер>:8555
sudo apt-get install -y smartmontools
| Путь | Что это |
|---|---|
/usr/local/bin/elx-healthmonitor | Исполняемый файл |
/etc/elx-healthmonitor/config.json | Настройки, права 0600 |
/var/lib/elx-healthmonitor/history.db | История метрик и журнал событий |
/etc/systemd/system/elx-healthmonitor.service | Юнит автозапуска |
--config <путь> файл конфигурации
--listen <адрес> адрес веб-интерфейса, напр. :8555
--log-level <уровень> debug | info | warn | error
--version версия и дата сборки
Что собирать
Раздел «Настройки» решает, что опрашивается, как часто и что исключить; раздел «Оповещения» — когда вы об этом узнаете. Изменения применяются сразу, без перезапуска. Правка config.json с перезапуском службы даёт тот же результат.
Оповещения
Правило — это условие, порог и выдержка. Выдержка и есть самое важное: без неё мониторинг сообщает о каждом мгновенном всплеске, и через неделю его письма перестают читать.
| За чем следить | Порог, который работает |
|---|---|
| Заполнение файловой системы | 85 процентов — успеть среагировать, не торопясь |
| Загрузка процессора | Выше 90 процентов, удерживаемых десять минут, а не десять секунд |
| Температура диска | Выше 50 °C устойчиво; кратковременный пик во время резервного копирования нормален |
| SMART | Любое изменение переназначенных или нестабильных секторов — без выдержки, сообщать сразу |
| RAID | Массив деградировал или ненулевое число расхождений — всегда |
| Служба | Юнит, который должен работать и не работает |
Почта поддерживает три режима шифрования: SMTPS, где TLS устанавливается сразу при подключении (обычно порт 465); STARTTLS, где оно включается командой (обычно 587); и без шифрования — уместное только для почтового ретранслятора внутри своей сети.
История
- raw_retention_days — сколько показания хранятся ровно такими, какими измерены; по умолчанию трое суток.
- rollup_interval_sec — размер интервала после этого; пять минут, со средним, минимумом и максимумом в каждой точке.
- retention_days — когда всё удаляется; по умолчанию месяц.
Прореживание идёт окнами по шесть часов, чтобы база ни разу не оказалась занятой достаточно долго, чтобы это заметили.
Когда что-то не так
| Симптом | Куда смотреть |
|---|---|
| Интерфейс не открывается | systemctl status elx-healthmonitor и не занят ли порт |
| Раздел SMART пуст | Не поставлен smartmontools или диски за контроллером, который не пропускает SMART |
| Температур нет совсем | Виртуальная машина — физических датчиков там просто нет |
| Почта не доходит | Не тот режим шифрования для порта: 465 — это SMTPS, 587 — STARTTLS |
| Оповещения идут непрерывно | Слишком короткая выдержка или порог внутри обычного для этой машины диапазона |
| История обрывается через несколько дней | Срок хранения меньше, чем вам кажется, или переполнен диск с базой |
Частые вопросы
Где журнал самого агента?
journalctl -u elx-healthmonitor -f.Стоит ли выставлять интерфейс в интернет?
Как убрать кнопки выключения?
server.allow_power_control в конфигурации, и перезагрузка с выключением исчезнут из шапки.