Вы можете использовать несколько решений. Одним из них является monit
.
Из командной строки просто запустите следующую команду:
sudo apt-get install monit
Monit теперь должен быть установлен и доступен через один из следующих URL:
http://localhost:2812
http://IPADDRESS:2812 (local network IP)
http://domain.com:2812 (if you have domain name pointing to your server)
Конфигурация Monit
Прежде чем вы сможете начать использовать Monit
для автоматического мониторинга сервера, вы должны сделать некоторые основные настройки. Сначала сделайте резервную копию существующей Monit
конфигурации по умолчанию, используя следующую команду:
sudo mv /etc/monit/monitrc /etc/monit/monitrc.bak
Затем создайте новый monitrc
файл с помощью команды
sudo /etc/monit/monitrc
и скопируйте в него следующее содержимое.
# How often in seconds should monit check your services.
set daemon 120
set logfile /var/log/monit.log
set idfile /var/lib/monit/id
set statefile /var/lib/monit/state
# Configure your SMTP out server.
set mailserver smtp-server.columbus.rr.com port 25,localhost
set eventqueue
basedir /var/lib/monit/events # set the base directory where events will be stored
# optionally limit the queue size
slots 100
# Use one of the following 2 lines. The second line alerts on every little change and can be annoying.
set alert admin@domain.com but not on { instance, pid, ppid } #does not send alert on pid changes
#set alert admin@domain.com
set httpd port 2812 and
#Change username and password
allow Username:Password
# To enable SSL for WebUI uncomment the next 2 lines
#ssl enable
#pemfile /path/to/unified/certificate.pem
# To restrict access to localhost only uncomment the following line
#allow localhost
include /etc/monit/conf.d/*
Строки, начинающиеся с #, являются комментариями, которые помогут вам настроить конфигурацию. Убедитесь, что вы правильно настроили хотя бы электронную почту администратора, SMTP-сервер и SMTP-порт. Вам также следует подумать об изменении имени пользователя и пароля Monit WebUI. Если у вас есть сертификат SSL, вы можете включить его и для доступа HTTPS
На данный момент используйте следующие команды, чтобы убедиться, что Monit работает хорошо.
Чтобы проверить Monit
конфигурацию на наличие синтаксических ошибок:
sudo monit -t
Для запуска Monit:
sudo monit
Чтобы проверить статус мониторинга:
sudo monit status
Мониторинг загрузки системы с помощью Monit
Требуется, чтобы у вас был рабочий экземпляр Monit с соответствующим /etc/monit/monitrc
файлом. Конфигурации Monit для различных сервисов загружаются из /etc/monit/conf.d
папки. Чтобы отслеживать нагрузку на сервер Monit
, создайте Monit
файл конфигурации с помощью следующей команды:
sudo /etc/monit/conf.d/systemload
Скопируйте в него следующее содержимое, сохраните и выйдите
# domain.com could be IP, hostname, or localhost
check System domain.com
if loadavg (1min) > 4 then alert
if loadavg (5min) > 2 then alert
if memory usage > 75% then alert
if swap usage > 25% then alert
if cpu usage (user) > 80% then alert
if cpu usage (system) > 30% then alert
if cpu usage (wait) > 20% then alert
Этот код Monit
отправит вам уведомление по электронной почте, когда будет выполнено одно из указанных выше условий (например, средняя нагрузка составляет >4
не менее 1 минуты или больше, чем 75% RAM
заполнено). Вы можете настроить вышеперечисленные правила по своему усмотрению. Ниже приведен пример оповещения по электронной почте, отправленного Monit
вместе с описанием состояния, вызвавшего оповещение.
Тест и перезагрузка Монит
После того, как вы внесете какие-либо изменения, вы должны проверить Monit
конфигурацию:
sudo monit -t
Вы должны увидеть следующее сообщение: Control File Syntax OK.
Затем проверьте, Monit
запущен ли он, с помощью следующей команды:
sudo /etc/init.d/monit status
Если Monit
запущено, перезагрузите Monit
конфигурации с помощью следующей команды:
sudo /etc/init.d/monit reload
Теперь запустите веб-браузер и перейдите на один из следующих URL-адресов в зависимости от того, как настроен ваш Monit (обязательно используйте правильный номер порта):
http://localhost:2812
http://IPADDRESS:2812 (local network IP)
http://domain.com:2812 (if you have domain name pointing to your server)
Вы должны увидеть состояние системы, нагрузку, загрузку процессора, загрузку памяти и загрузку подкачки
Мониторинг хранилища с помощью Monit
Далее необходимо, чтобы у вас был рабочий Monit
экземпляр с правильным /etc/monit/monitrc
файлом. Monit
Конфигурации для различных сервисов загружаются из /etc/monit/conf.d
папки. Для мониторинга Monit, create a
дискового пространства с помощью файла конфигурации Monit` используется следующая команда:
sudo /etc/monit/conf.d/storagespace
Скопируйте в него следующее содержимое, сохраните и выйдите
# add each drive you want to monitor below
check filesystem Ubuntu with path /dev/sda1
if space usage > 90% then alert
check filesystem Home with path /dev/sda3
if space usage > 90% then alert
check filesystem Media with path /dev/sdb1
if space usage > 90% then alert
Код выше кода будет контролировать пространство на жестком диске в 3 разделах в 2 дисков. Если какой-либо из них заполнен более чем на 90%, вы получите предупреждение.
Также вы можете отслеживать конкретные услуги.
Мониторинг сервера Apache с помощью Monit
Настройка мониторинга сервера Apache с Monit
помощью Monit’s
готовых шаблонов конфигурации. Все, что вам нужно сделать, это скопировать существующий шаблон из /etc/monit/monitrc.d
в /etc/monit/conf.d
папку.
sudo cp /etc/monit/monitrc.d/apache2 /etc/monit/conf.d/
Вместо копирования вы также можете создать символическую ссылку. Apache процесс веб - сервер создает apache2.pid
. Приведенный выше apache2.pid
файл монитора кода и, если он не существует, Monit
попытается перезапустить Apache. Перезапуск вызовет оповещение по электронной почте. Если перезапуск не удался несколько раз, Monit прекращает мониторинг сервера Apache.
...