Nagios — программа с открытым кодом, предназначенная для мониторинга компьютерных систем и сетей. Она следит за указанными узлами и службами, и оповещает администратора в том случае, если какие-то из служб прекращают (или возобновляют) свою работу. Так же при помощи nagios можно просматривать состояние хостов и сервисов через web-интерфейс. Сейчас самая свежая версия nagios3.
- Для работы nagios3 вам понадобится
- Apache
- GCC compiler and development libraries
- GD development libraries
Как ставит Apache я рассказывать не буду, библиотеки ставятся командами
sudo apt-get install build-essential sudo apt-get install libgd2-xpm-dev
Хотя у меня на работал Nagios3 и без этих библиотек. Я буду рассказывать про работу Nagios с Apache2.
Установка Nagios3 производится одной командой.
sudo apt-get install nagios3
После установки nagios уже запущен и работает. Теперь создадим в Apache отдельный виртуальный хост для nagios. Создайте в каталоге /etc/apache2/sites-enabled конфигурационный файл для хоста nagios. В настройках хоста укажите в роли домашнего каталога /usr/share/nagios3/htdocs обычно все web-файлы nagios3 лежат там. Ещё надо подключить к настройкам apache настройки nagios. Добавьте в файл /etc/apache2/apache2.conf следующую строчку.
Include /etc/nagios3/apache2.conf
После этого зайдите на этот новый хост, если вы всё правильно сделали у вас браузер должен спросить пароль, который вы ещё не знаете, зато всё работает.
Теперь займёмся настройкой nagios. Все конфигурационные файлы лежат в /etc/nagios3/. Главный конфигурационный файл nagios.cfg в нём подключаются все остальные конфигурационные файлы и задаются настройки самого nagios. Так что если Вы создали какой-то свой конфигурационный файл не забудьте подключить его в этом файле.
Дальше переходим к файлу cgi.cfg, в нём выставляются все настройки cgi скриптов, так же в нём выставляются права на доступ к сайту с графическим интерфейсом. По умолчанию полный доступ имеет пользователь nagiosadmin, если ходите разрешить что-то другим пользователям просто допишите их через запятую. Мой конфиг выглядит так.
default_user_name=myuser authorized_for_system_information=nagiosadmin,myuser authorized_for_configuration_information=nagiosadmin,myuser authorized_for_system_commands=nagiosadmin,myuser authorized_for_all_services=nagiosadmin,myuser authorized_for_all_hosts=nagiosadmin,myuser authorized_for_all_services=nagiosadmin,myuser authorized_for_all_hosts=nagiosadmin,myuser authorized_for_all_service_commands=nagiosadmin,myuser authorized_for_all_host_commands=nagiosadmin,myuser
Где myuser это мой логин. Теперь нужно создать файл с пользователями и паролем, для этого перейдите в каталог /etc/nagios3/ воспользуемся команду
cd /etc/nagios3/ sudo htpasswd -c htpasswd.users myuser
и введите пароль для пользователя myuser
По умолчанию nagios ищет пользователей для аутентификации в файле /etc/nagios3/htpasswd.users , но вы можете хранить из в другом месте, для этого поменяйте в файле /etc/nagios3/apache2.conf параметр AuthUserFile на свой.
Теперь чтобы изменения вступило в силу перезагрузите nagios
sudo /etc/init.d/nagios3 restart
Так же можно проверять весь конфиг nagios перед перезагрузкой
sudo nagios3 -v /etc/nagios3/nagios.cfg
Он проверит файл nagios.cfg и все файлы которые подключаются в нём и если найдёт ошибки напишет подробную информацию, я советую делать такую проверку после каждого изменения в конфигурационных файлах.
Всё теперь зайдите на свой виртуальных хост созданный для nagios и введите логин и пароль.
Вы увидите состояния своих сервисов, по умолчанию nagios проверяет работу localhost’а и gateway’а. Вы можете добавить свои хосты или сервисы для проверке, сейчас Мы рассмотрим как.
Допустим я хочу проверять когда мои коллеги включают и выключают компьютерны. Для этого сначала надо описать эти хосты. Создаём в каталоге /etc/nagios3/conf.d файл my-hosts.cfg и записываем в него мои хосты
# a host definition for my friends comps define host { host_name volodya #Имя хоста alias Volodya comp #описание address 192.168.140.3 #ip адрес use generic-host } define host { host_name lexa alias lexa comp address 192.168.140.4 use generic-host } define host { host_name xz1 alias xz1 comp address 192.168.140.5 use generic-host } define host { host_name xz2 alias xz2 comp address 192.168.140.8 use generic-host } define host { host_name diman alias diman comp address 192.168.140.10 use generic-host }
Так как этот файл находится в каталоге /etc/nagios3/conf.d отдельно подключать его в файле
/etc/nagios3/nagios.cfg не надо, поскольку в нём уже по умолчанию подключаются все файлы из Директории /etc/nagios3/conf.d
Объединим эти хосты в группу. Запишем в конфигурационный файл групп /etc/nagios3/conf.d/hostgroups_nagios2.cfg такой текст
#Defind my group define hostgroup { hostgroup_name my-friends #имя группы alias my-friends comps # описание members lexa, volodya, xz1,xz2, diman #члены группы }
Теперь надо настроить службу которая будет проверять эту группу хостов. Дописываем в файл /etc/nagios3/conf.d/services_nagios2.cfg или создаём свой файл с таким конфилом.
# check that my friends comps are up define service { hostgroup_name my-friends #имя группы для проверки service_description PING check_command check_ping!100.0,20%!500.0,60% #команда проверки use generic-service }
Для рассылки уведомлений создайте контакт в файле /etc/nagios3/conf.d/contacts_nagios2.cfg Например такой.
define contact{ contact_name pasha #имя alias pasha service_notification_period 24x7 #период уведомлений о сервисах host_notification_period 24x7 #период уведомлений о хостах service_notification_options w,u,c,r #о чём уведомлять уведомлений host_notification_options d #уведомлять о том что хост down service_notification_commands notify-service-by-email #как уведомлять host_notification_commands notify-host-by-email #как уведомлять email f448dmg@yandex.ru # mail }
Временные периоды задаются в файле /etc/nagios3/conf.d/contacts_nagios2.cfg там уже есть несколько уже заданных по умолчанию периода, по их аналогу Вы легко зададите свои.
Воскопран инструкция по применению повязки раневая повязка воскопран. Самая детальная информация как гормон роста купить на сайте по тел. +380685552635 в Киеве.
Огроменное спасибо Вам!
Я заметил что это:
Include /etc/nagios3/apache2.conf
не надо добавлять.
А вот здесь
authorized_for_system_information=nagiosadmin, myuser
пробел после запятой недопустим.
Статья неплохая, но есть ошибочка.
Когда дописываем своего юзера в файле cgi.cfg то пробел между пользователями после запятой не ставим — иначе даже при прохождении авторизации функции доступны не будут.