Nagios 4 на ЦентОС 7 – наставак конфигурације (1/3)

Настављамо са конфигурацијом основне инсталације Nagios-а. За основну инсталацију Nagios Core и Nagios plugin видети упутство на овом линку.

Укратко, Nagios је Open Source System и Network Monitоring апликација. Nagios је покренут на неком од сервера. Nagios периодично покреће своје plugin-ове да би надгледао хостове, и ако неђе било какав проблем (warning или critical) шаље алерт, нотификацију мејлом (може да се намести и SMS алерт).
Упутство делимо у три дела:

  1. Промена Nagios теме и објашњење о основним конфигурационим фајловима
  2. Измена основних конфигурационих фајлова и припрема за мониторинг сервиса на Виндовс хосту
  3. Дефинисање и провера команди, дефинисање и провера сервиса

ПРОМЕНА NAGIОS ТЕМЕ (опционо)

Променићемо изглед Nagios веб интерфејса. Изабрали смо Nagios тему Nagios Nuvola Style. Инсталација је јако једноставна.

Преузмемо Nagios тему са овог линка јер је фајл са званичног Nagios линка оштећен.
Анзипујемо у нови фолдер nagios-nuvola и из директроијума html ископирамо све фајлове и фолдере у подразумевани nagios веб контент фолдер /usr/local/nagios/share/. Рестарујемо Nagios и имамо потпуно други изглед, много модернији и лепши за око.
Команде су следеће:

mkdir nagios
cd nagios
mkdir nagios-nuvola
cd nagios-nuvola
wget http://tomas.cat/blog/sites/default/files/nagios-nuvola-1.0.3.tar_.gz
tar -xvzf nagios-nuvola-1.0.3.tar_.gz
cp /root/nagios/nagios-nuvola/html/*.* /usr/local/nagios/share/
/etc/init.d/nagios restart

 

nagios-nuvola
Разлика је очигледна.

ОСНОВНИ КОНФИГУРАЦИОНИ ФАЈЛОВИ

Укратко ћемо да опишемо најбитније ствари у оквиру главног конфигурационог фајла nagios.cfg и потребних промена у њему како би били спремни лако да додајемо нове хостове и сервисе. Главни конфигурациони фајл је nagios.cfg и по дифолту се налази на путањи /usr/local/nagios/etc/.

Сада дајемо приказ само делова где ћемо радити измене појединих конфигурационих фајлова. Детаљније о главном Nagios конфигурационом фајлу може да се погледа на овом линку.

Object Configuration File, формат: cfg_file=<file_name>
Примери:

# Овде дефинишемо object configuration file који садрже фајлове које Nagios користи при мониторингу. 
# Object configuration files садрже дефиниције за hosts, host groups, contacts, contact groups, services, 
# commands, итд. Овде је добро што можемо да поделимо конфигурационе фајлове и кроз команду cfg_file= да их
# дефинишемо како би их Nagios обрадио
cfg_file=/usr/local/nagios/etc/hosts.cfg
cfg_file=/usr/local/nagios/etc/services.cfg
cfg_file=/usr/local/nagios/etc/commands.cfg

Дефинишемо следеће фајлове:

# Дефиниција команди помоћу Nagios plugin-а и они се извршавају над хостовима или сервисима
cfg_file=/etc/nagios/etc/objects/commands.cfg
# Дефиниција контаката са мејл адресама којима се шаље нотификација о променама хостова или сервиса
cfg_file=/etc/nagios/etc/objects/contacts.cfg
# Дефиниција група хостова по врсти – свичеви, рутери, Win-сервери, Linux-сервери, VMware, dummy hosts, 
# unix, итд. После дефинисања ових хостгрупа статус мап је много прегледнији.
cfg_file=/etc/nagios/etc/objects/hostgroups.cfg
# Дефинишемо хостове. У оквиру саме дефиниције хоста дефинишемо који се користи темплејт (template), 
# hostname, alias, ко је parents на мапи, IP адресу
cfg_file=/etc/nagios/etc/objects/hosts.cfg
# Дефинишемо сервисе које мониторишемо, конкретно који се темплејт користи, над којим хостовима 
# или hostgroups се примењује, опис сервиса и команда која се извршава
cfg_file=/etc/nagios/etc/objects/services.cfg
# Дефинишемо временски период у коме ћемо проверавати хостове или сервисе, укључује се најчешће у 
# образац, темплејт које користе дефиниције хоста и сервиса
cfg_file=/etc/nagios/etc/objects/timeperiods.cfg
# Дефинишемо обрасце, темплејт које користимо у дефиницији сервиса и хоста. Овде можемо доста параметара 
# да дефинишемо и већина се дефинишу са 0(disabled) и 1(enabled). Само ћемо их сад набројати: 
# notifications_enabled, event_handler_enabled, flap_detection_enabled, process_perf_data, 
# retain_status_information, retain_nonstatus_information, notification_period, check_period (најчешће 24x7), 
# check_interval(у минутама), retry_interval, max_check_attempts, check_command, notification_interval, 
# notification_options, notifications_enabled, contact_groups, hostgroups, icon_image (40x40px), 
# icon_image_alt, vrml_image, statusmap_image, 2d_coords, 3d_coords...
cfg_file=/etc/nagios/etc/objects/templates.cfg

Овде дефинишемо и иконице за разне врсте хостова које се приказују на графицима и на веб страницама Nagios-а и доста њих већ постоје у подразуемваној инсталацији Nagios-а а додатне иконице могу се преузети са званичне Nagios веб странице. Потребно је да се ископирају на путању, по дифолту, /usr/local/nagios/share/images/logos.

Resource File, формат: resource_file=<file_name>
Пример:

resource_file=/usr/local/nagios/etc/resource.cfg

Овде дефинишемо resource file који садржи дефиницију параметра $USERn$. $USERn$ macros је погодан за памћење корисничких имена, лозинки као и путања команди па се често користе у самим дефиницијама команди као за путању директоријума. На пример, $USER1$=/etc/nagios/libexec нам је дефиниција где нам се налазе nagios plugin-ови и скраћеницу $USER1$ користимо у дефиницији команди. Можемо да дефинишемо и SNMP community стринг који често користимо при дефинисању команди за надгледање рутера и свичева и сервера.

Service Performance Data File, формат: service_perfdata_file=<file_name>
Пример:

service_perfdata_file=/usr/local/nagios/var/perfdata.dat

Како би омогућили цртање графова за надгледане сервисе преко nagiosgraph-а мењамо и овај део главног конфигурационог фајла. Овде дефинишемо фајл perfdata.dat у који ће сервис performance data уписивати податке после сваке провере сервиса. Подаци се уписују како су специфицирани од service_perfdata_file_template опције. Performance подаци се уписују једино ако је опција process_performance_data дозвољена (enabled) глобално и ако је process_perf_data дозвољена у дефиницији сервиса.

Service Performance Data File Template, формат: service_perfdata_file_template=
Пример:

service_perfdata_file_template=$LASTSERVICECHECK$||$HOSTNAME$||$SERVICEDESC$||$SERVICEOUTPUT$||$SERVICEPERFDATA$

Ова опција одређује како се подаци уписују у service performance data file. Остале опције у главном конфигурационом фајлу не дирамо.

У следећем делу ћемо конкретно радити измене основних конфигурационих фајлова и припремити све за дефинисање команди и сервиса које ћемо надгледати на нашем Виндовс серверу, што ћемо објаснити у трећем делу овог малог туторијала.

ПРЕЂИТЕ НА 2. ДЕО УПУТСTVА >>>