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

Популярное решение для мониторинга — nagios позволяет реализовывать масштабируемые системы. Конфигурация для распределенных систем — длительный процесс, в рамках статьи реализуем мониторинг одного сервиса на удаленном хосте.

Работы по настройке будут выполняться на сервере с операционной системой CentOS 7 , для nrpe клиента также будет использоваться CentOS 7

На клиенте установим плагин nrpe и разрешим в его настройках подключение к серверу.

Nagios установка и настройка сервера мониторинга

Настройку начинаем на машине, которая будет выполнять роль nagios сервера. Установим необходимые пакеты:

yum install -y wget httpd php gcc glibc glibc-common gd gd-devel make net-snmp unzip

nagios работает через Apache , поэтому в списке устанавливаемых пакетов присутствует httpd

Переходим в корневой каталог с временными файлами и скачиваем в него при помощи wget последние релизы nagios и nagios-plugins

wget http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-4.2.8.tar.gz

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

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

Добавляем пользователя nagios в группу nagcmd

usermod -a -G nagcmd nagios

usermod -a -G nagios,nagcmd apache

Поскольку используем CentOS httpd работает не от имени пользователя www-data, а от имени пользователя apache

Чтобы в дальнейшем не возникло конфликтов прав добавляем пользователя apache в группы nagios,nagcmd

Извлекаем содержимое скачанного архива

tar -zxvf nagios-4.2.0.tar.gz

Переходим в каталог с файлами nagios

Установку как nagios, так и nrpe в дальнейшем будем производить из исходников

./configure —with-command-group=nagcmd

В качестве опции при сборке указываем группу nagcmd

Компилируем

make install-commandmode

Рекурсивно копируем каталог с библиотеками в /usr/local на сервере

cp -R contrib/eventhandlers /usr/local/nagios/libexec

Также рекурсивно меняем владельца и группу владельца каталогов и файлов на nagios

chown -R nagios:nagios /usr/local/nagios/libexec/eventhandlers

Пробуем запустить и посмотреть версию nagios указывая путь к основному конфигурационному файлу

Добавляем nagios в автозагрузку — система будет каждый раз запускать его при старте

systemctl enable nagios

Запускаем сервис

Аналогичные операции проделываем с веб-сервером

Задаем пароль пользователя nagios

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

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

Установка основного пакета на этом завершена. Открываем интернет браузер и вводим в поисковую строку ip-адрес сервера, затем /nagios и попадаем в веб-интерфейс

Настройка мониторинга сервиса на удаленном хосте

Идем на другую серверную машину, которая будет выполнять роль nagios-клиента
Переходим в каталог /tmp/

Распаковываем nagios-plugins-2.1.2

tar -zxvf nagios-plugins-2.1.2

cd nagios-plugins-2.1.2

Компилируем указывая пользователя и группу nagios

./configure —with-command-user=nagios —with-nagios-group=nagios

Теперь устанавливаем nrpe plugin

Сначала дополнительно ставим из репозитория openssl-devel, если он уже установлен — шаг пропускаем (необходимо также присутствие пакета и на nagios сервере)

yum -y install openssl-devel

Можно установить и из репозитория

yum install nagios-plagins-all nagios-plagins-nrpe

Если нужна свежая версия, что так
Скачиваем пакет

wget http://sourceforge.net/projects/nagios/files/nrpe-2.x/nrpe-2.15/nrpe-2.15.tar.gz

Распаковываем tar.gz

tar -zxvf nrpe-2.15.tar.gz

Компилируем тем же способом, что и ранее

Идем на сервер nagios

Пробуем подключиться с сервера указывая после ключа -H IP адрес клиента

Получаем connection refused и отправляемся производить конфигурацию плагина

Стартуем nrpe на клиенте и добавляем сервис в автозагрузку

Открываем основной конфигурационный файл и в качестве значения в секции allowed_hosts указываем IP адрес сервера

