Установка и настройка Monit
Linux, VPS | Комментировать запись
Что такое Monit?
Monit – это вспомогательная программа, которая автоматически отслеживает и управляет серверными программами (что гарантирует их постоянную работу), а также контролирует расширения, размер файлов и контрольную сумму. Кроме того, monit поставляется с базовым веб-интрефейсом, позволяющим управлять процессами. Данное руководство охватывает установку и основы настройки этой программы.
Установка monit
Monit проще всего устанавливается с помощью apt-get:
sudo apt-get install monit
После загрузки monit внесите в конфигурационный файл программы и процессы, которые нужно отслеживать.
sudo nano /etc/monit/monitrc
Monit можно запустить с помощью следующей команды (которая затем переведет эту программу в фоновый режим):
monit
Команда monit status выведет подробные сведения о программе:
The Monit daemon 5.3.2 uptime: 1h 25m
System 'myhost.mydomain.tld'
status Running
monitoring status Monitored
load average [0.03] [0.14] [0.20]
cpu 3.5%us 5.9%sy 0.0%wa
memory usage 26100 kB [10.4%]
swap usage 0 kB [0.0%]
data collected Thu, 30 Aug 2012 18:35:00
Настройка Monit
Программа monit очень проста в использовании и поставляется с достаточно неплохими настройками. По умолчанию она проверяет сервисы каждые две минуты и сохраняет данные в лог-файле /var/log/monit.log.
Данные настройки можно отредактировать в начале конфигурационного файла (строки set daemon и set logfile соответственно).
Веб-сервис monit
Monit поставляется с собственным веб-сервером, запущенном на порту 2812. Чтобы настроить веб-интерфейс, найдите и раскомментируйте раздел настроек, который начинается с set httpd port 2812. После этого нужно внести IP или доменное имя сервера в качестве адреса (строка use address), разрешить все подключения и создать пользователя и пароль Monit.
set httpd port 2812
use address 12.34.56.789 # only accept connection from localhost
allow 0.0.0.0/0.0.0.0 # allow localhost to connect to the server and
allow admin:monit # require user 'admin' with password 'monit'
Внеся эти изменения, перезапустите monit, чтоб программа заново прочитала конфигурационный файл, после чего веб-интерфейс будет доступен.
monit reload
Готово! Теперь можно использовать веб-интерфейс monit, открыв example.com:2812.
Для входа используйте только что созданные учетную запись и пароль. Экран будет выглядеть примерно так:
Настройка мониторинга программ
Настроив веб-сервис, можно внести программы, которые нужно отслеживать, в конфигурационный файл /etc/monit/monitrc. Чтобы просто обеспечить постоянную работу программы, используйте команды /etc/init.d (для остановки или запуска программ).
Вот некоторые примеры конфигурации:
Apache:
check process apache with pidfile /run/apache2.pid
start program = "/etc/init.d/apache2 start" with timeout 60 seconds
stop program = "/etc/init.d/apache2 stop"
MySQL:
check process mysqld with pidfile /var/run/mysqld/mysqld.pid
start program = "/etc/init.d/mysql start"
stop program = "/etc/init.d/mysql stop"
Nginx:
check process nginx with pidfile /var/run/nginx.pid
start program = "/etc/init.d/nginx start"
stop program = "/etc/init.d/nginx stop"
Заключительные действия
Все внесенные в файл программы будут отслеживаться и в случае необходимости автоматически запускаться при помощи monit.
Управлять программами можно как при помощи веб-интерфейса, так и через командную строку.
Завершив настройку, проверьте синтаксис:
monit -t
Исправив возможные ошибки синтаксиса, можно запустить все отслеживаемые программы:
monit start all