Інсталяція системи моніторингу Nagios у Debian і Ubuntu.
Для створення повноцінної системи моніторингу нам потрібно
- встановлений дистрибутив одного з лінуксів(Debian і Ubuntu)
- настроєний веб сервер Apache
- інтернет канал))
Якщо це все внас вже підготовлене, приступаємо до істаляції пакетів(інсталяцію потрібно проводити з правами суперкористувача)
apt-get install nagios-text
базова система nagios заінсталиться на вашу систему, але для повноцінного використання ми ще повинні доставити плагіни
apt-get install nagios-plugins
Преходимо до настроювання моніторингу
Нам потрібно
- знайти cgi.cfg і перенсти його в /etc/nagios
- перенести інфу з apache.conf в /etc/apeche2/sites-enabled/nagios
Як бачимо файлів конфігурації є доволі багато.
Але якщо трішки по працювати над файлами можна частини з них позбутись і оптимізувати.
Спочатку конфігуруємо файл в якому містяться дані про користувачів яким буде відсилатись інформація про ваші сервіси contacts.cfg
define contact{
contact_name admin
alias Mega Admin
service_notification_period 24x7
host_notification_period 24x7
service_notification_options w,u,c,r
host_notification_options d,u,r
service_notification_commands notify-by-email,notify-by-pager
host_notification_commands host-notify-by-email,host-notify-by-epager
email [email protected]
pager [email protected]
}
Згідно цих даних наш адмін буде отримувати повідомлення по імейлу і на телефон/пейджер
Далі настроюємо файл contactsgroups.cfg
для прикладу я розкоментував дані стрічки
define contactgroup{
contactgroup_name linux_admin
alias Linux Administrators
members admin
}
Прийшла черга настроїти хости які ми будемо моніторити
/etc/nagios/hosts.cfg
define host{
use generic-host
host_name gw1.yourdomain.com
alias Gateway Router
address 10.0.0.1
check_command check-host-alive
max_check_attempts 20
notification_interval 240
notification_period 24x7
notification_options d,u,r
}
define host{
use generic-host
host_name mail.yourdomain.com
alias Mail Server
address 10.0.0.100
check_command check-host-alive
max_check_attempts 20
notification_interval 240
notification_period 24x7
notification_options d,u,r
}
Настроюємо групи хостів. У файлі /etc/nagios/hostgroups.cfg я розкоментував
# ‘linux-boxes’ host group definition
define hostgroup
{ hostgroup_name linux-boxes
alias Linux Servers
contact_groups linux-admins
members gw1.yourdomain.com,mail.yourdomain.com
}
Настроюємо сервіси які ми будемо перевіряти /etc/nagios/services.cfg
define service{
use generic-service
host_name mail.yourdomain.com
service_description SMTP
is_volatile 0
check_period 24x7
max_check_attempts 3
normal_check_interval 5
retry_check_interval 1
contact_groups server_admin
notification_interval 240
notification_period 24x7
notification_options w,u,c,r
check_command check_smtp
}
define service{
use generic-service
host_name gw1.yourdomain.com
service_description PING
is_volatile 0
check_period 24x7
max_check_attempts 3
normal_check_interval 5
retry_check_interval 1
contact_groups router_admin
notification_interval 240
notification_period 24x7
notification_options w,u,c,r
check_command check_ping!100.0,20%!500.0,60%
}
Ось так має виглядати вікно Service Status у вікні бровзера
А тепер про проблеми з якими я стикнувся
при виконанні команди перевірки DNS в автоматичному режимі від бувалась помилка, а з командного рядка все нормально працювало….
пофіксалось все просто: в файлі /etc/nagios-plugins/config/dns.cfg
check_dns -H www.google.com -s $HOSTADDRESS$ замінив на check_dns -H $ARG1$ -s $HOSTADDRESS$
Для перевірки ваших настройок виконуємо наступну команду
nagios -v /etc/nagios/nagios.cfg
Стартуємо наш сервер монітрингу з новими параметрами
/etc/init.d/nagios restart
У наступному випуску я опишу як настроїти Nagios не використовуючи автоматичне інсталення