mcedit /etc/nrpe/nrpe.cfg

allowed_hosts = 10.11.27.11

Возвращаемся на сервер

/usr/local/nagios/libexec/check_nrpe -H 10.11.27.44

Теперь наша попытка успешна и мы видим версию nagios

Снова открываем основной конфиг

Снимаем знак комментария со строки с cfg_dir (cfg_dir=/usr/local/nagios/etc/servers)

Создаем директорию и переходим в нее

mkdir /usr/local/nagios/etc/servers

cd /usr/local/nagios/etc/servers

Определяем хосты, мониторинг которых будет производиться. У хостов могут быть любые названия, nagios увидит все файлы с расширением cfg

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

define host {
use linux-server
host_name cenos11
alias just nagios client
address 10.11.27.44
max_check_attempts 5
check_period 24×7
notification_interval 30
notification_period 24×7

}

Добавляем конфиг для сервиса, который мониторим. Сейчас ограничимся проверкой наличия пинга до хоста

{
use generic-service
host_name cenos11
service_description PING
check_command check_ping!100.0,20%!500.0,50%
}

Использована команда check_command, выдержка из мануала относительно нее говорит следующее:

check_ping -H -w ,% -c ,%
[-p packets] [-t timeout] [-4|-6]

Соответственно, при потере 20% пакетов мы будем получать предупреждение, при потере 50% — ALERT

Снова запускаем и убеждаемся в том, что ошибок нет

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

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

systemctl restart nagios

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

Настройка ALERT-ов в nagios

Открываем основной конфигурационный файл и при необходимости раскомментируем строку cfg_file=/usr/local/nagios/etc/objects/contacts.cfg :

mcedit /usr/local/nagios/etc/nagios.cfg

В файле определяем контактный адрес электронной почты для отправки уведомлений:

mcedit /usr/local/nagios/etc/objects/contacts.cfg

define contact {
contact_name nagiosadmin
use generic-contact
alias Nagios Admin
email [email protected]

}

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

cyctemctl restart nagios

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

Для серверов можно устанавливать Nagios сервер и клиент на одной машине, однако намного проще использовать другой пакет — например, .

Перед конфигурированием 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 с открытым исходным кодом (см. раздел ) успешно справляется с задачами мониторинга и оперативного оповещения.

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

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

Установка

Большинство дистрибутивов Linux® поставляются с встроенной версией Nagios. В этом случае продукт легко интегрируется с Web-сервером Apache. Для активизации или обновления такой конфигурации необходимо выполнить команду:

yum install nagios

или apt-get install nagios-text . Исполняемые файлы для платформы AIX® доступны для загрузки с Web-сайта NagiosExchange (см. раздел ).

Для других платформ исходный код Nagios можно загрузить с Web-сайта Nagios.org (см. раздел ). Для создания Nagios "с чистого листа" необходимы следующие инструменты разработчика.

  • Инструменты:
    • autoconf
    • automake
  • Исполняемые файлы:
    • libgd
    • openssl
  • Пакеты (библиотек и заголовочных файлов)

Многие плагины, связанные с SNMP (Simple Network Management Protocol - простой протокол сетевого управления) также потребуют наличия Perl и пакета Net::SNMP.

После установки и настройки Nagios можно получить к нему доступ через стандартный URL http://your.host.name/nagios . На показано, какие системы и службы включены или отключены.

Настройка Nagios

По умолчанию все конфигурационные файлы Nagios находятся в каталоге /etc/nagios . Конфигурационные файлы, связанные с Apache, можно для удобства связать с конфигурационным каталогом Apache c помощью ссылок. Конфигурация разделена на несколько файлов, каждый из которых предназначен для отдельных фрагментов конфигурации.

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

Контакты хранятся в файле contacts.cfg и определяются, как показано в листинге 1.

Листинг 1. Конфигурация 1: Базовая информация о контактах
define contact{ contact_name jdoe alias John Due service_notification_commands notify-by-email host_notification_commands host-notify-by-emailes email [email protected] }

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

