Можна використовувати кілька розчинів. Один з них є 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
Щоб перевірити стан 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
Після внесення будь-яких змін вам доведеться перевірити 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.
...