Monit - это утилита с открытым исходным кодом, предназначенная для управления и мониторинга ресурсов и сервисов в системах Linux. К числу служб и ресурсов, управляемых Monit, относятся использование процессора, памяти, время работы сервера, сетевые соединения и службы серверных приложений. Программа также обеспечивает постоянную работоспособность всех запущенных служб, перезапуская службы, которые останавливаются или сталкиваются с ошибками в работе, такими как простои системы, сбои в работе приложений или скачки ресурсов.
Кроме того, Monit может быть настроен на отправку администраторам предупреждений о наступлении определенных событий, что позволяет администраторам предпринять корректирующие действия до того, как проблемы станут более серьезными. Таким образом, Monit является незаменимым инструментом для обеспечения бесперебойной работы Linux-систем.
В следующем руководстве вы узнаете, как установить Monit на Fedora Linux, используя версию непосредственно из репозитория Fedora, и настроить Monit так, чтобы он был доступен из браузера с помощью терминала командной строки.
Рекомендуемые шаги перед установкой
Перед началом установки обновите систему, чтобы убедиться в актуальности всех пакетов во избежание каких-либо проблем.
1 | sudo dnf upgrade --refresh |
Установка Monit в Fedora Linux
Monit доступен в репозитории Fedora по умолчанию, что делает его установку быстрой и простой.
Сначала выполните следующую команду для установки приложения.
1 | sudo dnf install monit -y |
После установки необходимо включить и запустить службу, что можно сделать с помощью следующей команды.
1 | sudo systemctl enable monit --now |
Наконец, убедитесь, что Monit работает без каких-либо ошибок, используя следующую команду.
1 | systemctl status monit |
Пример вывода:
Теперь перейдем к следующему разделу для настройки веб-интерфейса.
Настройка Monit WebUI в Fedora Linux
Теперь, когда Monit работает, необходимо отредактировать конфигурационный файл по следующему пути "/etc/monit/monitrc" с помощью любого текстового редактора.
Откройте файл конфигурации с помощью следующей команды.
1 | sudo nano /etc/monitrc |
Теперь найдите в конфигурационном файле строки.
1 2 3 4 | set httpd port 2812 and use address localhost # only accept connection from localhost (drop if you use M/Monit) allow localhost # allow localhost to connect to the server and allow admin:monit # require user 'admin' with password 'monit' |
Далее измените имя пользователя и пароль на свои, можно оставить monit, но я бы изменил. По желанию можно изменить порт по умолчанию 2812 на другой, менее известный, для пользователей в чувствительных средах.
Пример:
1 2 3 4 | set httpd port 2812 and use address 0.0.0.0 allow 0.0.0.0/0.0.0.0 allow admin:monit # require user 'admin' with password 'monit' |
Сохраните конфигурационный файл с помощью CTRL+O, а затем выйдите с помощью CTRL+X.
После этого протестируйте работу службы, чтобы убедиться в отсутствии ошибок в конфигурационном файле.
1 | sudo monit -t |
Пример вывода:
Теперь перезапустите службу, чтобы изменения в конфигурационном файле вступили в силу.
1 | sudo systemctl restart monit |
Настройка правил Monit FirewallD в Fedora Linux
По умолчанию для Monit не задано никаких правил. Это означает, что вам придется создать правила, необходимые для предотвращения атак. Если вы не обеспечите безопасность Monit, это приведет к проблемам в дальнейшем, поэтому не пропускайте этот этап, если у вас нет других средств защиты вашей установки и службы.
Во-первых, добавьте новую выделенную зону для политики Monit firewalld.
1 | sudo firewall-cmd --permanent --new-zone=monit |
Далее укажите разрешенные IP-адреса, которым разрешен доступ к Redis.
1 | sudo firewall-cmd --permanent --zone=monit --add-source=1.2.3.4 |
Замените 1.2.3.4 на IP-адрес, который будет добавлен в список разрешенных.
После завершения добавления IP-адресов откройте порт Monit. По умолчанию это TCP-порт 2812, если вы его не изменили.
1 | sudo firewall-cmd --permanent --zone=monit --add-port=2812/tcp |
Обратите внимание, что порт по умолчанию можно изменить в конфигурационном файле, если изменить вышеуказанное правило открытия порта брандмауэра на новое значение.
После выполнения этих команд перезагрузите брандмауэр для применения новых правил.
1 | sudo firewall-cmd --reload |
Пример вывода в случае успеха:
1 | success |
Если, по какой-то причне правило не отрабатывает, добавляем полный дотсуп на порт
1 2 | firewall-cmd --add-port=2812/tcp --permanent firewall-cmd --reload |
Доступ к веб-интерфейсу Monit WebUI в Fedora Linux
После установки Monit и настройки back end можно приступить к доступу к службе Monit, используя IP-адрес сервера.
Пример:
http://192.168.136.133:2812
Для локального подключения пользователи могут использовать localhost.
http://localhost:2812
Пример вывода:
Войдите в систему, используя имя пользователя и пароль, заданные в конфигурационном файле. После входа вы попадете на главную панель с общим видом.
Попав на панель, вы можете щелкнуть на своей системе для отображения более подробной статистики.
Кроме того, для пользователей, которые могут столкнуться с проблемами и нуждаются в корректировке некоторых настроек, можно посмотреть обзор настроек Monit с помощью веб-интерфейса.
В учебнике была показана базовая настройка; вы можете осуществлять мониторинг более широко, используя различные опции. Я бы посоветовал ознакомиться с руководством по документации Monit на официальном сайте.
Обновление Monit в Fedora Linux
Если вы установили Monit, используя стандартный репозиторий Fedora, то процесс обновления будет аналогичным при использовании терминала командной строки.
1 | sudo dnf update --refresh |
Пользователям настольных компьютеров с включенной функцией автоматического обновления я бы посоветовал время от времени выполнять команды обновления в терминале, чтобы убедиться в корректности обновления системы.
Удаление Monit в Fedora Linux
Пользователи, которым больше не требуется Monit в системе Fedora Linux, могут воспользоваться следующей командой для полного удаления приложения.
1 | sudo dnf autoremove monit |
Приведенная выше команда очистит данные, которые были созданы с его помощью.