Листинг 2. Конфигурация 2: Группировка контактов
define contactgroup{ contactgroup_name server-admins alias Server Administrators members jdoe,albundy }

Следующий шаг - это настроить системы, за которыми Nagios будет осуществлять мониторинг. Необходимо добавить каждый компьютер, на котором имеются службы, которые предстоит отслеживать или периодически проверять на активность. Конфигурационный файл для хранения система - это файл hosts.cfg . В листинге 3 приведен пример определения компьютера.

Листинг 3. Конфигурация 3: Добавление нового компьютера
define host{ host_name ubuntu_1_2 alias Ubuntu test server address 192.168.1.2 check_command check-host-alive max_check_attempts 20 notifications_enabled 1 event_handler_enabled 0 flap_detection_enabled 0 process_perf_data 1 retain_status_information 1 retain_nonstatus_information 1 notification_interval 60 notification_period 24x7 notification_options d,u,r }

Последний этап конфигурации Nagios - это определение служб для сконфигурированных систем. Показанный в листинге 4 пример использует заранее определенный ping-плагин для Nagios, который отправляет эхо-запросы по протоколу ICMP (Internet Control Message Protocol), чтобы определить, отвечает компьютер или нет.

Листинг 4. Конфигурация 4: Добавление новой службы
define service{ use service-template host_name ubuntu_1_2 service_description PING check_period 24x7 contact_groups server-admins notification_options c,r check_command check_ping!300.0,20%!1000.0,60% }

После подготовки этой конфигурации необходимо перезапустить демона Nagios, а затем, подождав несколько секунд, пока Nagios инициализируется, проверить, появились ли ping-службы в Web-интерфейсе администратора.

Написание плагинов для Nagios

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

  • OK - код возврата 0 - означает, что сервис работает нормально;
  • WARNING - код возврата 1 - это предупредительный сигнал о том, что у сервиса могут быть проблемы;
  • CRITICAL - код возврата 2 - критическое состояние сервиса;
  • UNKNOWN - код возврата 3 - неизвестное состояние сервиса.

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

В листинге 5 приведен пример сценария на языке Python, который проверяет среднюю загрузку ОС UNIX®. В нем предполагается, что уровень выше 2.0 соответствует предупредительному состоянию, а уровень выше 5.0 -критическому состоянию. Эти значения "вшиты" в код, и также всегда используется среднее значение загрузки за последнюю минуту.

Листинг 5. Python плагин - пример работающего плагина
#!/usr/bin/env python import os,sys (d1, d2, d3) = os.getloadavg() if d1 >= 5.0: print "GETLOADAVG CRITICAL: Load average is %.2f" % (d1) sys.exit(2) elif d1 >= 2.0: print "GETLOADAVG WARNING: Load average is %.2f" % (d1) sys.exit(1) else: print "GETLOADAVG OK: Load average is %.2f" % (d1) sys.exit(0)

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

Это довольно просто: сначала создается файл /etc/nagios-plugins/config/mygetloadavg.cfg с содержимым, приведенным ниже, и добавляется служба в файл services.cfg , как показано в примере ниже. Напомню, что localhost должен присутствовать в конфигурационном файле hosts.cfg .

Листинг 6. Пример плагина - регистрация в Nagios
define command{ command_name check_mygetloadavg command_line /path/to/check_getloadavg }
Листинг 7. Создание службы, использующей пример плагина
define service{ use service-template host_name localhost service_description LoadAverage check_period 24x7 contact_groups server-admins notification_options c,r check_command check_mygetloadavg }

Написание полноценного плагина

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

