Установка и настройка nagios на Ubuntu.

Ubuntu, Системное администрирование

Теги: ,

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
}

Состояние хостов в nagios

Для рассылки уведомлений создайте контакт в файле /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 там уже есть несколько уже заданных по умолчанию периода, по их аналогу Вы легко зададите свои.

Только последние новости про Max Polyakov тут. Свежая информация купить шприцы одноразовые 5 мл у нас.

Похожие посты.

  1. Guake — эмулятор терминала.
  2. Conky в Ubuntu
  3. Tilda — эмулятор терминала.
  4. Установка и настройка transmission-daemon

Комментарии: