Установка и настройка nagios на Ubuntu. Простая настройка Nagios Можно установить и из репозитория

Nagios (Nagios Ain"t Gonna Insist On Sainthood) - программа с открытым кодом, предназначенная для мониторинга компьютерных систем и сетей. Она производит наблюдения, контроль состояния узлов и служб, оповещения администратора в том случае, если какие-то из служб прекращают (или возобновляют) свою работу.

В сегодняшней статье мы расскажем, как установить Nagios 4.1 на Ubuntu 15.04 .

Протестировать и посмотреть, что же из себя представляет Nagios и другие программы/сервисы/АТС вы можете перейдя в раздел .

Подготовка

Убедитесь, что на вашем сервере установлен полностью рабочий LAMP , если не установлен, то прежде чем продолжать, установите LAMP сервер. Установим следующие компоненты:

Sudo apt-get install build-essential libgd2-xpm-dev apache2-utils unzip

Создадим пользователя и группу Nagios

Создайте новую учетную запись пользователя nagios и группу nagcmd :

Sudo useradd -m nagios
sudo passwd nagios
sudo groupadd nagcmd
sudo usermod -a -G nagcmd nagios
sudo usermod -a -G nagcmd www-data

Скачиваем Nagios и плагины для него

На официальном сайте последняя версия значится как 4.1.0 release candidate 2 , ее и скачаем.

Cd /usr/src
sudo wget https://assets.nagios.com/downloads/nagioscore/releases/nagios-4.1.0rc2.tar.gz

Скачиваем плагины

Sudo wget http://nagios-plugins.org/download/nagios-plugins-2.0.3.tar.gz

Установка Nagios

Переходим в папку, куда мы скачали Nagios и плагины и разархивируем с помощью команды:

Sudo tar xzf nagios-4.1.0rc2.tar.gz

Cd nagios-4.1.0rc2/

Выполняем следующие команды для компиляции и установки Nagios :

Sudo ./configure --with-command-group=nagcmd
sudo make all
sudo make install
sudo make install-init
sudo make install-config
sudo make install-commandmode

Устанавливаем Web-интерфейс Nagios :

Sudo make install-webconf

Если в процессе установки вы получили следующую ошибку:

/usr/bin/install -c -m 644 sample-config/httpd.conf /etc/httpd/conf.d/nagios.conf
/usr/bin/install: cannot create regular file ‘/etc/httpd/conf.d/nagios.conf’: No such file or directory
Makefile:296: recipe for target "install-webconf" failed
make: *** Error 1

Nagios пытается создать файл nagios.conf внутри /etc/httpd.conf/directory , но в системах Ubuntu файлы nagios.conf должны быть помещены в /etc/apache2/sites-enabled/directory . Используем тогда другую команду вместо sudo make install-webconf

Sudo /usr/bin/install -c -m 644 sample-config/httpd.conf /etc/apache2/sites-enabled/nagios.conf

Создадим учетную запись Nagiosadmin для входа в Web-интерфейс Nagios . Обязательно запомните задаваемый вами пароль, он вам понадобится при входе в Web-интерфейс.

Sudo htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin

Перезапустим Apache, чтобы новые настройки вступили в силу:

Sudo systemctl restart apache2

Возвращаемся в папку, куда мы скачивали плагины и разархивируем плагины:

Cd /usr/src
tar xzf nagios-plugins-2.0.3.tar.gz

Переходим в разархивированный каталог:

Cd nagios-plugins-2.0.3/

Выполняем следующие команды для компиляции и установки плагинов:

Sudo ./configure --with-nagios-user=nagios --with-nagios-group=nagios
sudo make
sudo make install

Запускаем Nagios

Проверяем nagios.conf на наличие ошибок:

Sudo /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

Если ошибок нет, запустим Nagios и добавим его в автозапуск:

Sudo service nagios start
sudo ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios

Если при запуске Nagios вы увидели следующую ошибку:

Failed to start nagios.service: Unit nagios.service failed to load: No such file or directory.

[....] Starting nagios (via systemctl): nagios.serviceFailed to start nagios.service: Unit nagios.service failed to load: No such file or directory.failed!

Чтобы ее исправить нужно скопировать /etc/init.d/skeleton в /etc/init.d/nagios

Sudo cp /etc/init.d/skeleton /etc/init.d/nagios

Отредактируем /etc/init.d/nagios :

Sudo nano /etc/init.d/nagios

Добавив в самый конец следующее:

DESC="Nagios"
NAME=nagios
DAEMON=/usr/local/nagios/bin/$NAME
DAEMON_ARGS="-d /usr/local/nagios/etc/nagios.cfg"
PIDFILE=/usr/local/nagios/var/$NAME.lock

Сохраняем и выходим.

Финальный штрих - даем права на исполнение:

Sudo chmod +x /etc/init.d/nagios

и запускаем Nagios :

Sudo /etc/init.d/nagios start

Теперь в браузере вводим http://nagios-server-ip/nagios , в поле username вводим nagiosadmin и пароль, который мы задавали в процессе установки.



Нажмите на “Host” в левой панели консоли . Вы увидите, что на данный момент Nagios не мониторит ни одного хоста кроме самого себя.



На этом наша установка завершена. Пройдя по всей инструкции мы установили Nagios 4.1 на Ubuntu 15.04

Перед конфигурированием nagios нужно установить необходимые зависимости

# apt install build-essential apache2 php libapache2-mod-php7.0 php-gd libgd-dev mailutils

И добавить пользователя и группу, от имени которых будет работать nagios

# useradd nagios # groupadd nagcmd # usermod -a -G nagcmd nagios # usermod -a -G nagcmd www-data

Перейдем в каталог для сборки и скачаем исходный код nagios и плагинов

# cd /usr/src/ # wget https://sourceforge.net/projects/nagios/files/nagios-4.x/nagios-4.2.3/nagios-4.2.3.tar.gz # wget https://nagios-plugins.org/download/nagios-plugins-2.1.4.tar.gz

Разархивируем скаченные архивы

# tar xzvf nagios-4.2.3.tar.gz # tar xzvf nagios-plugins-2.1.4.tar.gz

Перейдем в директорию с исходным кодом nagios и выполним конфигурирование

# cd nagios-4.2.3 # ./configure --prefix=/etc/nagios --with-command-group=nagcmd --with-httpd-conf=/etc/apache2/sites-available --with-mail=/usr/bin/mail

Выполним сборку

# make all

Установим nagios

# make install

Установим init скрипт в /etc/init.d и активируем авто запуск

# make install-init # update-rc.d nagios defaults

Установим права на директорию для хранения внешних командных файлов

# make install-commandmode

Установим конфигурационные файлы nagios

# make install-config

Установим конфигурацию nagios для apache

# make install-webconf

Скопируем в каталок с nagios скрипты обработки событий внешних командных файлов и выставим владельца на папку

# cp -R contrib/eventhandlers/ /etc/nagios/libexec/ # chown -R nagios:nagios /etc/nagios/libexec/eventhandlers

Выполним проверку установленной конфигурации

# /etc/nagios/bin/nagios -v /etc/nagios/etc/nagios.cfg

# make # make install

Включим конфигурацию nagios в apache и активируем необходимые дополнения

# a2ensite nagios # a2enmod rewrite cgi

Перезапустим службу apache

# service apache2 restart

Запустим nagios и проверим статус

# service nagios start # service nagios status ● nagios.service - Nagios Loaded: loaded (/etc/systemd/system/nagios.service; enabled; vendor preset: enabled) Active: active (running)

Добавим администратора nagios

# htpasswd -c /etc/nagios/etc/htpasswd.users nagiosadmin

Теперь разберемся с конфигурационными файлами nagios.

/etc/nagios/etc/cgi.cfg — определяет настройки веб интерфейса, а так же права доступа к web консоли nagios.

/etc/nagios/etc/htpasswd.users — база пользователей и их паролей для доступа к web интерфейсу nagios.

/etc/nagios/etc/nagios.cfg — содержит в себе основные настройки и пути к *.cfg файлам.

/etc/nagios/etc/resource.cfg — здесь определена переменная, до каталога с плагинами.

/etc/nagios/etc/objects/commands.cfg — содержит определения команд.

/etc/nagios/etc/objects/contacts.cfg — определяет почтовые контакты, на которые будет происходит отправка оповещений nagios.

/etc/nagios/etc/objects/templates.cfg — содержит шаблоны контактов, хостов и сервисов.

/etc/nagios/etc/objects/timeperiods.cfg — содержит определения временных периодов.

/etc/nagios/etc/objects/localhost.cfg — конфигурация для мониторинга самого сервера nagios. В ней определен сам хост, хостовая группа для linux серверов и сервисы мониторинга.

/etc/nagios/etc/objects/printer.cfg — конфигурация для мониторинга принтера. В ней определен произвольный принтер, хостовая группа для принтеров и сервисы мониторинга.

/etc/nagios/etc/objects/switch.cfg — конфигурация для мониторинга свитча. В ней определен произвольный свитч, хостовая группа для свитчей и сервисы мониторинга.

/etc/nagios/etc/objects/windows.cfg — конфигурация для мониторинга произвольного windows хоста. В ней определен произвольный windows хост, хостовая группа для windows серверов и сервисы мониторинга.

Из описания видно, что localhost.cfg, printer.cfg, switch.cfg и windows.cfg содержат в себе определения хост групп. Для удобства имеет смысл выделить их в отдельный файл /etc/nagios/etc/objects/hostgroups.cfg . Соответственно в изначальном файле их нужно закоментировать. Описание одного и того же объекта не должно повторятся в разных конфигурационных файлах. Так же мы добавим файл /etc/nagios/etc/objects/servicegroups.cfg , в котором будут определены сервисные группы. Так как в данной публикации производится настройка мониторинга для linux и windows хостов, мы определим группы для них. Для принтеров и свитчей группы определяются по аналогии. Так же мы создадим папку /etc/nagios/etc/servers/, в которой будут храниться файлы, определяющие хосты для мониторинга. Внесем соответствующие изменения в файл nagios.cfg

# nano /etc/nagios/etc/nagios.cfg . . . # You can specify individual object config files as shown below: cfg_file=/etc/nagios/etc/objects/commands.cfg cfg_file=/etc/nagios/etc/objects/contacts.cfg cfg_file=/etc/nagios/etc/objects/timeperiods.cfg cfg_file=/etc/nagios/etc/objects/templates.cfg # Definitions for hostgroups and servicegroups cfg_file=/etc/nagios/etc/objects/hostgroups.cfg cfg_file=/etc/nagios/etc/objects/servicegroups.cfg # Definitions for monitoring the local (Linux) host cfg_file=/etc/nagios/etc/objects/localhost.cfg # Definitions for monitoring a Windows machine #cfg_file=/etc/nagios/etc/objects/windows.cfg # Definitions for monitoring a router/switch #cfg_file=/etc/nagios/etc/objects/switch.cfg # Definitions for monitoring a network printer #cfg_file=/etc/nagios/etc/objects/printer.cfg # You can also tell Nagios to process all config files (with a .cfg # extension) in a particular directory by using the cfg_dir # directive as shown below: cfg_dir=/etc/nagios/etc/servers #cfg_dir=/etc/nagios/etc/printers #cfg_dir=/etc/nagios/etc/switches #cfg_dir=/etc/nagios/etc/routers . . .

Создадим файлы для хост и сервис групп и выставим на них права

# cd /etc/nagios/etc/objects/ # touch hostgroups.cfg servicegroups.cfg # chown nagios:nagios hostgroups.cfg servicegroups.cfg # chmod 664 hostgroups.cfg servicegroups.cfg

Создадим каталог /etc/nagios/etc/servers / и выставим на него права

# mkdir /etc/nagios/etc/servers/ # chown nagios:nagios /etc/nagios/etc/servers/ # chmod 775 /etc/nagios/etc/servers/

Добавим в hostgroups.cfg определения хост групп для linux и windows серверов из localhost.cfg и windows.cfg соответственно

# nano /etc/nagios/etc/objects/hostgroups.cfg # Define an optional hostgroup for Linux machines # All hosts that use the linux-server template will automatically be a member of this group define hostgroup{ hostgroup_name linux-servers ; The name of the hostgroup alias Linux Servers ; Long name of the group } # Define a hostgroup for Windows machines # All hosts that use the windows-server template will automatically be a member of this group define hostgroup{ hostgroup_name windows-servers ; The name of the hostgroup alias Windows Servers ; Long name of the group }

Так как в nagios.cfg путь к windows.cfg закоментирован, коментировать определение хост групп в windows.cfg не обязательно, а вот в localhost.cfg это обязательное действие

# nano /etc/nagios/etc/objects/localhost.cfg . . . # Define an optional hostgroup for Linux machines #define hostgroup{ # hostgroup_name linux-servers ; The name of the hostgroup # alias Linux Servers ; Long name of the group # members localhost ; Comma separated list of hosts that belong to this group # } . . .

При создании объекта windows сервер, он автоматически становится членом группы windows-servers. Это действие определено в файле шаблонов templates.cfg. Чтобы linux сервера попадали автоматически в группу linux-servers, нужно сделать следующее изменение

# nano /etc/nagios/etc/objects/templates.cfg . . . # Linux host definition template - This is NOT a real host, just a template! define host{ name linux-server ; The name of this host template use generic-host ; This template inherits other values from the generic-host template check_period 24x7 ; By default, Linux hosts are checked round the clock check_interval 5 ; Actively check the host every 5 minutes retry_interval 1 ; Schedule host check retries at 1 minute intervals max_check_attempts 10 ; Check each Linux host 10 times (max) check_command check-host-alive ; Default command to check Linux hosts notification_period workhours ; Linux admins hate to be woken up, so we only notify during the day ; Note that the notification_period variable is being overridden from ; the value that is inherited from the generic-host template! notification_interval 120 ; Resend notifications every 2 hours notification_options d,u,r ; Only send notifications for specific host states contact_groups admins ; Notifications get sent to the admins by default hostgroups linux-servers ; Host groups that linux servers should be a member of register 0 ; DONT REGISTER THIS DEFINITION - ITS NOT A REAL HOST, JUST A TEMPLATE! } . . .

Для настройки оповещения, нужно указать email администратора системы в contacts.cfg

# nano /etc/nagios/etc/objects/contacts.cfg . . . define contact{ contact_name nagiosadmin ; Short name of user use generic-contact ; Inherit default values from generic-contact template (defined above) alias Nagios Admin ; Full name of user email admin@сайт ; <<***** CHANGE THIS TO YOUR EMAIL ADDRESS ****** } . . .

# service nagios restart

Проверить работоспособность оповещений, можно следующим способом, в web интерфейсе выбрать слева «Hosts», далее нажимаем на «localhost», в меню справа нажимаем «Send custom host notification», пишем что угодно в строку «Comment» и нажимаем «Commit».

На почту, указанную в contacts.cfg должно прийти оповещение.


Немного о плагинах

В папке /etc/nagios/libexec располагаются установленные плагины. В начале статьи было отмечено, что nagios получает всю информацию через плагины. Для примера посмотрим uptime системы

# /etc/nagios/libexec/check_uptime Uptime OK: 0 day(s) 3 hour(s) 52 minute(s) | uptime=232.000000;;;

Большинство плагинов работаю только с аргументами, к примеру посмотрим статус файла подкачки системы

# /etc/nagios/libexec/check_swap -w 20 -c 10 SWAP OK - 100% free (2044 MB out of 2044 MB) |swap=2044MB;0;0;0;2044

Здесь есть два аргумента -w 20 и -c 10.

w — warning, когда останется 20% свободного места, будет происходить событие warning.

c — critical, когда останется 10% свободного места, будет происходить событие critical.

Так же плагины бывают локальные и «общие». Приведенные выше примеры, относятся к локальным. К примеру плагином check_swap не удастся посмотреть статус файла подкачки на удаленном хосте, а вот плагином check_ping можно проверить доступность и локального и удаленного хоста

# /etc/nagios/libexec/check_ping -H localhost -w 100.0,20% -c 500.0,60% PING OK - Packet loss = 0%, RTA = 0.04 ms|rta=0.036000ms;100.000000;500.000000;0.000000 pl=0%;20;60;0 # /etc/nagios/libexec/check_ping -H 192.168.1.16 -w 100.0,20% -c 500.0,60% PING OK - Packet loss = 0%, RTA = 0.27 ms|rta=0.273000ms;100.000000;500.000000;0.000000 pl=0%;20;60;0


Немного о NRPE

NRPE — Nagios Remote Plugin Executor. Для того, чтобы nagios мог получать информацию от удаленных хостов, такую как загрузка диска, или процессора, используется nrpe плагин. Nagios обращается через nrpe плагин, к nrpe серверу, установленному на удаленном linux/Unix хосте. Nrpe сервер запускает локальные плагины, и передает nagios серверу полученную информацию. Важно! nrpe сервер и плагин должны быть одной версии, иначе могут возникать ошибки.


Установка NRPE плагина

Перед установкой nrpe плагина, нужно установить зависимость

# apt install libssl-dev

Скачать последнюю версию nrpe можно с сайта nagios . Перейдем в каталог для сборки, скачаем и разархивируем последнюю версию nrpe

# cd /usr/src/ # wget https://github.com/NagiosEnterprises/nrpe/archive/3.0.1.tar.gz # tar xzvf 3.0.1.tar.gz

Перейдем в папку с nrpe и выполним конфигурирование

Выполним сборку и установку nrpe плагина

# make check_nrpe # make install-plugin

Добавим в /etc/nagios/etc/objects/commands.cfg поддержку nrpe

# nano /etc/nagios/etc/objects/commands.cfg . . . # "check_nrpe" command definition define command{ command_name check_nrpe command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$ } . . .

После проделанных изменений нужно перезапустить службу nagios

# service nagios restart


Установка NRPE сервера

На linux хосте, который мы будем мониторить, нужно установить nrpe сервер, и плагины.

Установим необходимые зависимости

# apt install build-essential libssl-dev

Перейдем в каталог для сборки, скачаем nrpe, плагины и разархивируем их

# cd /usr/src/ # wget https://github.com/NagiosEnterprises/nrpe/archive/3.0.1.tar.gz # wget https://nagios-plugins.org/download/nagios-plugins-2.1.4.tar.gz # tar xzvf 3.0.1.tar.gz # tar xzvf nagios-plugins-2.1.4.tar.gz

Перейдем в каталог с nrpe и выполним конфигурирование

# cd nrpe-3.0.1 # ./configure --prefix=/etc/nagios

Выполним сборку

# make nrpe

Добавим пользователя и группу, от имени которых будет работать nrpe сервер

# make install-groups-users

Выполним установку сервера и конфигурационного файла

# make install-daemon # make install-config

Установим стартовый скрипт

# make install-init # systemctl enable /lib/systemd/system/nrpe.service

Перейдем в директорию с исходным кодом плагинов и выполним конфигурирование

# cd /usr/src/nagios-plugins-2.1.4/ # ./configure --prefix=/etc/nagios --with-nagios-user=nagios --with-nagios-group=nagios

Выполним сборку и установку плагинов

# make # make install

В /etc/nagios/etc/nrpe.cfg разрешим nagios серверу получать информацию о системе, а так же укажем истинное название раздела диска для мониторинга, в предопределенной команде

Nano /etc/nagios/etc/nrpe.cfg . . . allowed_hosts=127.0.0.1, 192.168.1.13 . . . command=/etc/nagios/libexec/check_users -w 5 -c 10 command=/etc/nagios/libexec/check_load -w 15,10,5 -c 30,25,20 command=/etc/nagios/libexec/check_disk -w 20% -c 10% -p /dev/sda1 command=/etc/nagios/libexec/check_procs -w 5 -c 10 -s Z command=/etc/nagios/libexec/check_procs -w 150 -c 200 . . .

192.168.1.13 нужно заменить на адрес своего nagios сервера.
Запустим nrpe сервер и проверим его статус

# service nrpe start # service nrpe status ● nrpe.service - Nagios Remote Program Executor Loaded: loaded (/lib/systemd/system/nrpe.service; enabled; vendor preset: enabled) Active: active (running)


Добавление linux хоста в систему мониторинга

Для этого мы создадим файл linux-server.cfg в папке servers

# nano /etc/nagios/etc/servers/linux-serv.cfg define host{ use linux-server host_name linux-serv alias linux-serv address 192.168.1.12 } define service{ use generic-service host_name linux-serv service_description CPU Load check_command check_nrpe!check_load } define service{ use generic-service host_name linux-serv service_description Current Users check_command check_nrpe!check_users } define service{ use generic-service host_name linux-serv service_description /dev/sda1 Free Space check_command check_nrpe!check_sda1 } define service{ use generic-service host_name linux-serv service_description Total Processes check_command check_nrpe!check_total_procs } define service{ use generic-service host_name linux-serv service_description Zombie Processes check_command check_nrpe!check_zombie_procs }

192.168.1.12 нужно заменить на адрес своего linux сервера.
Директива use указывает на имя шаблона в templates.cfg, в котором определены настройки по умолчанию. Для того, чтобы новый хост появился в web интерфейсе нужно перезагрузить службу nagios

# service nagios restart

Для проверки работоспособности nrpe можно выполнить команду

# /etc/nagios/libexec/check_nrpe -H 192.168.1.12 NRPE v3.0.1

Для проверки определенного сервиса, нужно добавить аргумент с названием проверки

# /etc/nagios/libexec/check_nrpe -H 192.168.1.12 -c check_sda1 DISK OK - free space: /var/tmp 14549 MB (85% inode=88%);| /var/tmp=2527MB;14411;16212;0;18014

Название проверки мы определяли в файле nrpe.cfg

Command[check_sda1 ]=/etc/nagios/libexec/check_disk -w 20% -c 10% -p /dev/sda1

и в файле linux-serv.cfg

Define service{ use generic-service host_name linux-serv service_description /dev/sda1 Free Space check_command check_nrpe!check_sda1 }


Мониторинг Windows хостов

Для мониторинга windows хостов используется nt плагин. По умолчанию он входит в состав базовых плагинов, и его не нужно отдельно устанавливать. Через nt плагин nagios обращается к NSClient++, установленному на windows хосте. NSClient++ обращается к определенным модулям, которые сообщают ему информацию о системе. Полученную информацию NSClient++ передает nogios серверу.


Установка NSClient++

На windows хосте нужно установить NSClient++. Скачиваем последнюю версию и запускаем от имени администратора.

Нажимаем «Next»

Снова нажимаем «Next»

Выбираем «Typical»

Указываем адрес nagios сервера, пароль и оставляем две первых галочки. Жмем «Next»

Жмем «Install»

Жмем «Finish»


Добавление windows хоста в систему мониторинга

Для этого мы создадим файл windows-serv.cfg в папке servers

# nano /etc/nagios/etc/servers/windows-serv.cfg define host{ use windows-server host_name windows-serv alias My Windows Server address 192.168.1.33 } define service{ use generic-service host_name windows-serv service_description NSClient++ Version check_command check_nt!CLIENTVERSION } define service{ use generic-service host_name windows-serv service_description Uptime check_command check_nt!UPTIME } define service{ use generic-service host_name windows-serv service_description CPU Load check_command check_nt!CPULOAD!-l 5,80,90 } define service{ use generic-service host_name windows-serv service_description Memory Usage check_command check_nt!MEMUSE!-w 80 -c 90 } define service{ use generic-service host_name windows-serv service_description C:\ Drive Space check_command check_nt!USEDDISKSPACE!-l c -w 80 -c 90 } define service{ use generic-service host_name windows-serv service_description VMTools check_command check_nt!SERVICESTATE!-d SHOWALL -l VMTools } define service{ use generic-service host_name windows-serv service_description Explorer check_command check_nt!PROCSTATE!-d SHOWALL -l explorer.exe }

192.168.1.33 нужно заменить на адрес своего windows сервера.
Если при установке NSClient++ клиента указывался пароль, нужно добавить его в commands.cfg

# nano /etc/nagios/etc/objects/commands.cfg . . . # "check_nt" command definition define command{ command_name check_nt command_line $USER1$/check_nt -H $HOSTADDRESS$ -p 12489 -s MegaPass -v $ARG1$ $ARG2$ } . . .

И перезапустить службу nagios

# service nagios restart


Определение сервисной группы

Сервисная группа объединяет хосты, по определенным сервисным проверкам. Создадим сервисную группу CPU Load, и объединим хосты по проверке загрузки процессора.

# nano /etc/nagios/etc/objects/servicegroups.cfg define servicegroup{ servicegroup_name cpuload alias CPU Load members linux-serv,CPU Load, localhost,Current Load, windows-serv,CPU Load }

Члены группы определяются в директиве members по принципу
members=,,,,…,n >,n >

Чтобы группа стала доступна, нужно перезапустить службу nagios

# service nagios restart


Расположение связей хостов на карте

По умолчанию все хосты на карте соединены с Nagios Process. Бывают случаи, когда нужно переопределить такое поведение. К примеру связь должна идти не от Nagios Process, а от другой точки на карте (как пример соединение сервера через свитч). Делается это добавлением в секцию описания хоста директивы parents. Для наглядного примера изменим связь windows-serv от Nagios Process к linux-serv

# nano /etc/nagios/etc/servers/windows-serv.cfg define host{ use windows-server host_name windows-serv alias My Windows Server address 192.168.1.33 parents linux-serv } . . .

И перезапустить службу nagios

# service nagios restart

В первом случае все хосты имели связь с Nagios Process, во втором случае связь windows-serv начинается от linux-serv.


Включение иконок

В nagios есть возможность включения иконок рядом с названием хоста. Иконки находятся в папке /etc/nagios/share/images/logos. Можно воспользоваться готовым набором, можно загрузить из интернета. Для включения отображения иконок, нужно добавить следующие строки в templates.cfg

# nano /etc/nagios/etc/objects/templates.cfg . . . # Linux host definition template - This is NOT a real host, just a template! define host{ name linux-server ; The name of this host template use generic-host ; This template inherits other values from the generic-host template check_period 24x7 ; By default, Linux hosts are checked round the clock check_interval 1 ; Actively check the host every 5 minutes retry_interval 1 ; Schedule host check retries at 1 minute intervals max_check_attempts 10 ; Check each Linux host 10 times (max) check_command check-host-alive ; Default command to check Linux hosts notification_period workhours ; Linux admins hate to be woken up, so we only notify during the day ; Note that the notification_period variable is being overridden from ; the value that is inherited from the generic-host template! notification_interval 120 ; Resend notifications every 2 hours notification_options d,u,r ; Only send notifications for specific host states contact_groups admins ; Notifications get sent to the admins by default hostgroups linux-servers ; Host groups that linux servers should be a member of icon_image linux40.png statusmap_image linux40.gd2 register 0 ; DONT REGISTER THIS DEFINITION - ITS NOT A REAL HOST, JUST A TEMPLATE! } # Windows host definition template - This is NOT a real host, just a template! define host{ name windows-server ; The name of this host template use generic-host ; Inherit default values from the generic-host template check_period 24x7 ; By default, Windows servers are monitored round the clock check_interval 5 ; Actively check the server every 5 minutes retry_interval 1 ; Schedule host check retries at 1 minute intervals max_check_attempts 10 ; Check each server 10 times (max) check_command check-host-alive ; Default command to check if servers are "alive" notification_period 24x7 ; Send notification out at any time - day or night notification_interval 30 ; Resend notifications every 30 minutes notification_options d,r ; Only send notifications for specific host states contact_groups admins ; Notifications get sent to the admins by default hostgroups windows-servers ; Host groups that Windows servers should be a member of icon_image win40.png statusmap_image win40.gd2 register 0 ; DONT REGISTER THIS - ITS JUST A TEMPLATE } . . .

Перезапускаем службу nagios

# service nagios restart

Nagios является программой мониторинга информационных систем на основе открытого кода. Продукт является практически стандартом для систем мониторинга. Он позволяет (в том числе):

  • контролировать хосты (загрузка процессора, использование диска, журналы и т. д.) с разнообразными операционными системами - Windows, Linux, AIX, Solaris и т. д.;
  • контролировать сетевые службы (SMTP, POP3, HTTP, SSH и т. д.);
  • подключать дополнительные модули расширения (плагины) на любом языке программирования (Shell, C++, Perl, Python, PHP, C# и др. - архитектура модулей должна быть открыта), использовать собственные способы проверки служб;
  • осуществлять параллельную проверку систем (для повышения производительности);
  • отправлять оповещения в случае возникновения проблем с помощью электронной почты, сообщений SMS и т. п.;
  • автоматически реагировать на события службы или хоста.

Установка Nagios

Nagios является OpenSource-проектом, который доступен для установки как в исходных кодах, так и в подготовленных пакетах для различных клонов Linux. Понятно, что установка из исходных кодов имеет более свежую версию, чем подготовленные пакеты.

Установка из подготовленных пакетов осуществляется по правилам соответствующей версии операционной системы. Например, для Ubuntu команда будет выглядеть примерно так:

apt-get install nagios2

Это гарантирует установку всех необходимых для его работы библиотек и является самым простым способом, рекомендуемым для обычных пользователей.

Процедура быстрой установки программы на Ubuntu описана на сайте в разделе документации (http://nagios.sourceforge.net/docs/3_0/quickstart-ubuntu.html). Обратите только внимание на то, что за установкой из исходных кодов должна последовать и установка необходимых плагинов и дополнений.

После завершения установки работу программы можно проверить, открыв страницу http://localhost/nagios/ (вместо localhost следует использовать имя сервера Nagios в случае открытия страницы с удаленного компьютера). На запрос параметров авторизации необходимо ввести имя nagiosadmin и тот пароль, который вы назначили для этой учетной записи на предыдущих шагах.

На рис. 7.14 показана одна из страниц программы - структура контролируемой Nagios небольшой системы (схема строится в Nagios автоматически).

Рис. 7.14.
Схема сети в Nagios

Немного о логике работы Nagios

Nagios можно представить условно в виде двух частей: сервера (собственно о его установке и велась речь в предыдущем подразделе) и клиента, т. е. системы, которая контролируется при помощи агента или без его установки.

Существуют различные версии агентов, устанавливаемых на операционные системы. Наиболее часто для систем на основе Linux используется программа NRPE (ссылка на этот плагин присутствует на официальном сайте Nagios - http://www.nagios.org/), а для Windows-компьютеров - NSClient++ (http://trac. nakednuns.org/nscp/).

    Примечание

    Исторически первым клиентом для Windows был вариант программы NPRE. В целях совместимости в NSClient++ сохранен протокол, используемый в NPRE. Вы можете в настройках клиента указать использование как любого варианта работы, так и обоих (некоторые плагины, например, разработаны под конкретную версию клиента). Учтите, что в некоторых случаях NPRe предоставляет больше возможностей для контроля, например, с его помощью легко настроить выполнение сценариев на самой контролируемой системе.

Обратим внимание читателя на то, что для каждого клиента должна быть настроена конфигурация так, как описано в последующих разделах.

При помощи клиентов происходит активный мониторинг работы: сервер инициирует на клиенте заданную настройками команду и анализирует полученные данные. Кроме того, возможен пассивный режим работы в тех случаях, когда данные на сервер пересылаются по инициативе клиента. Например, так происходит обработка SNMP-трапов.

Как уже говорилось, для получения информации от клиента на сервере Nagios запускаются специальные команды (или программы). В терминах Nagios эти команды принято называть плагинами (plugin).

    Примечание

    Плагины несложно найти в Сети: с сайта Nagios есть ссылка на проекты на SourceForge.net, можно использовать сайт обмена плагинами http://www. monitoringexchange.org/ и другие источники.

Для того чтобы система мониторинга могла их использовать, такие команды должны быть описаны в специальном конфигурационном файле - commands.cfg. Именно эти описания в терминах Nagios и называются командами контроля.

Кроме описания самой команды, системе мониторинга надо знать, какие системы проверять, как часто запускать команду проверки, надо ли делать перерывы в ее использовании (например, не выполнять в определенные дни недели или в заданные периоды суток и т. п.). Совокупность таких настроек в Nagios принято называть службой (service), а определяются они отдельным блоком в файле, описывающим параметры контролируемой системы. Поскольку параметров в службе много (около полутора десятков) и многие из них обычно повторяются, то принято описывать повторяющиеся части в шаблонах (template), а непосредственно в описании службы просто указывать на такой шаблон (описания шаблонов хранятся в файле templates.cfg). Обратите внимание, что в шаблонах допускаются вложения: какую-то часть параметров можно выделить в отдельный шаблон и использовать его в других описаниях.

Каждая контролируемая система должна быть описана в конфигурации Nagios. Для удобства делается это в отдельных файлах (по типам устройств), которые при старте сервера включаются в общую конфигурацию. Первоначально ссылки на эти файлы "по направлениям" закомментированы, поэтому при необходимости начала контроля какого-либо класса устройств прежде всего следует удалить символ "#" в соответствующей строке файла nagios.cfg, а потом добавить блок описания системы в надлежащий файл.

В результате Nagios периодически выполняет на контролируемых системах заданные команды, собирает результаты и в случае возникновения критического события оповещает операторов. Результаты контроля можно сохранять (по умолчанию данные о производительности не хранятся) и представлять в графическом виде для анализа (см. разд. "Построение графиков в Nagios”). Также Nagios позволяет назначить команды, которые будут выполнены при возникновении событий. Таким способом можно автоматически устранять возникающие неисправности.

Если в системе будет контролироваться много компьютеров и устройств, то их удобно сгруппировать. В Nagios можно создать группы из компьютеров (устройств) и служб. Например, если нужно наблюдать за состоянием всех служб на серверах, то следует создать группу, в которую включить названия этих систем. А если вы хотите контролировать состояние, например, службы разрешения имен DNS, которая работает на нескольких физических системах, то в этом случае удобно создать группу для службы: достаточно будет видеть состояние всей группы как нормальное, чтобы быть уверенным в работе служб DNS на всех компьютерах. Так можно упростить администрирование и настройки мониторинга.

Из общих конфигурационных настроек отметим еще и параметры операторов - тех людей, кому программа будет отправлять сообщения в случае возникновения тех или иных событий. В Nagios индивидуальных операторов также можно объединять в группы и настраивать отправку сообщений определенного типа в конкретной группе специалистов. Также можно настраивать периоды времени. Их можно использовать для применения, например, различных типов контроля в рабочие и выходные дни, для разных способов оповещения администраторов (например, днем по электронной почте, а ночью - на пейджер) и т. д.

Оповещения могут эскалироваться: в случае появления повторяющихся событий оповещение может быть послано по иерархии следующему специалисту.

Структура конфигурационных файлов Nagios

Список стандартных файлов конфигурации Nagios приведен в табл. 7.1.

Таблица 7.1.
Список конфигурационных файлов Nagios

Имя файла

Назначение

Файл основных настроек конфигурации. Содержит имя и адрес администратора Nagios, ссылки на файлы конфигурации, импортируемые при старте системы

Файл описания ресурсов. Содержит синонимы для скрытия путей фактического расположения команд Nagios от конечного пользователя для повышения безопасности

Параметры настроек Web-сервера. В этом файле описываются дополнительные пользователи Nagios и предоставленные им права доступа

Папки objects и др.

Папки с отдельными файлами, которые импортируются в конфигурацию при старте Nagios. Эти папки описаны в файле nagios.cfg

Описание команд Nagios

Команды Nagios описываются в файле commands.cfg (путь по умолчанию /usr/local/nagios/etc/object/commands.cfg).

На практике в файле commands.cfg обычно необходимо указать расположение исполняемого файла, его название, которое будет использовано в Nagios, и параметры строки запуска. По умолчанию в файле конфигурации установленной системы уже содержатся некоторые описания типовых команд проверки (проверки пингом - check_ping, проверки http-сервера - check_http и многие другие). По этим образцам легко можно создать собственные команды проверки, хотя обычно используют готовые разработки, которые, практически для любого варианта контроля, можно легко найти в Сети. Далее приведен пример описания простейшей команды - проверки достижимости хоста при помощи команды ping:

Это описание создает команду с именем check-host-alive, в качестве исполняемого файла используется команда check_ping из установленных утилит Nagios. Символы, заключенные в знаки доллара, указывают используемые переменные. В терминах Nagios это макросы (macros), которые заменяются значениями в момент выполнения. Поскольку обычно мы привыкли к другому определению макросов, в этой книге будем называть эти названия переменными. $hostaddress$ традиционно заменяется при вызове на имя тестируемой системы, а $arg1$, $arg2$ и т. д. - последовательно на аргументы, указываемые в описании службы. Ключи w и c определяют значения, которые будут использованы для формирования статуса предупреждения (w) или ошибки (с). Как правило, можно указывать абсолютные или относительные значения (или все вместе: в типовой конфигурации, например, параметр w указывается как 3000.0,80%). Последний ключ (-р) указывает, что команда ping должна послать пять проверочных пакетов.

Службы Nagios

Службы обычно описываются в файлах конфигурации отдельно для каждого типа контролируемых систем (в общую конфигурацию Nagios такие файлы импортируются директивами cgf_file=... в файле nagios.cfg). Построение файлов конфигураций начинается с описания шаблонов, за которыми следуют описания хостов и потом описания служб.

В описании службы уже можно не повторять общие значения из шаблонов, поэтому типовое определение службы может выглядеть примерно так:

В этом примере служба с названием Memory Usage использует для работы настройки из шаблона generic-service для хоста, описанного под именем winserver. В качестве команды служба запускает check_nt с параметрами командной строки memuse и -w 80 -c 90 (вторые параметры указывают, какое возвращаемое значение используемой памяти нужно считать критическим - 90%, а для какого установить состояние в предупреждение - от 80 до 90%; сами параметры перечисляются через символ "!").

Обычно для контроля однотипных устройств можно использовать одинаковую команду. В этом случае в описании службы достаточно перечислить все такие устройства через запятую:

Для служб можно определять зависимости (dependencies). Делается это для того, чтобы скрыть "лишние" предупреждения. Например, если часть систем находится в локальной сети после маршрутизатора, то можно определить зависимость их от этого устройства. Понятно, что если этот маршрутизатор выйдет из строя, то и все устройства, находящиеся за ним, окажутся недоступными. Настройка зависимости позволит в случае его аварии скрыть предупреждения о недоступности зависимых устройств пока не восстановится работа коммутатора и не выполнять на них проверку состояния соответствующих служб.

Описание контролируемых систем в Nagios

Для удобства различные типы контролируемых систем принято описывать в различных конфигурационных файлах. Перечень типовых используемых файлов конфигураций приведен в usr/local/nagios/etc/nagios.cfg, причем часть файлов закомментирована. Так, если потребуется контролировать коммутаторы в сети, то раскомментируйте строку #cfg_file=/usr/local/nagios/etc/objects/switch.cfg и т. д.

Само описание хоста (оно будет содержаться в файле windows.cfg, или switch.cfg, или printer.cfg и т. д.) минимально может выглядеть в этом случае следующим образом:

В описании хоста можно включать два параметра, которые будут определять действия, выполняемые в случае возникновения сбоев в работе системы:

Nagios будет выполнять команду проверки check-host-alive и, как только будет обнаружена смена состояния хоста, начнется выполнение программы server-reboot. Таким способом можно, например, запускать остановившиеся службы на контролируемых серверах, перезагружать системы и т. п.

Для удобства анализа хосты можно объединять в группы. Для этого необходимо описать группу в файле конфигурации следующим образом:

Так же, как и для служб, для хостов можно описывать зависимости одних систем от других.

Описание временных параметров

Временные параметры используются в различных конфигурациях: в описаниях хостов (период, когда нужно осуществлять мониторинг, и период, когда нужно отправлять сообщения), служб и контактов (периоды, когда можно отправлять сообщения по хостам и по службам). Синтаксис определения нового периода легко понятен по примерам, включенным в файл /usr/local/nagios/etc/objects/timeperiods.cfg.

Необходимо в описании дать название шаблону и перечислить построчно диапазоны времени, которые в него включаются. Причем можно использовать названия дней недели, месяцев и порядковые номера (последний/первый понедельник месяца). Периоды времени можно перечислять через запятую. При необходимости из одного шаблона можно исключать периоды, описанные в другом шаблоне, если использовать директиву exclude с последующим перечислением периодов времени (через запятую).

Использование встроенных в Nagios команд контроля

При стандартной установке Nagios и плагинов в нем присутствует ряд команд (плагинов), которые можно использовать для контроля систем. Список их приведен в табл. 7.2.

Таблица 7.2.
Список плагинов Nagios

Утилита

Назначение

Контроль обновлений систем Linux, осуществляемых с помощью команд apt-get. Позволяет запустить процесс обновления при соответствующей настройке

Контроль мощности сигнала Wi-Fi стандарта Breezecom

Этот плагин позволяет запускать на удаленной системе команды, используя протокол SSH

Проверка соединения CLAMD (антивирусная программа) с удаленным хостом

Проверка состояния хостов в кластере Linux

Проверка доступности DHCP-серверов в сети

Проверка работы DNS-службы на хосте (используется команда dig)

Проверка объемов использования дискового пространства (собственных и примонтированных дисков)

Проверка объемов использования дисков, подключенных по протоколу SMB (обычно это диски от Windows-систем)

Проверка работы сервера DNS с использованием программы nslookup

Плагин для настройки: просто возвращает численный параметр и строку, описанные при его запуске

Проверка времени создания файлов

Проверка службы Flexlm license manager

Проверка ftp-соединения с удаленным хостом

Проверка состояния принтеров Hewlett Packard c установленной картой JetDirect (проверка осуществляется с использованием протокола SNMP)

Проверка http-соединений с удаленной системой. Проверка может осуществляться как по протоколу HTTP, так и по протоколу HTTPS. Можно контролировать время установки соединения, срок действия сертификатов сервера, а также ответ сервера (по поиску в ответе некоторой заданной строки, в том числе, допускается использование регулярных выражений)

Проверка удаленных хостов по протоколу ICMP

Проверка состояния локального диска (в Linux-системе) по S.M.A.R.T.-технологии

check_ifoperstatus

Проверка состояния работы сетевого интерфейса на заданной Linux-системе

Проверка состояния сетевого интерфейса на заданной Linux-системе

Проверка работы удаленного хоста по протоколу IMAP. Можно анализировать ответ сервера на посылаемую на него строку imap-запроса

Проверка IRCD-плагина Nagios

Проверка JABBER-подключения к удаленному хосту

Проверка LDAP-сервера (можно отправить запрос на поиск соответствующего атрибута)

То же проверка LDAP-сервера, только с использованием защищенных соединений (по протоколу SSL)

Проверка загрузки Linux-системы

Проверка журналов Linux-системы на наличие некоторой последовательности символов

Проверка числа сообщений в очереди почтового сервера (работает с различными версиями sendmail, qmail)

Проверяет заданную переменную в логе MRTG (Multi Router Traffic Grapher) на минимальное/максимальное значения (для контроля параметров производительности необходимо использовать check_mrtgtraf)

Проверяет значения исходящего и входящего трафика коммутаторов, записанные в журнал MRTG. Требуется первоначальная установка пакета MRTG (http://ee-staff.ethz.ch/~oetiker/webtools/mrtg/mrtg.html)

Проверяет состояние процесса Nagios на локальной машине

Проверка NNTP-соединения с указываемым хостом

То же, но с использованием протокола NNTPS

NRPE плагин Nagios

Этот плагин осуществляет сбор данных со службы NSClient на Windows-системах

Проверка NTP-сервера. Вместо этого плагина рекомендуется использовать check_ntp_peer

Проверка NTP-сервера. Позволяет оценивать, в том числе, дрожание (jitter) сигнала времени

Этот плагин проверяет разницу времени между локальным сервером и указываемым удаленным серверов времени

Используется для сбора данных с Novell-серверов. Требует установки дополнительных пакетов

Проверяет подключение к серверу Oracle, позволяет оценить размеры баз данных и наличие свободного места, состояние буферов кэширования и т. д.

Проверяет состояние Over-CR collector daemon на удаленной системе (http://www.molitor.org/overcr)

Проверяет соединение с удаленной системой с использованием пакетов ping

Проверка удаленных хостов по протоколу POP. Позволяет отправить на почтовый сервер строку запроса и проанализировать ответ сервера

Проверяет состояние процессов Linux-системы

Проверяет состояние службы REAL (RTCP-подключений)

Проверяет состояние RPC-службы на указанном хосте

Проверяет состояние аппаратных датчиков системы Linux. Информация с датчиков получается с помощью пакета lm_sensors

Проверяет IMAP-подключение по безопасному каналу к серверу. Контролируется время ответа и содержание (по анализу ответа на заданный запрос), валидность сертификатов

Проверяет SMTP-подключение к серверу. Ответ почтового сервера может анализироваться на наличие заданных строк. Также контролируется время отклика

Проверка удаленных систем (и получение с них данных) по протоколу SNMP

Проверяет POP-подключение по безопасному каналу к серверу. Контролируется время ответа и содержание (по анализу ответа на заданный запрос), валидность сертификатов

Проверка подключения к SSH-серверу

Проверяет SMTP-подключение по безопасному каналу к серверу. Ответ почтового сервера может анализироваться на наличие заданных строк. Также контролируется время отклика

Проверяет свободное пространство в swap-файле локальной системы

Проверка TCP-подключения к указанной системе. Проверяется наличие отклика, его время, наличие в отклике заданных строк и т. п.

Проверка времени на указанном хосте

Проверка UDP-подключения к указанной системе. Проверяется наличие отклика, его время, наличие в отклике заданных строк и т. п.

Проверка состояния источников бесперебойного питания на локальной или удаленной Linux-системе. Для работы плагина требуется, чтобы в системе был установлен UPSD daemon (http://www.networkupstools.org)

Проверка числа пользователей, вошедших в локальную систему

Проверка уровня WI-FI-сигнала

Каждый из этих плагинов содержит справочную информацию, описывающую особенности его применения (вывод справки по команде <плагин> -h).

Для того чтобы задействовать плагин для мониторинга систем, в Nagios должна быть описана использующая его команда. В файле commands.cfg приведено несколько наиболее часто употребляемых примеров контроля систем. При практическом использовании Nagios этот файл должен быть расширен за счет ваших собственных команд контроля.

Мониторинг серверов Windows в Nagios

Для мониторинга систем на основе Windows разработано несколько различных агентов. Наиболее часто используемыми из них являются NSClient++, NC_NET (http://sourceforge.net/projects/nc-net) и OpMonAgent (http://www.opmon.org/ project/opmonagent.zip). Функционал данных агентов практически идентичен, поэтому мы рассмотрим использование агента NSClient++, являющегося, на взгляд автора, наиболее популярным из упомянутого списка.

Агент NSClient++ доступен со страницы http://trac.nakednuns.org/nscp/. Эту программу можно загрузить как в виде архива (zip), так и установочным файлом (msi), причем для 32- и 64-битных платформ следует использовать различные версии агента. Если вы загрузили архив, то его необходимо распаковать в желаемую папку и установить службу Windows командой

NSClient++ -install

Удобнее воспользоваться msi-файлом, поскольку в этом случае мастер установка сразу внесет в конфигурацию агента часть настроек по результатам ваших ответов (рис. 7.15).

Рис. 7.15.
Настройка параметров программы NSClient++.
Настройки пользователя, введенные на этапе установки, будут сохранены программой в файле конфигурации

После установки необходимо разрешить взаимодействие службы с рабочим столом, для чего следует открыть свойства службы (Панель управления | Администрирование | Службы | найти службу NSClientpp... (полное название зависит от версии) и открыть ее свойства) и включить опцию Разрешить взаимодействие с рабочим столом .

Перед запуском службы следует обязательно проверить параметры ее работы. Для этого откройте файл nsc.ini (в папке установки агента) и снимите комментарий с тех строк, которые соответствуют модулям программы, предполагаемым к использованию для мониторинга системы. Достаточно подробные описания параметров конфигурации приведены в документации плагина на странице http://trac. nakednuns.org/nscp/wiki/doc/Configuration.

При настройке конфигурации следует исходить из принципа, что не следует включать больше опций, чем это необходимо в текущий момент. Например, если вы не планируете получать информацию посредством WMI-запросов, то и не стоит загружать модуль CheckWMI.dll.

Обратите внимание на возможность запуска агента в диагностическом режиме. При этом вы сможете как увидеть потенциальные ошибки в конфигурационном файле, так и отладить собственные запросы (рис. 7.16).

Рис. 7.16.
Окно программы NSClient++ в диагностическом режиме

Для запуска NSClient++ в диагностическом режиме достаточно в командной строке набрать

NSClient++ /test

В окне NSClient++ вы сможете, во-первых, увидеть результаты загрузки всех модулей, а во-вторых, вводить собственные команды и видеть результаты выполнения как запросов со стороны сервера Nagios, так и локальных команд. На рис. 7.16 показано окно отладки плагина, в котором введена команда CheckDriveSize ShowAll MinWarnFree=20% MinCritFree=10% Drive=D:\ и виден ответ системы.

Плагин NSClient++ позволяет контролировать параметры, приведенные в табл. 7.3. Подробности использования подробно описаны в технической документации (http://trac.nakednuns.org/nscp/wiki/CheckCommands) и по имеющимся примерам легко составить собственные команды контроля состояния Windows.

Таблица 7.3.
Параметры Windows, контролируемые NSClient++

Параметр

Описание

Контролирует размер файла или папки

Контролирует размер свободного или использованного пространства жестких или сменных дисков (тип диска можно выбирать в команде)

Контролирует файлы по критериям даты их создания, времени последнего доступа, записи в файл или по размеру файла

Ищет сообщения об ошибках в файле журнала. Поскольку таких сообщения обычно много, использование данного контроля сильно загружает систему

Контролирует загрузку процессора в течение задаваемого периода времени

Контролирует время работы системы

CheckServiceState

Контролирует состояние службы Windows (критическое сообщение формируется в случае несоответствия фактического состояния службы заданному в качестве параметра в команде). Можно контролировать все службы одновременно с заданием исключения. В качестве названия службы надо указывать то, которое отображается в свойствах службы

Контролирует состояние процессов Windows. Фактически позволяет наблюдать за состоянием процесса, найденного по имени исполняемого файла. Можно контролировать также по числу одновременно запущенных процессов

Контролирует состояние виртуальной и физической памяти; доступен параметр количества записанных страниц памяти (commited pages)

Контролирует значения счетчиков производительности. Объекты счетчиков желательно - в целях удобства использования - задавать в описаниях команд (служб)

CheckAlwaysOK
CheckAlwaysCRITICAL
CheckAlwaysWARNING
CheckMultiple
CheckOK
CheckCRITICAL
CheckWARNING
CheckVersion

Так называемые хэлперы. Возвращают заранее определенное значение (какое - можно судить по названию команды). Используются в процессах настройки и отладки системы

Перечисленным списком не ограничиваются возможности контроля Windows-систем. Вы можете добавить контролируемые параметры, например, за счет использования внешних сценариев.

Мониторинг систем Windows может осуществляться на основе различных протоколов. Наиболее часто используемыми являются протоколы NSClient и NRPE (для "пассивного" мониторинга можно использовать также протокол NSCA, о котором более подробно можно прочесть в онлайновой документации). На практике можно использовать любой из них, необходимо только включить/выключить соответствующие модули в файле настроек клиента (nsc.ini). В то же время, на взгляд автора, протокол NRPE несколько более гибок в использовании и обеспечивает шифрование данных обмена. При использовании протокола NRPE синтаксис команд строится следующим образом:

check_nrpe ... -c <команда> -a <аргументы>

Например, проверка доступной физической памяти может быть осуществлена так:

check_nrpe -H 192.168.0.9 -c CheckMem -a MaxWarn=70% MaxCrit=>80% type=physical

Мониторинг Windows-систем на основе WMI

В состав NSClient++ входит модуль CheckWMI.dll, позволяющий контролировать Windows-систему с использованием инструментария WMI.

Модуль CheckWMI фактически состоит из двух подмодулей: CheckWMIValue и CheckWMI. Модуль CheckWMIValue оптимизирован для контроля численных значений. Например, текущей загруженности процессора (это число процентов загрузки) или разрешения монитора (число пикселов) и т. п. В этой команде вы можете просто указать контролируемые параметры и минимальные/максимальные допустимые для них значения, например, так:

CheckWMIValue "Query=Select PelsWidth from win32_DisplayConfiguration"
MinCrit=640 MinWarn=800 Check:Width=PelsWidth

Приведенная здесь команда составлена для использования в режиме отладки (nsclient++ /test). Она запрашивает разрешение дисплея по горизонтали и сообщает о критическом состоянии в случае, если оно равно или менее 640, и выдает предупреждение, если значение не превосходит 800. Из особенностей использования этой команды отметим, что после строки запроса (которая заключена в кавычки) нужно писать параметры минимальных/максимальных значений и только потом указывать название параметра, который контролируется командой (PelsWidth). Поясним также опцию Check, используемую в командной строке. После Check необходимо вписать название параметра, которое будет применяться в системе контроля (можно сохранить и название из описания в WMI, но часто более удобно ввести собственное название), и название, соответствующее объекту класса (то, которое отображается, например, в утилите просмотра WMI Object Browser).

Другие примеры (в том числе в вариантах для конфигурации Nagios) приведены на странице http://trac.nakednuns.org/nscp/wiki/CheckWMIValue.

Модуль CheckWMI нужно использовать в тех случаях, когда предполагается либо анализ строкового параметра, возвращаемого в результате WMI-запроса, либо запрос нескольких значений. При использовании CheckWMI строки запроса несколько усложняются из-за необходимости использования фильтров. Синтаксис CheckWMI описан на странице http://nsclient.org/nscp/wiki/CheckWMI/ CheckWMI. По своему построению запросы CheckWMI сходны с фильтрами, используемыми для анализа журналов работы системы.

Мониторинг серверов Linux в Nagios

Контроль работы серверов Linux осуществляется с использованием плагина NRPE, причем на сервере Nagios он должен быть установлен как плагин, а на контролируемой системе Linux - в качестве демона. Для установки может быть использована как подготовленная версия, так и исходные коды плагина.

Кроме стандартного комплекта администратор может использовать при мониторинге любой из доступных плагинов, которые широко представлены в Интернете.

Используя протокол NRPE, можно на контролируемом хосте вызвать команду check_nrpe для проверки другого хоста. Таким способом можно контролировать некоторую подсеть через один компьютер. При такой организации контроля на хосте, используемом в качестве прокси, обязательно должны быть установлены как демон протокола NRPE, так и плагин.

Мониторинг систем с использованием протокола SNMP

Для работы по протоколу SNMP в Nagios должен быть установлен соответствующий плагин. Он включен в состав плагинов Nagios, но воспользоваться им можно только в том случае, если предварительно был установлен пакет net-snmp. Поэтому, если предполагается использование SNMP-модуля, данный пакет необходимо загрузить с сервера http://net-snmp.sourceforge.net/, после чего заново перекомпилировать плагины и повторно установить их. Автор рекомендовал бы при новой установке сначала выполнить команду make clean, которая очистила бы настройки предыдущей инсталляции.

    Примечание

    На сайте http://net-snmp.sourceforge.net/ необходимый пакет представлен только в исходных кодах или в RPM-формате.

После настройки возможности контроля по протоколу SNMP необходимо протестировать 1 работоспособность на простейших запросах. Например, проверить длительность работы устройства:

/usr/local/nagios/libexec/check_snmp -H <адрес_устройства> -C -o
sysUpTime. 0

В ответ вы должны получить примерно такое сообщение:

SNMP OK - Timeticks: (622339555) 72 days, 0:43:15.55 |

Команда check_snmp может запрашивать параметр, принимающий численное значение, и проверять соответствие его значения некоторому диапазону. Так, можно указать значения для состояния предупреждения и критического состояния (ключи -w и -с) или диапазон значений (через двоеточие). Обратите внимание, что если вы хотите, чтобы, например, критическим значением интерпретировалось бы возвращаемое число в диапазоне от а до b (b > a), то диапазон нужно указывать b:a. Если указать диапазон в "привычном" виде, как a:b, то если возвращаемое значение попадает в этот диапазон, то результат будет считаться нормальным состоянием, а если не попадает - то как предупреждение или критическое (в зависимости от использованного ключа). Кроме того, команда может проверять возвращаемое строковое значение (значение, с которым проверяется ответ, следует указать в ключе -s) или даже выполнять проверку с использованием регулярных выражений (ключи -r, -R). Также в запросе можно проверять сразу несколько параметров, перечисляя их OID через запятую, например так:

После того как запрос будет составлен и отлажен, достаточно описать новую команду в файле commands.cfg и добавить нужные службы в файлы описания контролируемых устройств.

В Сети можно найти достаточное число примеров настройки Nagios для контроля устройств с использованием протокола SNMP, которые можно применить на практике. Так, по адресу http://wiki.nagios.org/index.php/Howtos:snmp-apc-smart-ups содержится описание настроек, с помощью которых можно контролировать состояние источников бесперебойного питания от APC (состояние батареи, параметры напряжения, температуру и т. д.).

Мониторинг коммутационного оборудования

Активное оборудование сети - коммутаторы, концентраторы, модемы и т. п. контролируются по протоколу SNMP (управляемые модели). Можно получать состояния портов оборудования, выдавать предупреждения в случае возникновения на портах некоторого числа ошибок передачи пакетов, наблюдать за температурой устройства и количеством VPN-сессий. Достаточно только выбрать соответствующие идентификаторы по описанию для мониторинга по протоколу SNMP. В большинстве случаев этого достаточно для контроля.

Однако, кроме указанных параметров, администраторы часто хотят знать реальную загрузку оборудования, процент использования пропускной способности. Эти значения нельзя получить, запрашивая тот или иной параметр состояния оборудования. Они вычисляются на основе анализа периодически получаемых данных. Специально для такого мониторинга создана одна из самых популярных программ - MRTG. Ее возможности обработки параметров коммутаторов используются в Nagios.

Программа MRTG по протоколу SNMP с активного оборудования собирает статистику, которая при помощи плагина check_mrtgtraf впоследствии передается в Nagios для отображения.

После установки программы MRTG необходимо создать файлы настроек, в которых указать устройства и значения параметров, которые программа будет собирать. Эти настройки должны быть приведены в файле /etc/mrtg.conf. Формирование конфигурации MRTG достаточно сложная задача, поэтому в пакете предусмотрена специальная программа, которая автоматически опросит устройство и сформирует файл конфигурации - cfgmaker. При ее запуске в качестве параметров нужно указать строку community и адрес устройства. Вывод программы следует перенаправить в файл, значения из которого мы потом просто импортируем в файл настроек. В качестве имени такого файла удобно использовать имя (или адрес) опрашиваемого устройства:

cfgmaker community@адрес > /etc/mrtg/адрес.cfg

По итогам работы команды cfgmaker достаточно только оставить в файле конфигурации те блоки данных, которые предполагается анализировать для данного устройства. Учитывая, что по информации файла, программа создает заголовки и служебные описания на страницах графика, имеет смысл откорректировать названия и описания тех позиций, которые предполагается отображать на графиках. Поскольку анализировать пропускную способность по портам, к которым подключены оконечные устройства (серверы, рабочие станции) не имеет смысла, то целесообразно сохранить мониторинг пропускной способности только для магистральных портов (портов, которые подключены к другим коммутаторам или концентраторам).

После редактирования файла настроек можно запустить программу mrtg, указав в качестве параметра конфигурацию устройства. Для систем с кодировкой UTF-8 команда запуска будет выглядеть так:

env LANG=C /usr/bin/mrtg /etc/mrtg.cfg

При установке пакета MRTG в системе настраивается автоматический сбор информации с коммутаторов один раз в течение пяти минут. При желании этот период можно увеличить, если соответствующим образом отредактировать файл /etc/cron.d/mrtg.

Графики производительности по отдельным портам устройств можно просмотреть, если открыть в обозревателе папку http://nagiosserver/mrtg/ и выбрать соответствующий файл. При желании можно сформировать общий индексный файл для упрощения отображения. Делается это с помощью команды indexmaker. Необходимые ключи для формирования файла легко уточнить по справочной информации после вызова indexmaker -h.

Всед за описанной настройкой можно использовать команды Nagios check_mrtg и check_mrtgtraf для сбора данных производительности. Команда check_mrtgtraf требует указания следующих параметров:

check_mrtgtraf -F -a -w входящий,исходящий-c входящий,исходящий -e период_устаревания

В этом примере параметр -a указывает, будет ли браться в учет максимальное значение (max) за период анализа или же программа оценит среднее значение (avg). После ключей w и c указываются пары лимитов для исходящего и входящего трафика по данному порту. По какому порту система будет контролировать данные, определяется выбранным файлом журнала. На рис. 7.17 приведен пример графика, формируемого пакетом mrtg.

Рис. 7.17.
График загрузки порта коммутатора

Использование собственных программ мониторинга

Nagios позволяет легко создать собственные плагины для мониторинга любой системы. В качестве таковых могут быть использованы любые исполняемые файлы. Необходимо только обеспечить, чтобы они сообщали код завершения работы в соответствии с табл. 7.4.

Таблица 7.4.
Коды возврата программ мониторинга системы для Nagios

При создании сценариев необходимо учитывать, что запускаться они будут от имени службы агента мониторинга. По умолчанию эта служба имеет максимальные права для локальной системы, но не может взаимодействовать с компьютерами сети. Если вы предполагаете использовать сценарии для сбора данных с других компьютеров, то необходимо либо предусматривать в сценариях операции подключения с указанием параметров соответствующей учетной записи, либо настроить агент для запуска от другого имени.

Построение графиков в Nagios

Команды Nagios, при помощи которых контролируются системы, возвращают не только состояние (хорошо или плохо), но и данные по конкретным параметрам (например, процент использования диска или число вошедших в систему пользователей). Эти данные по умолчанию не сохраняются, но могут быть использованы, например, для прорисовки графиков соответствующих служб.

Для реализации такой возможности необходимо установить дополнительный плагин. Одним из наиболее популярных плагинов для создания графиков в Nagios является пакет nagiosgraph, доступный к загрузке с сайта http://sourceforge.net/ projects/nagiosgraph/.

На рис. 7.18 представлен пример страницы контроля состояния служб, на которой при подведении курсора мыши к соответствующему параметру динамически отображается график его изменения. При желании администратор может перейти к выбору графика по любой службе и за заданный период времени.

Рис. 7.18.
Пример страницы с динамическим графиком

Настройка интерфейса Nagios

Для Nagios разработано много дополнений, которые позволяют настроить отображение данных мониторинга в соответствии с потребностями администратора. Так, вместо тактического обзора (рис. 7.19) можно использовать настраиваемые карты сети, на которых Nagios будет отображать состояние каждого устройства.

Рис. 7.19.
Стандартный вариант отображения суммарного состояния системы в Nagios

На рис. 7.20 (пример с сайта http://www.nagvis.org) приведен реальный вариант карты мониторинга, построенной при помощи пакета NagVis.

Рис. 7.20.
Отображение состояния сети при использовании пакета NagVis

В этом случае Nagios в реальном режиме времени будет отображать индикаторы по устройствам и линиям связи. При этом на карте возможно отображать суммарные состояния по группам (хостов и служб), значения фактического трафика по линиям связи и т. п. Понятно, что такие представления очень удобны при практическом использовании.

1 В примерах использован протокол SNMP версии 1. В реальных условиях обычно используется протокол версии 3, поэтому примеры необходимо дополнить параметрами аутентификации.

ЙУРПМШЪПЧБОЙС Nagios Ч ТЕБМШОПК ЦЙЪОЙ, НЩ ЪБЧПЕЧБМЙ ДМС УЕВС ДПЧПМШОП РТПУФПТОПЕ НЕУФП РПД УПМОГЕН. рПУМЕ ФТЕИ РТЕДЩДХЭЙИ УФБФЕК Х ЮЙФБФЕМЕК ОБЛПРЙМПУШ ОЕЛПФПТПЕ ЛПМЙЮЕУФЧП ЧПРТПУПЧ. ьФП ЪОБЮЙФ, ЮФП, ОЕУНПФТС ОБ ЧУЕ ВЩМЩЕ ХУРЕИЙ, РТЙЫМП ЧТЕНС РТЕЛТБФЙФШ ТБУЫЙТСФШ УЧПЙ ЧМБДЕОЙС Й РЕТЕКФЙ ОБ ЙОФЕОУЙЧОЩК РХФШ ТБЪЧЙФЙС. уМЕЗЛБ ЪБНЕДМЙН УЧПК ВЕЗ ЧРЕТЕД Й ЪБКНЕНУС ВМБЗПХУФТПКУФЧПН ЪБИЧБЮЕООПЗП РТПУФТБОУФЧБ. лБЛ ПВЩЮОП, Ч ОБЮБМЕ УФБФШЙ ИПФЕМПУШ ВЩ ХРПНСОХФШ ФП ПВУФПСФЕМШУФЧП, ЮФП ПРЙУЩЧБЕНЩЕ ДЕКУФЧЙС ЧЩРПМОСМЙУШ ОБ ИПУФЕ, ТБВПФБАЭЕН РПД ХРТБЧМЕОЙЕН FreeBSD 4.8. пДОБЛП РЕТЕЦЙЧБФШ РП ЬФП РПЧПДХ ОЕ УФПЙФ, ФБЛ ЛБЛ ЧУЕ ПВУХЦДБЕНЩЕ РТЙЕНЩ ВХДХФ ПФМЙЮОП ТБВПФБФШ У МАВЩН ДЙУФТЙВХФЙЧПН Unix-РПДПВОЩИ ПРЕТБГЙПООЩИ УЙУФЕН, ДМС ЛПФПТЩИ УХЭЕУФЧХЕФ ЧЕТУЙС Nagios. еДЙОУФЧЕООЩН ЭЕЛПФМЙЧЩН НПНЕОФПН НПЦЕФ ВЩФШ ТБЪМЙЮЙЕ Ч ЙНЕОБИ ДЙТЕЛФПТЙК, ЗДЕ ТБУРПМПЦЙМЙУШ Nagios Й ПУФБМШОПЕ ЧУРПНПЗБФЕМШОПЕ РТПЗТБННОПЕ ПВЕУРЕЮЕОЙЕ, ОЕПВИПДЙНПЕ ДМС ОБЫЕК ТБВПФЩ. оБДЕАУШ, У ЬФЙН НЕМЛЙНЙ РТПВМЕНБНЙ ЧЩ УНПЦЕФЕ ТБЪПВТБФШУС УБНПУФПСФЕМШОП.

рЕТЧЩН ДЕМПН ИПФЕМПУШ ВЩ ОБХЮЙФШ Nagios ЗПЧПТЙФШ ОБ ЮЙУФПН ТХУУЛПН СЪЩЛЕ. лБЛ ЧУЕЗДБ, ЧУРПНЙОБЕН, ЮФП Ч ЬФПН НЙТЕ ОЕФ ОЙЮЕЗП ОЕЧПЪНПЦОПЗП. рТЙНЕТОП ДЕЧСФШ НЕУСГЕЧ ОБЪБД С ЪБЧЕТЫЙМ ТБВПФЩ РП МПЛБМЙЪБГЙЙ Nagios ЧЕТУЙЙ 1.06 beta. ъБФЕН, РП НЕТЕ ЧЩИПДБ ОПЧЩИ ЧЕТУЙК РТПДХЛФБ, ФБ ЦЕ УХДШВБ РПУФЙЗМБ ПЖЙГЙБМШОЩЕ ТЕМЙЪЩ 1.0 Й 1.1. нЕФПДЙЛБ ТХУЙЖЙЛБГЙС ДМС ЧУЕИ ЧЕТУЙК ПДЙОБЛПЧБ, РПЬФПНХ С ВХДХ ПРЙУЩЧБФШ ЕЕ ОБ РТЙНЕТЕ ЧЕТУЙЙ 1.1, ЛБЛ ОБЙВПМЕЕ УЧЕЦЕК Й, ОБДЕАУШ, ОБЙВПМЕЕ ТБУРТПУФТБОЕООПК. рМАУ ЛП ЧУЕНХ, ЙНЕООП ЬФБ ЧЕТУЙС ХУФБОПЧМЕОБ Х НЕОС. йФБЛ, ЮФП ЦЕ ОБН ОХЦОП УДЕМБФШ? рЕТЧЩН ДЕМПН УЛБЮЙЧБЕН ДЙУФТЙВХФЙЧ ЧЕТУЙЙ Nagios, ЛПФПТБС ХУФБОПЧМЕОБ Х ЧБУ У ПЖЙГЙБМШОПЗП УБКФБ http://www.nagios.org. ъБФЕН ЪДЕУШ htpp://onix.opennet.ru/files/, ВЕТЕН УППФЧЕФУФЧХАЭЙЕ ЖБКМЩ МПЛБМЙЪБГЙЙ.

тБУРБЛПЧЩЧБЕН ДЙУФТЙВХФЙЧ Й РБЛЕФ МПЛБМЙЪБГЙЙ Ч МАВПЕ ХДПВОПЕ НЕУФП, ОБРТЙНЕТ Ч ДЙТЕЛФПТЙА /tmp.

# tar zxvf nagios-1.1.tar.gz # tar zxvf nagios_rus_1_1.tar.gz

лПРЙТХЕН ЧУЕ ОЕПВИПДЙНЩЕ ЖБКМЩ ЙЪ РБЛЕФБ МПЛБМЙЪБГЙЙ Ч ТБУРБЛПЧБООЩК ДЙУФТЙВХФЙЧ Й ЪБФЕН, ЛБЛ ПВЩЮОП, РТПЧПДЙН ЛПОЖЙЗХТЙТПЧБОЙЕ.

# cp -R /tmp/nagios_rus_1_1/* /tmp/nagios-1.1/ # cd nagios-1.1 # ./configure --prefix=/usr/local/nagios --with-cgi-url=/nagios/cgi-bin --with-html-url=/nagios/ \ --with-nagios-user=nagios --with-nagios-grp=nagios --with-gd-lib=/usr/local/lib \ --with-gd-inc=/usr/local/include/gd

с ДХНБА, ПВЯСУОСФШ ОБЪОБЮЕОЙЕ ЛМАЮЕК ЛПНБОДЩ configure УНЩУМБ ОЕФ. рПЬФПНХ УТБЪХ ЦЕ РЕТЕИПДЙН Л ЛПНРЙМСГЙЙ.

# make all

рПУМЕ ФПЗП, ЛБЛ ЬФПФ РТПГЕУУ ЪБЧЕТЫЙФУС ХУРЕЫОП, ПУФБОБЧМЙЧБЕН ДЕНПОБ Nagios. чУЕ-ФБЛЙ ТЕЪБФШ РП ЦЙЧПНХ ОЕ ПЮЕОШ ИПТПЫП, Й РПДПВОЩЕ ДЕКУФЧЙС НПЗХФ ЧЩЪЧБФШ ТБЪОППВТБЪОЩЕ УВПЙ Ч ЖХОЛГЙПОЙТПЧБОЙЙ УЙУФЕНЩ НПОЙФПТЙОЗБ.

# /usr/local/etc/nagios.sh stop

чПФ ФЕРЕТШ НПЦОП УРПЛПКОП ЧЩРПМОСФШ ЙОУФБММСГЙА.

# make install

ч ТЕЪХМШФБФЕ ЖБКМЩ ЙЪ ДЙТЕЛФПТЙЙ ДЙУФТЙВХФЙЧБ ДПМЦОЩ ЪБНЕОЙФШ ФЕ ЖБКМЩ, ЛПФПТЩЕ Nagios ЙУРПМШЪПЧБМ ДП УЕЗПДОСЫОЕЗП ДОС. фБЛЙН ПВТБЪПН, ЖБКМЩ ЙЪ /tmp/nagios-1.1/html ДПМЦОЩ РПРБУФШ Ч /usr/local/nagios/share/, Б УЛПНРЙМЙТПЧБООЩЕ ЖБКМЩ ЙЪ /tmp/nagios-1.1/cgi Ч /usr/local/nagios/sbin/.

уОПЧБ ЪБРХУФЙЧ Nagios Й ПВТБФЙЧЫЙУШ Л Web-ЙОФЕТЖЕКУХ, ДПМЦОЩ ХЧЙДЕФШ ЮФП-ФП ЧТПДЕ ФБЛПК ЛБТФЙОЛЙ.

уХДС РП ЧУЕНХ, ТХУЙЖЙЛБГЙС РТПЫМБ ВЕЪ УХЮЛБ-ВЕЪ ЪБДПТЙОЛЙ. уМЕДХАЭБС РТПВМЕНБ, ОХЦДБАЭБСУС Ч ЙУРТБЧМЕОЙЙ - ОЕТБВПФБАЭБС ЛБТФБ УЕФЙ. рТЙ РПРЩФЛЕ ЧПУРПМШЪПЧБФШУС РХОЛФБНЙ "лБТФБ УЕФЙ" (statusmap.cgi) Й "3D ЛБТФБ УЕФЙ" (statuswrl.cgi) ОБ ЬЛТБОЕ ЧНЕУФП ЛБТФЩ ПВЩЮОП РПСЧМСЕФУС ФБЛПЕ НЕОА:

рТЙЮЙО ЬФПНХ НПЦЕФ ВЩФШ ДЧЕ. рЕТЧБС: ОЕ ТБВПФБЕФ ВЙВМЙПФЕЛБ GD, ЛПФПТХА НЩ ХУФБОПЧЙМЙ ЧНЕУФЕ У Nagios. й ЧФПТБС: Ч ЙУРПМШЪХЕНПН ОБНЙ ВТБХЪЕТЕ ПФУХФУФЧХЕФ ЙМЙ ОЕРТБЧЙМШОП ТБВПФБЕФ РПДЛМАЮБЕНЩК НПДХМШ ДМС ПФПВТБЦЕОЙС vrml.

йФБЛ, ОБЮОЕН У РЕТЧПК РТПВМЕНЩ. еУМЙ ЧЩ РПНОЙФЕ, РЕТЕД ЛПНРЙМЙТПЧБОЙЕН Nagios НЩ ЙУРПМШЪПЧБМЙ ЛПНБОДХ configure. уМЕДХЕФ ПВТБФЙФШ ПУПВПЕ ЧОЙНБОЙЕ ОБ РБТБНЕФТЩ --with-gd-lib Й --with-gd-inc, ЛПФПТЩЕ ХЛБЪЩЧБАФ ОБ ДЙТЕЛФПТЙЙ, ЗДЕ Ч ОБЫЕК УЙУФЕНЕ ОБИПДСФУС ЪБЗПМПЧПЮОЩЕ Й ВЙВМЙПФЕЮОЩЕ ЖБКМЩ РБЛЕФБ GD. лПНБОДБ configure РЩФБЕФУС БЧФПНБФЙЮЕУЛЙ РПДЛМАЮЙФШ ОХЦОЩЕ ЖБКМЩ Л РТПЕЛФХ, ОП ЕК ОЕ ЧУЕЗДБ ЬФП ХДБЕФУС. пВЩЮОП Ч РТПГЕУУЕ ЛПОЖЙЗХТЙТПЧБОЙС ОБ ЬЛТБО ЧЩЧПДСФУС УППФЧЕФУФЧХАЭЙЕ УППВЭЕОЙС, ОП ЧУС РТПВМЕНБ Ч ФПН, ЮФП ФХДБ ЦЕ УЩРЕФУС ДПЧПМШОП НОПЗП РТПЮЙИ ДЙБЗОПУФЙЮЕУЛЙИ УППВЭЕОЙК, Й РПЬФПНХ ОБКФЙ Й РПОСФШ ФП, ЮФП ОБН ОХЦОП Ч ЬФПН ЧЙОЕЗТЕФЕ, ДПЧПМШОП УМПЦОП. дМС ВПМЕЕ ФПЮОПЗП ДЙБЗОПУФЙТПЧБОЙС РТПВМЕНЩ ПЮЙУФЙН ДЙУФТЙВХФЙЧ ПФ ЖБКМПЧ, УПЪДБООЩИ ЧП ЧТЕНС РТЕДЩДХЭЕК ЛПНРЙМСГЙЙ ЛПНБОДПК:

# make clean

ъБФЕН РЕТЕОБРТБЧЙН ЧУЕ УППВЭЕОЙС ЛПНБОДЩ configure Ч ЖБКМ make.log c РПНПЭША УМЕДХАЭЕК ЛПОУФТХЛГЙЙ.

# ./configure --prefix=/usr/local/nagios --with-cgi-url=/nagios/cgi-bin --with-html-url=/nagios/ \ --with-nagios-user=nagios --with-nagios-grp=nagios --with-gd-lib=/usr/local/lib \ --with-gd-inc=/usr/local/include/gd > make.log

еУМЙ ЧП ЧТЕНС ЛПНРПОПЧЛЙ ВЙВМЙПФЕЛБ GD ОЕ ОБКДЕОБ, ФП ЧОХФТЙ ЖБКМБ make.log УТЕДЙ ЧУЕЗП РТПЮЕЗП ВХДХФ ЧПФ ФБЛЙЕ ОБДРЙУЙ:

Checking for gdImagePng in -lgd (order 1)... no checking for gdImagePng in -lgd (order 2)... no checking for gdImagePng in -lgd (order 3)... no *** GD, PNG, and/or JPEG libraries could not be located... ********* Boutell"s GD library is required to compile the statusmap, trends and histogram CGIs. Get it from http://www.boutell.com/gd/, compile it, and use the --with-gd-lib and --with-gd-inc arguments to specify the locations of the GD library and include files. NOTE: In addition to the gd-devel library, you"ll also need to make sure you have the png-devel and jpeg-devel libraries installed on your system. NOTE: After you install the necessary libraries on your system: 1. Make sure /etc/ld.so.conf has an entry for the directory in which the GD, PNG, and JPEG libraries are installed. 2. Run "ldconfig" to update the run-time linker options. 3. Run "make clean" in the Nagios distribution to clean out any old references to your previous compile. 4. Rerun the configure script. NOTE: If you can"t get the configure script to recognize the GD libs on your system, get over it and move on to other things. The CGIs that use the GD libs are just a small part of the entire Nagios package. Get everything else working first and then revisit the problem. Make sure to check the nagios-users mailing list archives for possible solutions to GD library problems when you resume your troubleshooting. ********************************************************************

оХ Б Ч УМХЮБЕ, ЕУМЙ ЧБН РПЧЕЪМП Й ЧЩ ОБЫМЙ Ч ХЛБЪБООПН ЧЩЫЕ ЖБКМЕ ЧПФ ФБЛПЕ:

Checking for gdImagePng in -lgd (order 1)... yes GD library was found!

ъОБЮЙФ У GD Х ЧБУ ЧУЕ Ч РПТСДЛЕ, Й ЧЩ НПЦЕФЕ УРПЛПКОП РПКФЙ РПРЙФШ ЛПЖЕ, РПЛБ С ТБУУЛБЦХ ПУФБМШОЩН, ЛБЛ ЙЪВБЧЙФШУС ПФ РТПВМЕН У ЬФПК ОЕХМПЧЙНПК ВЙВМЙПФЕЛПК. рП ФТБДЙГЙЙ ОБЮЙОБЕН У FreeBSD. рПУНПФТЕФШ, ХУФБОБЧМЙЧБМБУШ МЙ ВЙВМЙПФЕЛБ GD Ч ЬФХ УЙУФЕНХ УФБОДБТФОЩНЙ УТЕДУФЧБНЙ, ФП ЕУФШ У РПНПЭША РБЛЕФПЧ ЙМЙ РПТФПЧ, НПЦОП ЛПНБОДПК:

# pkg_info | grep gd gd-1.8.4_6 A graphics library for fast image creation

фЕРЕТШ НЩ ЪОБЕН РПМОПЕ ОБЪЧБОЙЕ РБЛЕФБ. уНПФТЙН ЛХДБ, ХУФБОПЧЙМЙУШ ЕЗП ЖБКМЩ.

# pkg_-L gd-1.8.4_6 Information for gd-1.8.4_6: Files: /usr/local/bin/bdftogd /usr/local/bin/gd2copypal /usr/local/bin/gd2topng /usr/local/bin/gdparttopng /usr/local/bin/gdtopng /usr/local/bin/pngtogd /usr/local/bin/pngtogd2 /usr/local/bin/webpng /usr/local/include/gd/gd.h /usr/local/include/gd/gd_io.h /usr/local/include/gd/gdcache.h /usr/local/include/gd/gdfontg.h /usr/local/include/gd/gdfontl.h /usr/local/include/gd/gdfontmb.h /usr/local/include/gd/gdfonts.h /usr/local/include/gd/gdfontt.h /usr/local/lib/libgd.a /usr/local/lib/libgd.so /usr/local/lib/libgd.so.2 /usr/local/share/doc/gd/index.html

йФБЛ, УХДС РП ЧЩЧПДХ, РБТБНЕФТЩ ЛПНБОДЩ configure, ПФОПУСЭЙЕУС Л ВЙВМЙПФЛЕ GD, ДПМЦОЩ ЧЩЗМСДЕФШ ФБЛ --with-gd-lib=/usr/local/lib --with-gd-inc=/usr/local/include/gd.

дБЧБКФЕ РПУНПФТЙН, ЛБЛ НПЦОП ДПВЙФШУС РПДПВОПЗП ЬЖЖЕЛФБ ДМС Linux-УЙУФЕН, ПУОПЧБООЩИ ОБ rpm. ч ЛБЮЕУФЧЕ РТЙНЕТБ ЧПЪШНЕН ALT Linux.

# rpm -qa | grep gd libgd2-devel-2.0.4-alt2 gdm-2.4.4.5-alt1 gdk-pixbuf-loaders-0.22.0-alt2 gdk-pixbuf-0.22.0-alt2 libgd2-2.0.4-alt2 libgda2-1.0.0-alt1 gnome2-utils-gdict-applet-2.4.0-alt2 libgda2-devel-1.0.0-alt1

ч ПФМЙЮЙЕ ПФ FreeBSD, Ч Linux УЙУФЕНБИ ВЙВМЙПФЕЛБ GD ПВЩЮОП ТБЪДЕМЕОБ ОБ ДЧБ ПФДЕМШОЩИ РБЛЕФБ. уХДС РП ЧУЕНХ, ОБУ ЙОФЕТЕУХАФ rpm ЖБКМЩ libgd2 Й libgd2-devel. рЕТЧЩК УПДЕТЦЙФ ДЙОБНЙЮЕУЛЙ ЪБЗТХЦБЕНЩЕ ВЙВМЙПФЕЛЙ, ОХ Б ЧФПТПК, УППФЧЕФУФЧЕООП, ЪБЗПМПЧПЮОЩЕ ЖБКМЩ.

# rpm -ql libgd2 /usr/lib/libgd.so.2 /usr/lib/libgd.so.2.0.4 # rpm -ql libgd2-devel /usr/include/gd.h /usr/include/gd_io.h /usr/include/gdcache.h /usr/include/gdfontg.h /usr/include/gdfontl.h /usr/include/gdfontmb.h /usr/include/gdfonts.h /usr/include/gdfontt.h /usr/lib/libgd.so /usr/share/doc/gd-2.0.4 /usr/share/doc/gd-2.0.4/index.html

оХ Й ОБЛПОЕГ, ХОЙЧЕТУБМШОЩК УРПУПВ, РПДИПДСЭЙК ДМС МАВПК Unix-РПДПВОПК ПРЕТБГЙПООПК УЙУФЕНЩ. йН НПЦОП ЧПУРПМШЪПЧБФШУС Ч УМХЮБЕ, ЕУМЙ ЧУЕ РТЕДЩДХЭЙЕ РПРЩФЛЙ ОЕ ДБМЙ ОЙЛБЛЙИ ТЕЪХМШФБФПЧ. оХЦОП УБНПУФПСФЕМШОП ПФЩУЛБФШ, ЗДЕ ОБИПДСФУС ЖБКМЩ libgd.* Й gd.h

#find / -name libgd.* /usr/lib/libgd.so.1.2 /usr/lib/libgd.so.1 /usr/lib/libgd.so #find / -name gd.h /usr/include/gd.h

фЕРЕТШ ЧЩ НПЦЕФЕ ХЧЕТЕООП УЛБЪБФШ, ЮЕНХ ДПМЦОЩ ВЩФШ ТБЧОЩ РБТБНЕФТЩ --with-gd-lib Й --with-gd-inc ЛПНБОДЩ configure. чЩРПМОСЕН ЕЕ УП ЧУЕНЙ ОЕПВИПДЙНЩНЙ ОБУФТПКЛБНЙ Й, ЛБЛ ПРЙУБОП ЧЩЫЕ, РТПЧЕТСЕН, ОБКДЕОБ МЙ ВЙВМЙПФЕЛБ GD. оХ Й ОБЛПОЕГ, РТПЧПДЙН ЛПНРЙМСГЙА Й ЙОУФБММСГЙА, ОЕ ЪБВЩЧ ПУФБОПЧЙФШ ДЕНПОБ Nagios. рПУМЕ ЬФПЗП ЛБТФБ УЕФЙ (statusmap.cgi) ДПМЦОБ РТЙПВТЕУФЙ ЧЙД, РТЙНЕТОП РПИПЦЙК ОБ ЬФПФ:


фЕРЕТШ ЧУЕ ФЕ, ЛФП ХЫМЙ РЙФШ ЛПЖЕ, НПЗХФ ЧПЪЧТБЭБФШУС. уЕКЮБУ НЩ ОБЮОЕН РПЮЙОЛХ 3D ЛБТФЩ. оЕ ТБВПФБЕФ ПОБ РП РТЙЮЙОЕ ФПЗП, ЮФП ЧБЫ ВТБХЪЕТ ОЕ ЪОБЕФ, ЮФП ДЕМБФШ У vrml ЖБКМПН, ЛПФПТЩК ЧПЪЧТБЭБЕФУС Ч ПФЧЕФ ОБ ЪБРТПУЩ Л УЛТЙРФХ statuswrl.cgi. дМС ФПЗП, ЮФПВЩ ЧУЕ ЪБТБВПФБМП ЛБЛ РПМПЦЕОП, ОХЦОП ХУФБОПЧЙФШ Ч ЙУРПМШЪХЕНЩК ВТБХЪЕТ НПДХМШ ДМС ТБВПФЩ У vrml, ЙМЙ ПФДЕМШОХА РТПЗТБННХ, РТЕДОБЪОБЮЕООХА ДМС ФЕИ ЦЕ ГЕМЕК.

рТПЗТБННОПЗП ПВЕУРЕЮЕОЙС, РПДИПДСЭЕЗП ДМС ЬФПЗП, ОБРЙУБОП ЧПЪ Й НБМЕОШЛБС ФЕМЕЦЛБ. лБЛ ПВЩЮОП, РБМШНБ РЕТЧЕОУФЧБ РП ЛПМЙЮЕУФЧХ ЬЛЪЕНРМСТПЧ РТЙОБДМЕЦЙФ Windows. ъБФЕН ЙДЕФ MAC OS Й, ОБЛПОЕГ, ВТПОЪПЧПЕ ФТЕФШЕ НЕУФП ЪБОЙНБЕФ Linux.

йФБЛ, ОБЮОЕН У ЖБЧПТЙФБ. рТЙ ОЕПВИПДЙНПУФЙ ТБВПФБФШ РПД ХРТБЧМЕОЙЕН Windows Й MAC УЙУФЕН С РТЕДРПЮЙФБА ЙУРПМШЪПЧБФШ Cortona VRML Client РП ФПК РТПУФПК РТЙЮЙОЕ, ЮФП ПО УПЧНЕУФЙН У ВПМШЫЙОУФЧПН ОБЙВПМЕЕ ТБУРТПУФТБОЕООЩИ ВТБХЪЕТПЧ, Л ЮЙУМХ ЛПФПТЩИ ОЕУПНОЕООП ПФОПУСФУС Internet Explorer, Netscape Navigator, Mozilla, iCab. йОФЕТЕУОЩН ЖБЛФПН СЧМСЕФУС ФП ПВУФПСФЕМШУФЧП, ЮФП ЬФПФ РПДЛМАЮБЕНЩК НПДХМШ НПЦОП ЙУРПМШЪПЧБФШ ДБЦЕ ЙЪ ПЖЙУОЩИ РТЙМПЦЕОЙК Microsoft PowerPoint, Microsoft Word. л УПЦБМЕОЙА, ТБЪТБВПФЮЙЛЙ Cortona РПЮЕНХ-ФП ТЕЫЙМЙ РПМОПУФША РТПЙЗОПТЙТПЧБФШ Linux. уЛБЮБФШ ДЙУФТЙВХФЙЧ НПЦОП У УБКФБ http://www.parallelgraphics.com/products/cortona/download/ . юФП ДЕМБФШ РПУМЕ УПЧЕТЫЕОЙС ЬФПЗП УБЛТБНЕОФБМШОПЗП ДЕКУФЧБ, НЩ ПВУХДЙН ОЕНОПЗП РПЪДОЕЕ.

уМЕДХАЭБС ДПУФПКОБС ОБЫЕЗП ЧОЙНБОЙС РТПЗТБННБ ОБЪЩЧБЕНБС Cosmo player Й ЦЙЧЕФ РП ЬФПНХ БДТЕУХ http://ca.com/cosmo/html/ . тБВПФБЕФ Ч ЧЙДЕ ПФДЕМШОПЗП РТЙМПЦЕОЙС Й, ЛПОЕЮОП ЦЕ, ФПМШЛП РПД Windows Й MAC.

ExpressVR-ЛПОЛХТЕОФ Cortona ДМС ЧУЕН ЙЪЧЕУФОПК СВМПЮОПК РМБФЖПТНЩ. рПД ДТХЗЙНЙ ПРЕТБГЙПООЩНЙ УЙУФЕНБНЙ ОЕ ЦЙЧЕФ, РПРЩФПЛ ЬЛУРБОУЙЙ ОЕ РТЕДРТЙОЙНБЕФ Й, УХДС РП РПУМЕДОЙН ФЕОДЕОГЙСН, УЛПТЕЕ ЧУЕЗП, ЮЕТЕЪ ОЕЛПФПТПЕ ЧТЕНС ВХДЕФ ПЛПОЮБФЕМШОП ЧЩФЕУОЕО УЧПЙН НОПЗПЖХОЛГЙПОБМШОЩН РТПФЙЧОЙЛПН. рТЕДОБЪОБЮЕО ФПМШЛП ДМС Netscape Navigator Й Internet Explorer. уЛБЮБФШ ДЙУФТЙВХФЙЧ НПЦОП ПФУАДБ http://members.aol.com/maxmac/vrml/download.html .

FreeWRL - ПФДЕМШОПЕ РТЙМПЦЕОЙЕ, ТБВПФБАЭЕЕ Ч ЛБЮЕУФЧЕ УБНПУФПСФЕМШОПЗП vrml ВТБХЪЕТБ. жХОЛГЙПОЙТХЕФ ОБ РМБФЖПТНБИ Linix Й MAC Й ТБУРПМБЗБЕФУС РП ЬФПНХ БДТЕУХ http://www.crc.ca/FreeWRL/ .

оБ УБНПН ДЕМЕ, РТПЗТБНН, РПДИПДСЭЙИ ДМС ОБЫЙИ ГЕМЕК, ЗПТБЪДП ВПМШЫЕ, ЮЕН ЧЩ НПЗМЙ ВЩ РПДХНБФШ. с РПУФБТБМУС ХРПНСОХФШ МЙЫШ ОБЙВПМЕЕ ЙЪЧЕУФОЩЕ ЙЪ ОЙИ. еУМЙ ЦЕ ЧЩ ИПФЙФЕ ОЕРТЕНЕООП ПЗМБУЙФШ ЧЕУШ УРЙУПЛ, ФП ЧБН ОХЦОП РТПЧЕУФЙ РПЙУЛ РП УМПЧХ vrml ОБ УМЕДХАЭЙЕ УЕТЧЕТБИ, Ч ОБТПДЕ МБУЛПЧП ОБЪЩЧБЕНЩИ УПЖФПНПЗЙМШОЙЛБНЙ:


http://freshmeat.net/
http://tucows.com/
http://filesearch.ru/

л УПЦБМЕОЙА, Nagios РПЛБ ОЕ ХНЕЕФ УБНПУФПСФЕМШОП УФТПЙФШ ЛБТФХ УЕФЙ, ВПМЕЕ ЙМЙ НЕОЕЕ РТЙВМЙЦЕООХА Л ТЕБМШОПНХ ТБУРПМПЦЕОЙА ОБВМАДБЕНЩИ ПВЯЕЛФПЧ ЧОХФТЙ ОЕЕ. оЕУНПФТС ОБ ФП, ЮФП Х ОБУ ЕУФШ ДЧЕ РПДУЕФЙ ОБ ЛБТФЕ, ЧУЕ НБЫЙОЩ ПФПВТБЦБАФУС ФБЛ, ЛБЛ ВХДФП ПОЙ ОБИПДСФУС Ч ПДОПН Й ФПН ЦЕ УЕФЕЧПН ПВМБЛЕ, ФП ЕУФШ ЧУЕ УЧБМЕОП Ч ПДОХ ЛХЮХ. у ПДОПК УФПТПОЩ, ЬФП ХРТПЭБЕФ РТПГЕДХТХ ТЙУПЧБОЙС ЛБТФЩ, ОП У ДТХЗПК, ХУМПЦОСЕФ ЦЙЪОШ БДНЙОЙУФТБФПТБ. рТЕДУФБЧШФЕ УЕВЕ УЙФХБГЙА, ЛПЗДБ ЙЪ УФТПС ЧЩИПДЙФ НБЫЙОБ Inner_Firewall. рТЙ УМЕДХАЭЕН ГЙЛМЕ ЧЩРПМОЕОЙС РТПЧЕТПЛ ОБУ ЪБУЩРМЕФ МБЧЙОБ ХЧЕДПНМЕОЙС П ЛТЙФЙЮЕУЛПН УПУФПСОЙЙ ИПУФПЧ Inner_Firewall, WWW, Mail, 3com_Dmz Й Outer_Firewall. иПФС ОБ УБНПН ДЕМЕ ОЕ ТБВПФБЕФ ФПМШЛП РЕТЧЩК ЙЪ ЧУЕИ ЧЩЫЕРЕТЕЮЙУМЕООЩИ ЛПНРШАФЕТПЧ. рПМХЮБЕФУС, ЮФП БДНЙОЙУФТБФПТ ДПМЦЕО УБНПУФПСФЕМШОП ДПЗБДБФШУС, ЮФП РТЙЧЕМП Л ФБЛЙН НБУУПЧЩН УВПСН. дМС ФПЗП, ЮФПВЩ ЧРТЕДШ ЙЪВЕЦБФШ РПДПВОЩИ ОЕРТЙСФОПУФЕК, ОБН ОЕПВИПДЙНП ПВЯСУОЙФШ Nagios, ЛБЛ РПУФТПЕОБ ОБЫБ УЕФШ Й ЛБЛЙН ПВТБЪПН ДПВЙТБФШУС ДП ЕЕ УБНЩИ ХДБМЕООЩИ ХЗПМЛПЧ. дЕМБЕФУС ЬФП У РПНПЭША УПЪДБОЙС ПФОПЫЕОЙК "ТПДЙФЕМШ" - "РПФПНПЛ" НЕЦДХ ЧУЕНЙ ОБЫЙНЙ ИПУФБНЙ. рПУМЕ ФБЛЙИ ЙЪНЕОЕОЙК ЛТЙФЙЮЕУЛЙЕ ХЧЕДПНМЕОЙС ВХДХФ РТЙИПДЙФШ ФПМШЛП ДМС ЛПНРШАФЕТБ Inner_Firewall, ЧУЕ ПУФБМШОЩЕ НБЫЙОЩ, ЪБДЕКУФЧПЧБООЩЕ Ч ДБООПК РТПВМЕНЕ, РПМХЮБФ УФБФХУ "ОЕДПУФХРОП". уПЗМБУЙФЕУШ, ЬФП ЧУЕ-ФБЛЙ ВПМЕЕ УППФЧЕФУФЧХЕФ ДЕКУФЧЙФЕМШОПНХ РПМПЦЕОЙА ЧЕЭЕК Ч ЛПОФТПМЙТХЕНЩИ УЕФСИ.

рТБТПДЙФЕМЕН ЧУЕИ ЛПНРШАФЕТПЧ УЮЙФБЕФУС НБЫЙОБ, ОБ ЛПФПТПК ТБВПФБЕФ РТПГЕУУ УЙУФЕНЩ НПОЙФПТЙОЗБ. й ХЦЕ ПФ ОЕЗП УФТПЙФУС ГЕРПЮЛБ.

дМС РТБЧЙМШОПК ДЙБЗОПУФЙЛЙ ОЕРПМБДПЛ ЙЕТБТИЙС ДПМЦОБ ЧЩЗМСДЕФШ ФБЛ, ЛБЛ ЙЪПВТБЦЕОП ОБ РТЕДЩДХЭЕК УИЕНЕ. у ФПЮЛЙ ЪТЕОЙС Nagios, ВЩЧБАФ ДЧБ ЧЙДБ ИПУФПЧ - "МПЛБМШОЩЕ" Й "ХДБМЕООЩЕ". мПЛБМШОЩНЙ УЮЙФБАФУС ФЕ, ЛФП ОБИПДЙФУС Ч ФПН ЦЕ УЕФЕЧПН УЕЗНЕОФЕ, ЮФП Й УЙУФЕНБ НПОЙФПТЙОЗБ. нЕЦДХ ОЙНЙ ОЕ ДПМЦОП ВЩФШ ОЙ НБТЫТХФЙЪБФПТПЧ, ОЙ НЕЦУЕФЕЧЩИ ЬЛТБОПЧ. еУМЙ ВЩ Х ОБУ ВЩМЙ ОЕХРТБЧМСЕНЩЕ ЛПННХФБФПТЩ, ОЕ РПДДБАЭЙЕУС НПОЙФПТЙОЗХ, ФП МПЛБМШОЩНЙ ИПУФБНЙ УЮЙФБМЙУШ ВЩ Linux Й Win_2000. оП Ч УЧСЪЙ У ФЕН, ЮФП НЕЦДХ ОЙНЙ ЕУФШ РТПНЕЦХФПЮОПЕ ЪЧЕОП Ч ЧЙДЕ ЛПННХФБФПТБ 3com_Lan, ЛПФПТЩК НПЦОП РПДЧЕТЗОХФШ НПОЙФПТЙОЗХ, ПОЙ РЕТЕИПДСФ Ч ТБЪТСД ХДБМЕООЩИ. б ЕДЙОУФЧЕООЩН МПЛБМШОЩН УФБОПЧЙФУС 3com_Lan.

дПВЙФШУС ЬФПЗП НПЦОП РТЙНЕОЕОЙЕН ФЕЗБ parents Ч ПРТЕДЕМЕОЙЙ ИПУФПЧ. уФПЙФ ПВТБФЙФШ ЧОЙНБОЙЕ ОБ ФПФ УФТБООЩК ЖБЛФ, ЮФП ЖЙТНЕООБС ДПЛХНЕОФБГЙС Ч ТБЪДЕМЕ "Determining Status and Reachability of Network Hosts" ЬФПФ ФЕЗ РПЮЕНХ-ФП ОБЪЩЧБЕФ parent_hosts. иПФС ЕУМЙ РПЛПРБФШУС Ч ЙУИПДОЩИ ФЕЛУФБИ Nagios, ФП РПОЙНБЕН, ЮФП ОБ УБНПН ДЕМЕ ДПМЦЕО ВЩФШ РТПУФП parents. еУМЙ Ч ПРЙУБОЙЙ ИПУФПЧ ОЕХЛПУОЙФЕМШОП РТЙДЕТЦЙЧБФШУС ХЛБЪБОЙС ЙУРПМШЪПЧБФШ ФЕЗ parent_host, ФП РТЙ РПРЩФЛЕ УДЕМБФШ nagios reload ДМС ФПЗП, ЮФПВЩ РТЙНЕОЙФШ ЙЪНЕОЕОЙС Ч ЛПОЖЙЗХТБГЙЙ, РПМХЮЙН ЧПФ ФБЛЙЕ ПЫЙВЛЙ:

Running configuration check... Nagios 1.1 Copyright (c) 1999-2003 Ethan Galstad ([email protected]) Last Modified: 06-02-2003 License: GPL Reading configuration data... Error: Could not add object property in file "/usr/local/nagios/etc/hosts.cfg" on line 74. ***> One or more problems was encountered while processing the config files... Check your configuration file(s) to ensure that they contain valid directives and data defintions. If you are upgrading from a previous version of Nagios, you should be aware that some variables/definitions may have been removed or modified in this version. Make sure to read the HTML documentation on the main and host config files, as well as the "Whats New" section to find out what has changed. failed - aborting reload.

пЫЙВЛБ ВХДЕФ ЙНЕООП ОБ ФПК УФТПЛЕ, ЗДЕ ЧРЕТЧЩЕ РПСЧМСЕФУС ФЕЗ parent_host. дХНБА, ДТХЗЙИ ДПЛБЪБФЕМШУФЧ ОЕ ОХЦОП.

нБЫЙОЩ, УЮЙФБАЭЙЕУС МПЛБМШОЩНЙ РП ПФОПЫЕОЙА Л Nagios, ОБИПДСФУС ОБ ПДОХ УФХРЕОШЛХ ОЙЦЕ Ч ЙЕТБТИЙЙ, Й РПЬФПНХ ОЕ ДПМЦОЩ ЙУРПМШЪПЧБФШ ФЕЗ parents Ч УЧПЕН ПРЙУБОЙЙ. чУЕ ПУФБМШОЩЕ НБЫЙОЩ, ПФОПУСЭЙЕУС Л ЗТХРРЕ ХДБМЕООЩИ, Ч ЧЩЫЕХЛБЪБООПН ФЕЗЕ РЙЫХФ ЙНС ВМЙЦБКЫЕЗП ТПДЙФЕМС. фБЛЙН ПВТБЪПН, ДМС ИПУФПЧ Inner_Firewall, Linux Й Win_2000 ТПДЙФЕМЕН СЧМСЕФУС 3com_Lan. ч УЧПА ПЮЕТЕДШ, Inner_Firewall ХЛБЪБО ТПДЙФЕМЕН ДМС 3com_Dmz. б 3com_Dmz ЧЩРПМОСЕФ ФХ ЦЕ ТПМШ ДМС ИПУФПЧ WWW, Outer_Firewall, Mail.

йФБЛ, ТБЪПВТБЧЫЙУШ У РПОСФЙЕН ЙЕТБТИЙЙ, РПУНПФТЙН, ЛБЛ ПОП ЧМЙСЕФ ОБ ПФПВТБЦЕОЙЕ ОБЫЙИ УЕФЕК ОБ ЛБТФЕ.


дХНБА, ЧЩЗМСДЙФ ДПЧПМШОП ЧРЕЮБФМСАЭЕ. лБЛПК ЙЪ УРПУПВПЧ ПФПВТБЦЕОЙС ЛБТФЩ ВХДЕФ ЙУРПМШЪПЧБФШУС РП ХНПМЮБОЙА, ХЛБЪЩЧБЕФ РБТБНЕФТ default_statusmap_layout. дМС ФТЕИНЕТОПК ЛБТФЩ ФБЛПК РБТБНЕФТ ОБЪЩЧБЕФУС, УППФЧЕФУФЧЕООП, default_statuswrl_layout. пВБ ЬФЙИ РБТБНЕФТБ УЛТЩЧБАФУС ЧОХФТЙ ЖБКМБ cgi.cfg. лТПНЕ ЪБНЕФОПЗП У РЕТЧПЗП ЧЪЗМСДБ МПУЛБ, НЩ, Л ФПНХ ЦЕ, РТЙПВТЕМЙ ВПМЕЕ ФПЮОПЕ ДЙБЗОПУФЙТПЧБОЙЕ УЕФЕЧЩИ ОЕРПМБДПЛ.

чУЕ ЬФП, ЛПОЕЮОП, ИПТПЫП, ОП ДХЫБ ФТЕВХЕФ ЮЕЗП-ФП ВПМЕЕ ЛТБУЙЧПЗП. фБЛ ЦЕ ИПФЕМПУШ ВЩ ХНЕФШ УБНПУФПСФЕМШОП ХЛБЪЩЧБФШ ТБУРПМПЦЕОЙЕ ФЕИ ЙМЙ ЙОЩИ ПВЯЕЛФПЧ ОБ ЛБТФБИ. фБЛБС ЪБДБЮБ ОБН РП РМЕЮХ, Й УЕКЮБУ ЧЩ ОБХЮЙФЕУШ ХРТБЧМСФШ ЧБЦОЕКЫЙНЙ РБТБНЕФТБНЙ ПФТЙУПЧЛЙ УЕФЕЧЩИ ЛБТФ. дМС ОБЮБМБ НЩ ТБЪДБДЙН ЛБЦДПНХ ИПУФХ Й УЕТЧЙУХ РП ЛТБУЙЧПК ЙЛПОЛЕ, Б ЪБФЕН ТБУРПМПЦЙН ЙИ ФБЛ, ЮФПВЩ ПОЙ НБЛУЙНБМШОП УПЧРБДБМЙ У ОБЫЙН ТЙУХОЛПН, ПУОПЧЩЧБСУШ ОБ ЛПФПТПН НЩ ПРЙУЩЧБМЙ УПДЕТЦЙНПЕ ОБЫЙИ УЕФЕК. фХФ ОБН ОБ РПНПЭШ РТЙИПДСФ ДЧБ ОПЧЩИ ЖБКМБ. рЕТЧЩК ЙЪ ОЙИ, hostextinfo.cfg, ПФЧЕЮБЕФ ЪБ ДПВБЧПЮОЩЕ БФТЙВХФЩ ИПУФПЧ, Б ЧФПТПК, serviceextinfo.cfg, ЧЩРПМОСЕФ ФХ ЦЕ ЖХОЛГЙА ДМС УЕТЧЙУПЧ.

лУФБФЙ, ОЕ ЪБВХДШФЕ УЛБЮБФШ ПФУАДБ http://nagios.org/download/extras.html ЖБКМЩ У ЛПММЕЛГЙСНЙ ЙЛПОПЛ, ПВЩЮОП ОБЪЩЧБЕНЩЕ image packs.

йФБЛ, ОБЮОЕН У ЖБКМБ hostextinfo.cfg.

define hostextinfo{
# фЕЗ, У ЛПФПТПЗП ДПМЦОП ОБЮЙОБФШУС ПРЙУБОЙЕ ИПУФБ

host_name 3com_Lan
# йНС ИПУФБ, Л ЛПФПТПНХ ПФОПУЙФУС ПРЙУБОЙЕ

icon_image 3Com.png
# йНС ЖБКМБ ЙЛПОЛЙ, ЛПФПТБС ВХДЕФ ПФПВТБЦБФШУС ТСДПН У ЙНЕОЕН ИПУФБ
# йЛПОЛБ НПЦЕФ ВЩФШ Ч ЖПТНБФЕ GIF, PNG ЙМЙ JPG. нПЦЕФ УПДЕТЦБФШ ЧОХФТЙ
# УЕВС РТПЪТБЮОЩЕ ПВМБУФЙ. цЕМБФЕМШОП, ЮФПВЩ ЙЛПОЛЙ ВЩМЙ ТБЪНЕТПН 40x40
# РЙЛУЕМЕК. тБУРПМБЗБФШУС ПОЙ ДПМЦОЩ Ч ДЙТЕЛФПТЙЙ logos.

icon_image_alt 3Com LAN Switch
# оБДРЙУШ, ПФПВТБЦБЕНБС, ЕУМЙ web-УЕТЧЕТХ ОЕ ХДБЕФУС ЪБЗТХЪЙФШ ЙЛПОЛХ

vrml_image 3Com.png
# йНС ЖБКМБ, ЛПФПТЩК ВХДЕФ ЙУРПМШЪПЧБФШУС ЛБЛ ФЕЛУФХТБ ДМС ЛХВБ,
# ЙЪПВТБЦБАЭЕЗП ИПУФ ОБ ФТЕИНЕТОПК ЛБТФЕ.
# нПЦЕФ ВЩФШ Ч ЖПТНБФЕ PNG, JPG, GIF. лБТФЙОЛБ ОЕ ДПМЦОБ УПДЕТЦБФШ
# РТПЪТБЮОЩИ ПВМБУФЕК, ЙОБЮЕ ЬФП ВХДЕФ ЧЩЗМСДЕФШ ПЮЕОШ УФТБООП. дПМЦОБ
# ИТБОЙФШУС Ч ФПК ЦЕ ДЙТЕЛФПТЙЙ, ЮФП Й ЙЛПОЛБ, ПРЙУБООБС ФЕЗПН icon_image

statusmap_image 3Com.gd2
# йНС ЖБКМБ, ЗДЕ ИТБОЙФУС ЙЪПВТБЦЕОЙЕ, ЛПФПТПЕ ВХДЕФ ЙУРПМШЪПЧБФШУС ЛБЛ ЙЛПОЛБ
# ИПУФБ ОБ РМПУЛПК УЕФЕЧПК ЛБТФЕ. нПЦЕФ ВЩФШ Ч ЖПТНБФЕ PNG, JPG, GIF,
# ОП ЧУЕ-ФБЛЙ МХЮЫЕ, ЕУМЙ ДМС ЬФПЗП ЖБМБ ВХДЕФ ЙУРПМШЪПЧБФШУС ЖПТНБФ GD2,
# РПФПНХ ЮФП ДМС ЛБЦДПЗП ГЙЛМБ ТЙУПЧБОЙС ЛБТФЩ ЙЛПОЛБ ВХДЕФ УОПЧБ Й УОПЧБ
# РТЙЧПДЙФШУС Л ЧЙДХ, ХДПВОПНХ ДМС ВЙВМЙПФЕЛЙ GD. б ЬФП ЪОБЮЙФ, ЮФП НЩ ВХДЕФ
# ЪТС ЧЩРПМОСФШ ПДОЙ Й ФЕ ЦЕ ВЕУРПМЕЪОЩЕ ЧЩЮЙУМЕОЙС. нПЦЕФ УПДЕТЦБФШ ЧОХФТЙ
# УЕВС РТПЪТБЮОЩЕ ПВМБУФЙ. цЕМБФЕМШОП ЮФПВЩ ЙЛПОЛЙ ВЩМЙ ТБЪНЕТПН 40x40
# РЙЛУЕМЕК. тБУРПМБЗБФШУС ПОЙ ДПМЦОЩ Ч ДЙТЕЛФПТЙЙ logos.
# пВЩЮОП ЬФБ ДЙТЕЛФПТЙС ОБИПДЙФУС Ч /usr/local/nagios/share/images/logos

2d_coords 160,99
# дЧХНЕТОЩЕ ЛППТДЙОБФЩ ФПЮЛЙ, Ч ЛПФПТПК ВХДЕФ ОБИПДЙФШУС ГЕОФТ ЙЛПОЛЙ ИПУФБ
# ОБ РМПУЛПК ЛБТФЕ. нПЗХФ ВЩФШ ФПМШЛП РПМПЦЙФЕМШОЩНЙ ЮЙУМБНЙ.
# тЙУПЧБОЙЕ ЛБТФЩ ОБЮЙОБЕФУС ЙЪ ФПЮЛЙ 0,0 ЛПФПТБС СЧМСЕФУС ЧЕТИОЙН МЕЧЩН ХЗМПН ЛБТФЩ.
# лППТДЙОБФЩ РЕТЕЮЙУМСАФУС Ч УМЕДХАЭЕН РПТСДЛЕ x, y,

3d_coords 20.0,32.0,6.0
# лППТДЙОБФЩ ГЕОФТБ ЛХВБ, УЙНЧПМЙЪЙТХАЭЕЗП ИПУФ Ч РТПУФТБОУФЧЕ ФТЕИНЕТОПК
# ЛБТФЩ. нПЗХФ ВЩФШ ЛБЛ РПМПЦЙФЕМШОЩНЙ, ФБЛ Й ПФТЙГБФЕМШОЩНЙ ЮЙУМБНЙ.
# тБЪНЕТ ПДОПК УФПТПОЩ ЛХВБ 0.5 ЕДЙОЙГ.
# пФТЙУПЧЛБ ЛБТФЩ ОБЮЙОБЕФУС ГЕОФТБ ФТЕИНЕТОПК ЛБТФЩ, ЛПФПТЩК
# ОБИПДЙФУС Ч ФПЮЛЕ У ЛППТДЙОБФБНЙ 0.0, 0.0, 0.0.
# лППТДЙОБФЩ РЕТЕЮЙУМСАФУС Ч УМЕДХАЭЕН РПТСДЛЕ x, y, z
notes_url http://192.168.80.2/nagios/notes/3com_lan.txt
# уУЩМЛБ ОБ БДТЕУ, РП ЛПФПТПНХ МЕЦЙФ ЖБКМ c ДПРПМОЙФЕМШОЩНЙ УЧЕДЕОЙСНЙ П ИПУФЕ
# рТЙ ЭЕМЛЕ ОБ УРЕГЙБМШОЩК ЪОБЮПЛ Ч ВТБХЪЕТЕ ВХДЕФ ПФЛТЩФ ЬФП ЖБКМ
# ьФП РПМЕЪОП ДМС ЪБРЙУЙ ЧУСЮЕУЛЙИ УЧЕДЕОЙК, ЛПФПТЩЕ ОЕ ЧМЕЪМЙ Ч УФБОДБТФОЩК
# ЫБВМПО ПРЙУБОЙС ИПУФБ Nagios. оБРТЙНЕТ, ФБН НПЦОП ОБРЙУБФШ ДБООЩЕ, ПФЧЕЮБАЭЙЕ
# ОБ ЧПРТПУ, ЛФП ЙЪ БДНЙОЙУФТБФПТПЧ ПФЧЕЮБЕФ ЪБ ХРТБЧМЕОЙЕ ЬФЙН УЕТЧЕТПН. й Л ЛПНХ
# ПВТБЭБФШУС Ч УМХЮБЕ РТПВМЕН.
# пВТБФЙФЕ ЧОЙНБОЙЕ ОБ URL, ЙУРПМШЪХЕНЩК ДМС ХЛБЪБОЙС РХФШ Л ЖБКМХ. дМС ФПЗП, ЮФПВЩ
# ЖБКМЩ У ЪБРЙУЛБНЙ НПЦОП ВЩМП ИТБОЙФШ ОБ ФПН ЦЕ ИПУФЕ, ЮФП Й Nagios, С УПЪДБМ
# ДЙТЕЛФПТЙА /usr/local/nagios/share/notes, Й РПЬФПНХ НЩ ФЕРЕТШ НПЦЕН РПМХЮЙФШ Л ОЕК ДПУФХР
# ЙНЕООП РП ФБЛПНХ URL.
}

define hostextinfo{
host_name Win_2000
notes_url http://listios.lan.domain.ru/Win_2000.html
# лУФБФЙ, УФПЙФ ПФНЕФЙФШ, ЮФП ДПВБЧПЮОЩЕ ЪБРЙУЛЙ П ИПУФБИ НПЗХФ ИТБОЙФШ
# ОЕ ФПМШЛП ОБ ФПН ЦЕ ИПУФЕ, ЗДЕ ТБВПФБЕФ Nagios, ОП Й ОБ МАВПН ДТХЗПН.
# зМБЧОПЕ, ЮФПВЩ ФБН ТБВПФБМ web-УЕТЧЕТ Й URL ВЩМ РТБЧЙМШОП РТПРЙУБО
icon_image win40.png
icon_image_alt Windows workstation
vrml_image win40.png
statusmap_image win40.gd2
2d_coords 163,195
3d_coords 15.0,38.0,6.0
}

define hostextinfo{
host_name Linux
notes_url http://10.10.5.7/hostinfo.pl?host=Linux1
# ч ЛБЮЕУФЧЕ URL ДМС ИТБОЕОЙС ДПВБЧПЮОЩИ ЪБРЙУПЛ НПЦОП ЙУРПМШЪПЧБФШ ДБЦЕ
# CGI. ч ЪБЧЙУЙНПУФЙ ПФ ДБООЩИ, РЕТЕДБООЩИ Ч ЪБРТПУЕ, ЧЩ ВХДЕФ РПМХЮБФШ
# УЧЕДЕОЙС П ФПН ЙМЙ ЙОПН ИПУФЕ.
icon_image_alt Linux Workstation
vrml_image mandrake.gd2
statusmap_image mandrake.gd2
2d_coords 60,198
3d_coords 30.0,38.0,6.0
}

define hostextinfo{
host_name Mail
notes_url http://192.168.80.2/nagios/notes/mail.html
icon_image MailServer.png
icon_image_alt Mail Server
vrml_image MailServer.png
statusmap_image MailServer.gd2
2d_coords 520,183
3d_coords 20.0,44.0,6.0
}

define hostextinfo{
host_name WWW
notes_url http://192.168.80.2/nagios/notes/www_notes.html
icon_image openbsd.png
icon_image_alt WWW Server
vrml_image openbsd.gd2
statusmap_image openbsd.gd2
2d_coords 439,186
3d_coords 20.0,54.0,6.0
}

define hostextinfo{
host_name Inner_Firewall
notes_url http://192.168.80.2/nagios/notes/inner_fw_notes.html
icon_image freebsd40.png
icon_image_alt Inner Firewall
vrml_image freebsd40.png
statusmap_image freebsd40.gd2
2d_coords 326,96
3d_coords 17.0,55.0,6.0
}

define hostextinfo{
host_name Outer_Firewall
notes_url http://192.168.80.2/nagios/notes/outer_fw_notes.html
icon_image firebox_small.png
icon_image_alt Outer Firewall
vrml_image firebox_small.png
statusmap_image firebox_small.gd2
2d_coords 620,80
3d_coords 16.0,42.0,6.0
}

define hostextinfo{
host_name 3com_Dmz
notes_url http://192.168.80.2/nagios/notes/3com_dmz.html
icon_image 3Com.png
icon_image_alt 3Com DMZ LAN Switch
vrml_image 3Com.png
statusmap_image 3Com.gd2
2d_coords 480,73
3d_coords 14.0,56.0,6.0
}

фЕРЕТШ РТЙЫМП УБНПЕ ЧТЕНС ПВУХДЙФШ УПДЕТЦЙНПЕ ЖБКМБ serviceextinfo.cfg. рТЙОГЙРЩ РПУФТПЕОЙС ПВПЙИ ЖБКМПЧ ДПЧПМШОП УИПЦЙ.

define serviceextinfo{
host_name WWW
# йНС ИПУФБ,ОБ ЛПФПТПН ТБВПФБЕФ УЕТЧЙУ

service_description HTTP
# йНС УЕТЧЙУБ ЙЪ ЖБКМБ services.cfg


# хЦЕ НОПЗПЛТБФОП ЧЙДЕООЩК ОБНЙ URL ДМС ДПРПМОЙФЕМШОЩИ ЪБРЙУПЛ

icon_image apache.png
# йНС ЖБКМБ ЙЛПОЛЙ, ЛПФПТБС ВХДЕФ ПФПВТБЦБФШУС ТСДПН У ЙНЕОЕН УЕТЧЙУБ
# йЛПОЛБ НПЦЕФ ВЩФШ Ч ЖПТНБФЕ GIF, PNG ЙМЙ JPG. нПЦЕФ УПДЕТЦБФШ ЧОХФТЙ
# УЕВС РТПЪТБЮОЩЕ ПВМБУФЙ. цЕМБФЕМШОП, ЮФПВЩ ЙЛПОЛЙ ВЩМЙ ТБЪНЕТПН 40x40
# РЙЛУЕМЕК. тБУРПМБЗБФШУС ПОЙ ДПМЦОЩ Ч ДЙТЕЛФПТЙЙ logos.
# пВЩЮОП ЬФБ ДЙТЕЛФПТЙС ОБИПДЙФУС Ч /usr/local/nagios/share/images/logos

icon_image_alt Web Service
# оБДРЙУШ, ПФПВТБЦБЕНБС, ЕУМЙ web-УЕТЧЕТХ ОЕ ХДБЕФУС ЪБЗТХЪЙФШ ЙЛПОЛХ РТЙЧСЪБООХА,
# Л УЕТЧЙУХ
}

define serviceextinfo{
host_name WWW
service_description SMTP
notes_url http://192.168.80.2/nagios/notes/service_www.html
icon_image apache.png
icon_image_alt Web Service
}

define serviceextinfo{
host_name Mail
service_description SMTP
notes_url http://192.168.80.2/nagios/notes/service_smtp.html
icon_image smtp.png
icon_image_alt Web Service
}

define serviceextinfo{
host_name Mail
service_description POP3
notes_url http://192.168.80.2/nagios/notes/service_pop3.html
icon_image pop3_imap.png
icon_image_alt Web Service
}

define serviceextinfo{
host_name Mail
service_description IMAP
notes_url http://192.168.80.2/nagios/notes/service_imap.html
icon_image pop3_imap.png
icon_image_alt Web Service
}

дМС ФПЗП, ЮФПВЩ Nagios ХЧЙДЕМ УПЪДБООЩЕ ОБНЙ ЖБМЩ hostextinfo.cfg, serviceextinfo.cfg, ОХЦОП ЧОЕУФЙ Ч ЖБКМ cgi.cfg УМЕДХАЭЙЕ ДЙТЕЛФЙЧЩ.

Xedtemplate_config_file=/usr/local/nagios/etc/hostextinfo.cfg xedtemplate_config_file=/usr/local/nagios/etc/serviceextinfo.cfg

с ДХНБА, ЧЩ УНПЦЕФЕ УБНПУФПСФЕМШОП РПМПЦЙФШ ЖБКМЩ ЙЛПОПЛ Ч ДЙТЕЛФПТЙА /usr/local/nagios/share/images/logos/. лУФБФЙ, УФПЙФ ПВСЪБФЕМШОП ХВЕДЙФШУС, ЮФП ЧУЕ ЖБКМЩ, УПЪДБЧБЕНЩЕ ЧБНЙ, РТЙОБДМЕЦБФ РПМШЪПЧБФЕМА, ПФ ЙНЕОЙ ЛПФПТПЗП ТБВПФБЕФ Nagios, ЙОБЮЕ ЧЩ ВХДЕФЕ ПЮЕОШ ДПМЗП ОЕДПХНЕЧБФШ, РПЮЕНХ ОЙЛБЛЙИ ЙЪНЕОЕОЙК Ч ЛБТФБИ ОЕ ЧЙДОП, ИПФС ЧУЕ УДЕМБОП ФПЮОП, ЛБЛ Ч ЬФПК УФБФШЕ. л ФБЛЙН ЖБКМБН ПФОПУСФУС hostextinfo.cfg serviceextinfo.cfg ЙЛПОЛЙ, ЪБРЙУЛЙ Й РТПЮБС НЕМЛБС ЦЙЧОПУФШ.

лУФБФЙ, УПЪДБЧБФШ УБНПУФПСФЕМШОП ЖБКМЩ ЙЛПОПЛ Ч ЖПТНБФЕ ВЙВМЙПФЕЛЙ GD ДПЧПМШОП РТПУФП. нЩ ЗПЧПТЙМЙ ПВ ЬФЙИ ЖБКМБИ ЧП ЧТЕНС ПВУХЦДЕОЙС ФЕЗБ statusmap_image ЖБКМБ hostextinfo.cfg. дМС ЬФПЗП ОХЦОП ЧЪСФШ ЖБКМЩ ЙЛПОЛЙ Ч ЖПТНБФЕ png Й РТЕПВТБЪПЧБФШ ЕЗП Ч ЖПТНБФ GD У РПНПЭША ХФЙМЙФЩ pngtogd2, РПУФБЧМСЧЫЕКУС ЧНЕУФЕ У ВЙВМЙПФЕЛПК GD. цЕМБФЕМШОП, ЮФПВЩ УПЪДБЧБЕНЩК ЖБКМ ВЩМ УПИТБОЕО ВЕЪ ЛПНРТЕУУЙЙ ЙЪПВТБЦЕОЙС. ьФП РПЪЧПМЙФ ХЧЕМЙЮЙФШ УЛПТПУФШ ТБВПФЩ ЖХОЛГЙК ВЙВМЙПФЕЛЙ GD, ПФЧЕЮБАЭЙИ ЪБ ЪБЗТХЪЛХ Ч РБНСФШ Й ТЙУПЧБОЙЕ ЙЛПОПЛ ЧОХФТЙ ЙОФЕТЖЕКУБ Nagios. еУМЙ ДБООЩЕ ЧОХФТЙ ЖБКМБ ОЕ УЦБФЩ, ЪОБЮЙФ ОЕ ОХЦОП ФТБФЙФШ ЧТЕНС ОБ ЙИ ТБУРБЛПЧЛХ. хЮЙФЩЧБС НБМЩК ТБЪНЕТ ОБЫЙИ ЛБТФЙОПЛ, УЦБФЙЕ ОЕ РТЙОЕУЕФ ОЙЛБЛПК ЧЩЗПДЩ.

оБРТЙНЕТ, ДМС ЛПОЧЕТФБГЙЙ ЖБКМБ www.png Ч www.gd2 ОХЦОП РПДБФШ УМЕДХАЭХА ЛПНБОДХ.

$ /usr/local/bin/png2gd2 www.png www.gd2 4000 1

с ДХНБА, У РЕТЧЩНЙ ДЧХНС РБТБНЕФТБНЙ ЧУЕ СУОП. фТЕФЙК ХЛБЪЩЧБЕФ ТБЪНЕТ РПТГЙЙ ЛПДЙТПЧБОЙС, Й ЮЕФЧЕТФЩК - ЬФП, УППФЧЕФУФЧЕООП, ОБМЙЮЙЕ ЛПНРТЕУУЙЙ. рПУМЕ ОЕЛПФПТПЗП ЛПМЙЮЕУФЧБ ОБВМАДЕОЙК ЪБНЕЮЕОП, ЮФП Ч ЛБЮЕУФЧЕ ТБЪНЕТБ РПТГЙЙ ЛПДЙТПЧБОЙС НПЦОП РЙУБФШ ЛБЛПЕ ХЗПДОП ЮЙУМП. дМС ЙУИПДОЩИ ЖБКМПЧ НБМПЗП ТБЪНЕТБ, Л ЛПФПТЩН ПФОПУСФУС Й ОБЫЙ ЙЛПОЛЙ, ЬФПФ РБТБНЕФТ УНЩУМБ ОЕ ЙНЕЕФ.

й ОЕ ЪБВХДШФЕ РПДБФШ РТПГЕУУХ nagios ЛПНБОДХ reload, ЛПФПТБС ЪБУФБЧЙФ ЕЗП ПВОПЧЙФШ ЛПОЖЙЗХТБГЙА. чП FreeBSD ЬФП ПВЩЮОП ДЕМБЕФУС ФБЛ /usr/local/etc/rc.d/nagios.sh reload.

еУМЙ ЕУФШ ЦЕМБОЙЕ, НПЦОП ОБТЙУПЧБФШ УЧПЙ УПВУФЧЕООЩЕ ЙЛПОЛЙ Й ЙУРПМШЪПЧБФШ ЙИ ЧНЕУФП УФБОДБТФОЩИ. с ЙНЕООП ФБЛ РПУФХРЙМ У УЕТЧЙУБНЙ HTTP, SMTP, POP3 Й IMAP. дМС HTTP ЙУРПМШЪПЧБМПУШ РЕТП, РПФЕТСООПЕ ЙОДЕКГЕН Apache, Б ДМС ЧУЕИ ПУФБМШОЩИ ЙЪПВТБЦЕОЙЕ ПФЛТЩФПЗП Й ЪБЛТЩФПЗП РПЮФПЧПЗП ЛПОЧЕТФБ. й ИПФС ЛБТФЙОЛЙ РПМХЮЙМЙУШ ТБЪНЕТПН ЮХФШ ВПМЕЕ, ЮЕН 40x40 РЙЛУЕМЕК, Nagios ТБВПФБМ У ОЙНЙ ДПЧПМШОП ИПТПЫП. рПМАВПЧБФШУС ОБ ТЕЪХМШФБФ НПЦОП ОБ УМЕДХАЭЕК ЛБТФЙОЛЕ.


фЕРЕТШ Х ЛБЦДПЗП ИПУФБ Й УЕТЧЙУБ ЕУФШ ОЕ ФПМШЛП МЙЮОБС ЙЛПОЛБ, ОП Й ОБ УФТБОЙЮЛЕ У РПДТПВОПК ЙОЖПТНБГЙЕК П ЛБЦДПН ЙЪ ОЙИ ЧПЪОЙЛМП ЧПФ ФБЛПЕ ЙЪПВТБЦЕОЙЕ.

еУМЙ ОБЦБФШ ОБ ОЕЗП, ФП НПЦОП РПЮЙФБФШ ДПРПМОЙФЕМШОЩЕ УЧЕДЕОЙС ЙЪ ЖБКМБ, ЛПФПТЩК НЩ ПРЙУБМЙ ФЕЗПН notes_url.

лППТДЙОБФЩ ФПЮЕЛ, Ч ЛПФПТЩИ ДПМЦОЩ ТЙУПЧБФШУС ЙЛПОЛЙ Й ПВЯЕЛФЩ ОБЫЙИ ИПУФПЧ ОБ РМПУЛПК Й ФТЕИНЕТОПК ЛБТФБИ УЕФЙ, ОЕ ВХДХФ ЙУРПМШЪПЧБФШУС Nagios ДП ФЕИ РПТ, РПЛБ НЩ ОЕ ЧЩУФБЧЙН ЧПФ ФБЛЙН ПВТБЪПН ЪОБЮЕОЙС ФЕЗПЧ default_statusmap_layout Й default_statuswrl_layout Ч ЖБКМЕ cgi.cfg.

Default_statusmap_layout=0 default_statuswrl_layout=0

еУМЙ ЧУЕ УДЕМБМЙ РТБЧЙМШОП, ФП РМПУЛБС ЛБТФБ УЕФЙ ВХДЕФ ЧЩЗМСДЕФШ ЧПФ ФБЛ. чРЕЮБФМСЕФ, ОЕ РТБЧДБ МЙ?


фТЕИНЕТОБС ЛБТФБ ЧЩЗМСДЙФ ФПЦЕ ДПЧПМШОП ИПТПЫП. й УБНПЕ РТЙСФОПЕ Ч ЬФПН ФП, ЮФП Ч ФТЕИНЕТОПЕ РТПУФТБОУФЧП НПЦОП ДПВБЧЙФШ, ОБРТЙНЕТ, РПДТПВОЩК НБЛЕФ ЪДБОЙС, Ч ЛПФПТПН ЬФБ УЕФШ ОБИПДЙФУС, Й РПУФБЧЙФШ УЕТЧЕТБ Ч ОХЦОЩИ РПНЕЭЕОЙСИ. оП ПВ ЬФПН НЩ РПЗПЧПТЙН Ч ДТХЗПК УФБФШЕ. оХ Б ЕУМЙ ЧНЕУФП ЧПЦДЕМЕООПК ЛБТФЩ ОБ ЬЛТБОЕ РПСЧЙМБУШ УМЕДХАЭБС ОБДРЙУШ:

You have not supplied any host drawing coordinates, so you cannot use this layout method. Read the FAQs for more information on specifying drawing coordinates or select a different layout method.

ъОБЮЙФ, ЧЩ ЮФП-ФП ОБРХФБМЙ У ФЕЗБНЙ ЛППТДЙОБФ ПФТЙУПЧЛЙ.

еЭЕ ПДОПК ЙЪ РПМЕЪОЩИ ЧПЪНПЦОПУФЕК, ЛПФПТХА НЩ УЕЗПДОС ЙЪХЮЙН, ВХДЕФ ХНЕОЙЕ ДПВБЧМСФШ Ч УФТБОЙГЩ, УПЪДБЧБЕНЩЕ Nagios, УЧПЙ ЧУФБЧЛЙ Й ЪБЗПМПЧЛЙ. лБЦДБС УФТБОЙГБ НПЦЕФ ЙНЕФШ ДЧБ ЪБЗПМПЧЛБ Й ДЧЕ ЧУФБЧЛЙ. пВЩЮОП ФБЛЙН ПВТБЪПН Ч ФЕЛУФ УФТБОЙГЩ НПЦОП ЧУФБЧМСФШ ЛПТРПТБФЙЧОХА УЙНЧПМЙЛХ, УРТБЧПЮОЩЕ ФЕМЕЖПОЩ Й РТПЮЙЕ УЧЕДЕОЙС, ПФОПУСЭЙЕУС Л ЧЩВТБООПК УФТБОЙГЕ.


чУЕ ЪБЗПМПЧЛЙ УФТБОЙГ Й ЧУФБЧЛЙ ДЕМСФУС ОБ ЗМПВБМШОЩЕ Й МПЛБМШОЩЕ. зМПВБМШОЩЕ ДЕКУФЧХАФ ОБ ЧУЕ УФТБОЙГЩ cgi, Б МПЛБМШОЩЕ ФПМШЛП ОБ ФЕ, ДМС ЛПФПТЩИ ПОЙ ВЩМЙ ПРТЕДЕМЕОЩ. фЕЛУФЩ, ЪБРЙУБООЩЕ Ч ЖБКМБИ ЪБЗПМПЧЛПЧ Й ТБЪТЩЧПЧ УФТБОЙГ, ЧУФБЧМСАФУС Ч ОБЮБМП Й ЛПОЕГ ФЕЗБ УФТБОЙГЩ, УПЪДБЧБЕНПК cgi. пВЩЮОП ФЕЛУФ УФТБОЙГЩ РПУМЕ ПВТБВПФЛЙ ЧЩЗМСДЙФ ФБЛ:

ЗМПВБМШОЩК ЪБЗПМПЧПЛ МПЛБМШОЩК ЪБЗПМПЧПЛ РЕТЧПОБЮБМШОЩК ФЕЛУФ ЗМПВБМШОБС ЧУФБЧЛБ МПЛБМШОБС ЧУФБЧЛБ

дБЧБКФЕ РПУНПФТЙН, ЮФП ОХЦОП УДЕМБФШ ДМС ФПЗП, ЮФПВЩ ЬФП ТБВПФБМП ОБ РТЙНЕТЕ ЖБКМБ status.cgi. ч ДЙТЕЛФПТЙЙ /usr/local/nagios/share/ssi ОХЦОП УПЪДБФШ УМЕДХАЭЙЕ ЖБКМЩ

Common-footer.ssi - ЖБКМ ЗМПВБМШОПЗП ЪБЗПМПЧЛБ common-header.ssi - ЖБКМ ЗМПВБМШОПК ЧУФБЧЛЙ status-footer.ssi - ЖБКМ МПЛБМШОПЗП ЪБЗПМПЧЛБ status-header.ssi - ЖБКМ МПЛБМШОПК ЧУФБЧЛЙ

с ДХНБА, ЧУЕ ХЦЕ УППВТБЪЙМЙ, ЮФП ЙНС ДМС ЖБКМПЧ МПЛБМШОПЗП ЪБЗПМПЧЛБ Й МПЛБМШОПК ЧУФБЧЛЙ ПВТБЪХЕФУС У РПНПЭША УТБЭЙЧБОЙС ЙНЕОЙ РПДПРЩФОПЗП ЖБКМБ cgi У ОБДРЙУСНЙ -footer.ssi Й -header.ssi. оХЦОП РПНОЙФШ, ЮФП УПДЕТЦЙНПЕ ЧУЕИ ЧЩЫЕРЕТЕЮЙУМЕООЩИ ЖБКМПЧ РЕТЕД ДПВБЧМЕОЙЕН Ч ГЕМЕЧПК ЖБКМ ОЙЛБЛ ОЕ ПВТБВБФЩЧБЕФУС, ФП ЕУФШ УПЪДБФШ ДЙОБНЙЮЕУЛЙЕ ЪБЗПМПЧЛЙ Й ЧУФБЧЛЙ ВЕЪ ВЕЪХНОЩИ ХИЙЭТЕОЙК ОЕ РПМХЮЙФУС, РПФПНХ ЮФП ОЕФ ЧПЪНПЦОПУФЙ ЙУРПМШЪПЧБФШ Ч ЛБЮЕУФЧЕ ЗЕОЕТБФПТБ ДБООЩИ cgi ЙМЙ ЮФП-МЙВП ДТХЗПЕ. рПМХЮБЕФУС, ЮФП ЧЛМАЮБЕНЩЕ ЖБКМЩ ДПМЦОЩ УПДЕТЦБФШ Ч УЕВЕ ФПМШЛП ЮЙУФЩК html.

дБЧБКФЕ ТБУУНПФТЙН УПДЕТЦЙНПЕ ЧУЕИ ЖБКМПЧ, РТЙНЕОСЧЫЙИУС Ч ЬФП РТЙНЕТЕ:

жБКМ common-footer.ssi


рП ЧПРТПУБН ФЕИРПДДЕТЦЛЙ ПВТБЭБФШУС ОБ [email protected] ЙМЙ
http://onix.opennet.ru>


жБКМ common-header.ssi




жБКМ status-footer.ssi


тБЪДЕМЙФЕМШ УФТБОЙГЩ status.cgi



жБКМ status-header.ssi


фЕУФПЧЩК ЪБЗПМПЧПЛ status.cgi>


лБЛ ЧЩ НПЗМЙ ХВЕДЙФШУС, ЧУЕ ЬФП ТБВПФБЕФ ДПЧПМШОП РТПУФП. еЭЕ ПДОПК ЧЛХУОПУФША, ЛПФПТПК С У ЧБНЙ РПДЕМАУШ, ВХДЕФ УРПУПВОПУФШ РТЙЧСЪЩЧБФШ РТПЙЗТЩЧБОЙЕ ЪЧХЛПЧЩИ ЖБКМПЧ Л ПРТЕДЕМЕООЩН УПВЩФЙСН. оБРТЙНЕТ, НПС УЙУФЕНБ НПОЙФПТЙОЗБ РТЙ ХНЙТБОЙЙ ЛБЛПЗП МЙВП УЕТЧЙУБ ОБЮЙОБЕФ ЙЪПВТБЦБФШ ЦБМПВОП НЩЮБЭХА ЛПТПЧХ. фБЛБС ЧПЪНПЦОПУФШ ПЮЕОШ РПМЕЪОБ ДМС БДНЙОЙУФТБФПТПЧ, ЛПФПТЩЕ ОЕ ИПФСФ РПУФПСООП УНПФТЕФШ ОБ web-ЙОФЕТЖЕКУ Nagios ЙМЙ ЕЦЕНЙОХФОП РТПЧЕТСФШ УЧПК РПЮФПЧЩК СЭЙЛ ОБ РТЕДНЕФ ХЧЕДПНМЕОЙК П РТПВМЕНБИ. оХЦОП ЧУЕЗП МЙЫШ ПФЛТЩФШ Ч ВТБХЪЕТЕ ЙМЙ РТЙЛТЕРЙФШ ОБ Active Desktop ПДОХ ЙЪ ЬФЙИ УФТБОЙГ tac.cgi, status.cgi. рПУМЕ ЬФПЗП НПЦОП НЙОЙНЙЪЙТПЧБФШ ВТБХЪЕТ Й ЪБОЙНБФШУС УЧПЙНЙ ДЕМБНЙ. лБЛ ФПМШЛП УМХЮЙФУС ЛБЛПЕ-МЙВП ЙОФЕТЕУХАЭЙЕ ОБУ УПВЩФЙЕ, Nagios ОБЮОЕФ ЧПУРТПЙЪЧПДЙФШ ЪЧХЛ, УЧСЪБООЩК У ОЙН. дМС ПУХЭЕУФЧМЕОЙС ОБЫЙИ ЦЕМБОЙК ЕУФШ УМЕДХАЭЙЕ ФЕЗЙ:

Host_unreachable_sound - ИПУФ ОЕДПУФХРЕО host_down_sound - ИПУФ ОЕ ТБВПФБЕФ service_critical_sound - УЕТЧЙУ Ч ЛТЙФЙЮЕУЛПН УПУФПСОЙЙ service_warning_sound - УЕТЧЙУ Ч УПУФПСОЙЙ РТЕДХРТЕЦДЕОЙС service_unknown_sound - УПУФПСОЙЕ УЕТЧЙУБ ОЕЙЪЧЕУФОП normal_sound - ЧУЕ ТБВПФБЕФ ПФМЙЮОП, ОЕФ ОЙЛБЛЙИ РТПВМЕН

пРГЙА normal_sound РТБЛФЙЮЕУЛЙ ОЙЛФП ОЕ ЙУРПМШЪХЕФ. оП ОБ ЧУСЛЙК УМХЮБК С ТЕЫЙМ ЕЕ ХРПНСОХФШ.

дМС ФПЗП ЮФПВЩ ЪЧХЛПЧПЕ ПРПЧЕЭЕОЙЕ ЪБТБВПФБМП, ОХЦОП РПНЕУФЙФШ ЖБКМЩ ЪЧХЛПЧ Ч ЖПТНБФЕ wav ЧОХФТШ ДЙТЕЛФПТЙЙ /usr/local/nagios/share/media/, ЛБЛ ЧУЕЗДБ, ОЕ ЪБВЩФШ П РТБЧБИ РПМШЪПЧБФЕМС Й РТЙОБДМЕЦОПУФЙ ЖБКМПЧ. б ЪБФЕН ДПВБЧЙФШ УМЕДХАЭЙЕ ЪБРЙУЙ Ч ЖБКМ cgi.cfg.

Host_unreachable_sound=hostunreachable.wav host_down_sound=host down.wav service_critical_sound=servicecritical.wav service_warning_sound=servicewarning.wav service_unknown_sound=service unknown.wav normal_sound=noproblem.wav

ч УМХЮБЕ,ЕУМЙ Ч РТПГЕУУЕ НПОЙФПТЙОЗБ ВХДЕФ ПВОБТХЦЕОП ПДОПЧТЕНЕООП ОЕУЛПМШЛП РТПВМЕН, Nagios ОБЮОЕФ РТПЙЗТЩЧБФШ ЪЧХЛ ДМС ОБЙВПМЕЕ ЛТЙЮОПК ЙЪ ОЙИ. рПУМЕ ДЕУСФЛБ ЙМЙ ДЧХИ РПЧФПТЕОЙК ПДОПЗП Й ФПЗП ЦЕ ЪЧХЛБ ЧБН, ОБЧЕТОП, ЪБИПЮЕФУС ПФЛМАЮЙФШ ЪЧХЛ. уДЕМБФШ ЬФП ДПЧПМШОП МЕЗЛП: ОХЦОП РТПУФП ЧПКФЙ Ч ТЕЦЙН ХРТБЧМЕОЙС УЕТЧЙУПН ЙМЙ ИПУФПН Й РПДБФШ ЛПНБОДХ РПДФЧЕТЦДЕОЙС РТПВМЕНЩ.

рПУМЕ РПДПВОПК ПВТБВПФЛЙ ЪБРЙУЙ Ч ФБВМЙГЕ УЕТЧЙУПЧ ЙМЙ ИПУФПЧ РТЙНХФ ЧПФ ФБЛПК ЧЙД.


с ДХНБА, ОБ УЕЗПДОС ИЧБФЙФ ЗТЩЪФШ ЗТБОЙФ ОБХЛЙ, Й РПТБ ДБФШ НПЪЗБН ПФДПИОХФШ. рПЪЧПМА УЕВЕ РПРТПЭБФШУС У ЧБНЙ Ч ЬФХ ТБДПУФОХА НЙОХФХ.

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 }

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