Другой полезный прием - это перехватывание всех исключительных ситуаций и возврат в отчет о состоянии службы значения UNKNOWN , чтобы Nagios мог соответствующим образом оповестить об этом событии. Плагины, которые допускают "выход" исключительных ситуаций за свои границы, чаще всего возвращают значение 1, которое трактуется Nagios как WARNING -состояние. Важно чтобы плагин правильно отличал состояние WARNING (предупредительное) от UNKNOWN (неизвестное). Стоит заметить, что обычно извещения об отдельных состояниях WARNING отключаются, но не стоит отключать извещения о состоянии UNKNOWN .

Написание Python-плагина

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

Листинг 8. Python-плагин - полноценный плагин для получения данных о средней загрузке
#!/usr/bin/env python import os import sys import getopt def usage(): print """Usage: check_getloadavg [-h|--help] [-m|--mode 1|2|3] \ [-w|--warning level] [-c|--critical level]" Mode: 1 - last minute ; 2 - last 5 minutes ; 3 - last 15 minutes" Warning level defaults to 2.0 Critical level defaults to 5.0""" sys.exit(3) try: options, args = getopt.getopt(sys.argv, "hm:w:c:", "--help --mode= --warning= --critical=",) except getopt.GetoptError: usage() sys.exit(3) argMode = "1" argWarning = 2.0 argCritical = 5.0 for name, value in options: if name in ("-h", "--help"): usage() if name in ("-m", "--mode"): if value not in ("1", "2", "3"): usage() argMode = value if name in ("-w", "--warning"): try: argWarning = 0.0 + value except Exception: print "Unable to convert to floating point value\n" usage() if name in ("-c", "--critical"): try: argCritical = 0.0 + value except Exception: print "Unable to convert to floating point value\n" usage() try: (d1, d2, d3) = os.getloadavg() except Exception: print "GETLOADAVG UNKNOWN: Error while getting load average" sys.exit(3) if argMode == "1": d = d1 elif argMode == "2": d = d2 elif argMode == "3": d = d3 if d >= argCritical: print "GETLOADAVG CRITICAL: Load average is %.2f" % (d) sys.exit(2) elif d >= argWarning: print "GETLOADAVG WARNING: Load average is %.2f" % (d) sys.exit(1) else: print "GETLOADAVG OK: Load average is %.2f" % (d) sys.exit(0)

Для использования нового плагина необходимо зарегистрировать его в файле /etc/nagios-plugins/config/mygetloadavg2.cfg , как показано в листинге 9.

Листинг 9. Python-плагин - регистрация в Nagios
define command{ command_name check_mygetloadavg2 command_line /path/to/check_getloadavg2 -m $ARG1$ -w $ARG2$ -c $ARG3$ }

Также необходимо добавить или изменить запись об этой службе в файле services.cfg , как показано в листинге 10. Стоит отметить, что восклицательный знак! разделяет параметры плагина. Как и прежде, необходимо, чтобы localhost был определен в конфигурационном файле hosts.cfg .

Листинг 10. Создание сервиса, использующего плагин Python
define service{ use service-template host_name localhost service_description LoadAverage2 check_period 24x7 contact_groups server-admins notification_options c,r check_command check_mygetloadavg2!1!3.0!6.0 }

Написание плагина Tcl

Последний пример - это плагин, написанный на Tcl и проверяющий курсы валют с сайта xmethods.net с помощью протокола SOAP (Simple Object Access Protocol) и технологии WSDL (Web Services Description Language). SOAP предоставляет плагину текущие значения курсов валют, чтобы сравнить их с конфигурированными значениями. Если значение находится внутри предупредительного диапазона, то считается, что это состояние OK . Если значение выше или ниже предупредительного уровня, но не выходит за критический предел, то считается, что это состояние WARNING . В противном случае состояние считается как CRITICAL , если не происходит сетевого сбоя, в случае которого состояние устанавливается в UNKNOWN .

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

Листинг 11. Tcl-плагин - проверка текущих значений курсов обмена валют
#!/usr/bin/env tclsh # parse arguments package require cmdline set options { {country1.arg "" "Country 1"} {country2.arg "" "Country 2"} {lowerwarning.arg "" "Lower warning limit"} {upperwarning.arg "" "Upper warning limit"} {lowercritical.arg "" "Lower critical limit"} {uppercritical.arg "" "Upper critical limit"} } array set opt }] # если пользователь не предоставил все аргументы, # то показать справочное сообщение for each necessary { if {$opt($necessary) == ""} { set argv "-help" catch {cmdline::getoptions argv $options {: }} usage puts stderr $usage exit 3 } } # загрузить пакет TclWebServices package require WS::Client if { 1] } error]} { # если по какой-либо причине не удалось загрузить курс, то сообщить об этом puts "EXCHANGERATE UNKNOWN: $error" exit 3 } if {($result < $opt(lowercritical)) || ($result > $opt(uppercritical))} { puts "EXCHANGERATE CRITICAL: rate is $result" exit 2 } if {($result < $opt(lowerwarning)) || ($result > $opt(upperwarning))} { puts "EXCHANGERATE WARNING: rate is $result" exit 1 } puts "EXCHANGERATE OK: rate is $result" exit 0

Теперь необходимо зарегистрировать эту команду, чтобы Nagios знал, как вызывать ее. Для того чтобы сделать это, надо создать файл /etc/nagios-plugins/config/exchangerate.cfg с содержимым, похожим на предыдущие конфигурации и следующим определением команды:

command_line /path/to/check_exchangerate -country1 $ARG1$ -country2 $ARG2$ -lowercritical \ $ARG3$ -lowerwarning $ARG4$ -upperwarning $ARG5$ -uppercritical $ARG6$

Имя команды check_exchangerate используется в примере, приведенном ниже.

Затем необходимо создать службу, которая будет использовать созданный плагин для отслеживания курсов валют. Ниже приведен пример определения службы, ассоциирующий службу с сервером localhost . Хотя проверка на самом деле не связана с каким-либо реальным компьютером, ее все равно необходимо привязать к системе. Если проверка включает вызов SOAP-методов серверов внутри контролируемой сети, то необходимо добавить реальный сервер, для которого будет выполняться мониторинг, и привязать службу к этому серверу. Код в проверяет, что курс британского фунта по отношению к японской йене находится в диапазоне от 225 до 275.

Листинг 12. Добавление Tcl-плагина в качестве новой службы
define service{ use service-template host_name localhost service_description EXCHANGERATE check_period 24x7 contact_groups other-admins notification_options c,r check_command check_exchangerate!England!Japan!200!225!275!300 }

Заключение

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

Опытный системный администратор может расширить SOAP-пример с помощью Tcl или любого другого языка для взаимодействия с Web-службами в Интранет-сети и написания плагинов для проверки правильности функционирования этих служб.

Также можно использовать С-плагины или возможности С-программирования, встроенные в используемый динамический язык (Pyinline в Python, Inline в Perl или Critcl в Tcl) для комбинирования сочетания системных API ОС на языке С с плагином, написанном на языке высокого уровня.

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

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

ЙУРПМШЪПЧБОЙС 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 ОБЮОЕФ РТПЙЗТЩЧБФШ ЪЧХЛ ДМС ОБЙВПМЕЕ ЛТЙЮОПК ЙЪ ОЙИ. рПУМЕ ДЕУСФЛБ ЙМЙ ДЧХИ РПЧФПТЕОЙК ПДОПЗП Й ФПЗП ЦЕ ЪЧХЛБ ЧБН, ОБЧЕТОП, ЪБИПЮЕФУС ПФЛМАЮЙФШ ЪЧХЛ. уДЕМБФШ ЬФП ДПЧПМШОП МЕЗЛП: ОХЦОП РТПУФП ЧПКФЙ Ч ТЕЦЙН ХРТБЧМЕОЙС УЕТЧЙУПН ЙМЙ ИПУФПН Й РПДБФШ ЛПНБОДХ РПДФЧЕТЦДЕОЙС РТПВМЕНЩ.

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


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


Close