Гид по технологиям

Установка и настройка Monit на Ubuntu 22.04

• 5 min read • DevOps • Обновлено 16 Nov 2025
Monit на Ubuntu 22.04 — установка и настройка
Monit на Ubuntu 22.04 — установка и настройка

Monit — лёгкий агент для мониторинга процессов и сервисов на сервере. В этой инструкции показано, как установить Monit на Ubuntu 22.04, включить веб‑интерфейс, добавить шаблоны для Nginx и ProFTPD, а также как проверять состояние через CLI. Включены рекомендации по отладке, безопасности и чек‑листы ролей.

Что такое Monit (в одну строку)

Monit — это демонический процесс для автоматического мониторинга и перезапуска сервисов, проверки портов и простая веб‑панель для управления.

Предварительные требования

  • Сервер с Ubuntu 22.04.
  • Настроен root‑доступ или пользователь с sudo.

Обновление системы

Обновите пакеты перед установкой:

apt update -y
apt upgrade -y

Завершите обновление и переходите к установке Monit.

Установка Monit

Пакет Monit доступен в стандартном репозитории Ubuntu 22.04. Установите его:

apt-get install monit -y

После установки запустите сервис и включите его автозапуск при загрузке:

systemctl start monit
systemctl enable monit

Проверить состояние:

systemctl status monit

Пример вывода показывает, что сервис запущен и активен.

Проверить версию Monit:

monit --version

Обычно вывод выглядит как:

This is Monit version 5.31.0
Built with ssl, with ipv6, with compression, with pam and with large files
Copyright (C) 2001-2022 Tildeslash Ltd. All Rights Reserved.

Настройка веб‑интерфейса Monit

Откройте конфигурационный файл Monit:

nano /etc/monit/monitrc

Найдите и измените строки управления HTTP‑интерфейсом, например:

set httpd port 2812 and
allow admin:monit # require user 'admin' with password 'monit'

Задайте надёжный пароль и при необходимости разрешите доступ только с доверенных IP.

Примените изменения перезапуском сервиса:

systemctl restart monit

Проверка прослушиваемых портов (по умолчанию 2812):

ss -antpl | grep monit

Пример вывода показывает прослушивание 0.0.0.0:2812 и [::]:2812.

Проверка статуса через CLI:

monit status

Вы увидите сводную информацию о системе и отслеживаемых сервисах.

Добавление сервисов для мониторинга

Шаблоны сервисов хранятся в каталоге /etc/monit/conf-available/. Для включения используйте символическую ссылку в /etc/monit/conf-enabled/.

Мониторинг Nginx

Шаблон Nginx обычно уже присутствует. Включите его так:

ln -s /etc/monit/conf-available/nginx /etc/monit/conf-enabled/

Примените изменения:

systemctl restart monit

Мониторинг ProFTPD (пример создания шаблона)

Если шаблона нет — создайте файл:

nano /etc/monit/conf-available/proftpd

Добавьте в файл конфигурацию:

check process proftpd with pidfile /var/run/proftpd.pid
   start program = "/etc/init.d/proftpd start"
   stop  program = "/etc/init.d/proftpd stop"
if failed port 21 protocol ftp then restart

Сохраните файл и включите шаблон:

ln -s /etc/monit/conf-available/proftpd /etc/monit/conf-enabled

Проверка синтаксиса конфигурации Monit:

monit -t

Ожидаемый вывод:

Control file syntax OK

Перезапустите Monit для применения изменений:

systemctl restart monit

Доступ к веб‑интерфейсу

Откройте в браузере URL:

http://your-server-ip:2812

Веб‑интерфейс покажет список всех отслеживаемых сервисов.

Список сервисов Monit в веб‑интерфейсе

Введите имя пользователя и пароль, затем нажмите Sign in.

Страница входа Monit

После входа вы увидите панель мониторинга.

Детали сервиса Nginx в Monit

Нажмите на сервис, например Nginx, чтобы увидеть детальную статистику и доступные операции (start/stop/restart).

Мониторинг через командную строку

Краткая сводка:

monit summary

Пример таблицы со статусами сервисов показывает имена, статусы и типы объектов.

Подробный статус всех сервисов:

monit status

В выводе вы увидите блоки для каждого процесса, файлов и системных показателей: PID, использование памяти, время работы, порты и т. п.

Траблшутинг и план действий при инциденте

Если сервис перестал работать или Monit не перезапускает его:

  1. Проверить логи Monit:
journalctl -u monit -b --no-pager
tail -n 200 /var/log/monit.log
  1. Проверить синтаксис конфигурации:
monit -t
  1. Проверить права на pidfile и файлы, указанные в шаблонах.
  2. Убедиться, что скрипты start/stop возвращают корректные коды выхода при ручном запуске.
  3. Если проблема повторяется, временно отключите рестарт и включите только оповещения.

Быстрый инцидентный план (runbook):

  • Стадия 1 — диагностировать: проверить статус сервиса (systemctl status), журналы, pidfile.
  • Стадия 2 — попытка ручного рестарта: systemctl restart и проверка ошибок.
  • Стадия 3 — временное откатывание конфигурации (если недавние изменения привели к сбою).
  • Стадия 4 — восстановление сервиса/обратный откат и уведомление команды.

Критерии приёмки: сервисы должны отмечаться как OK в monit status, веб‑интерфейс доступен и Monit успешно выполняет рестарт при сбое.

Безопасность и ограничения доступа

  • Меняйте пароль admin по умолчанию и используйте сложные пароли.
  • Ограничьте доступ к порту 2812 через брандмауэр (ufw/iptables) или настройте доступ по IP:
# пример для ufw
ufw allow from 203.0.113.0/24 to any port 2812
ufw deny 2812
  • По возможности используйте HTTPS‑прокси (nginx) перед Monit для шифрования трафика.
  • Не храните в публичных репозиториях файл monitrc с паролями.

Когда Monit не подходит (ограничения)

  • Monit — хорош для простого мониторинга и автоматического рестарта, но не заменяет полнофункциональные системы мониторинга (Prometheus, Zabbix) для метрик, алертинга и долгосрочного хранения данных.
  • Если нужен масштабируемый сбор метрик и графики, стоит рассмотреть альтернативы.

Альтернативы и интеграции

  • Для метрик и алертинга: Prometheus + Alertmanager.
  • Для корпоративного мониторинга: Zabbix, Nagios/Icinga.
  • Для визуализации и хранения временных рядов: Grafana + InfluxDB/Prometheus.

Monit хорошо интегрируется: его можно использовать как локальный watchdog вместе с внешней системой мониторинга.

Чек‑лист по ролям

Админ системы:

  • Установил Monit, включил автозапуск.
  • Настроил веб‑интерфейс и изменил пароль.
  • Ограничил доступ по IP/брандмауэру.

DevOps/инженер приложений:

  • Создал конфигурации для ключевых процессов.
  • Проверил поведение рестарта и корректность скриптов start/stop.
  • Настроил оповещения в случае повторяющихся рестартов.

SRE/операции:

  • Интегрировал Monit с внешним алертингом (если нужно).
  • Добавил проверки состояния в runbook и провёл тесты восстановления.

Мини‑методология внедрения Monit

  1. Проверьте критичные сервисы и опишите способы их корректного рестарта.
  2. Подготовьте шаблоны в /etc/monit/conf-available/.
  3. Включите по одному шаблону и протестируйте поведение.
  4. Настройте уведомления и доступ к веб‑интерфейсу.
  5. Включите мониторинг в производственной среде и наблюдайте в течение 24–72 часов.

Тестовые случаи и критерии приёмки

  • При остановке сервиса Monit должен попытаться перезапустить его и зафиксировать попытку в логах.
  • mon it summary должен отображать сервис в статусе OK после восстановления.
  • Веб‑интерфейс должен быть доступен и показывать актуальное состояние.

Заключение

Поздравляем — вы установили и настроили Monit на Ubuntu 22.04. Monit поможет автоматически поддерживать работоспособность критичных процессов и даст простой интерфейс для наблюдения. Используйте чек‑листы, runbook и рекомендации по безопасности для стабильной эксплуатации.

Важно

  • Всегда проверяйте конфигурацию через monit -t перед перезапуском.
  • Не оставляйте дефолтные пароли и ограничивайте доступ к веб‑интерфейсу.

Краткое резюме

  • Monit прост в установке и настройке.
  • Подходит для автоматического рестарта сервисов и локального мониторинга.
  • Не заменяет полнофункциональные системы метрик, но хорошо работает в связке с ними.
Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро