Nagios kérdések

Fórumok

Sziasztok!

Lenne egy-két kérdésem a Nagios-al kapcsolatban

- Lehet-e nagiosban olyan objektumokat definiálni amiknek nincs ip-je? Vagyis olyan switch pl ami nem figyelhető, csak egyszerüen szeretném a "status map"-on látni, és ra aggatni azokat a gépeket amik mögötte vannak. Alaphelyzetben csináltam egy lecsupaszitott configfájlt neki, de inditáskor warningol, hogy service nincs neki definiálva a "status map" -nál pedig ott a pending.

- Ha új konfigfájlt csinálok vagy modositok valamit, és nyomok egy nagios reload-ot akkor jóidő mire minden eszköz újra up statusba kerül, van erre valami jobb módszer?

Köszönöm a segitséget előre is

Hozzászólások

Szia

- Legyen az IPTlen objektumod IPje 127.0.0.1
Igaz így a nagos szervered localhostját fogod figyelni de ez lényegtelen tekintve, hogy ha nincs IPje a hálózati eszközödnek, akkor azt kell, hogy feltételezd, hogy az adott eszköz mindíg UP statuszu, hacsak nem mindenki down mögötte. De IP nelküli aktív eszközök esetén csak disagne az egész, vagy érdekes infó, de nem több.

- Az egyes szervizek vizsgálatának ismétésénak időtartamát a normal_check_interval értékkel állíthatod. Ez alapban 5 ami 5 perc, de ha ezt módosítod, akkor annak megfelelően fog változni a dolog.
Ez arra is kihatással van, hogyha új hosts vagy szervizt teszel a configba. Az új szervízt vagy hosztot a normal_check_interval érték lejártával fogja ellenőrizni a nagios daemon.

A dolgot megtudod sürgetni atz adott host vagy szervíz ablakában http://nagios.sourceforge.net/images/screens/big/hostinfo.jpg a Host Command ablakban.

Értem, kár hogy nincs valami jobb megoldás ilyenre.

A következő kérdés ami előjött: A "Status Map" nézetnél, a kör közepén ott a "Nagios Process", viszont a "localhost" ami logikailag ugyanaz a gép egy külön elemként szerepel ami kissé zavaró. Nem lehet valahogy a "Nagios Process" kezdőponthoz pakolni, a localhost szervizeit?

Hali

Nem lehet sajnos.

Ennek az oka, hogy a Nagios Process a nagios nézőpontja szerint nem a monitorozást végő hosttól vagy annak dependeciájától függ, hanem az összes vizsgált host egymáshoz képesti dependenciájától.

Ennek az oka, hogy a Nagios Process nem host és nem szervíz hanem logikai egység, ezért nem véletlenül van itt vagy ott.

Cs

Sziasztok!

Nagiosban jartas kolegaktol kernek egy tanacsot. A nagiosom azt csinalja, hogyha egy hoston egy service miatt a host is downba kerul, de aztan a szervice helyre all, akkor a host down marad.
Ezt hogy tudom kikuszobolni?

Koszi: Lazly

-------------------------------
"A gorog katolikus noknek 8 dioptria alatt nem kotelezo a bajusz!" avagy "Nozni csak muholdal lehet..." | http://lazly.hu

Pontossan ez tortenik. A host_check a ping, es a szerviz is ez (egy gepteremrol van, semmi lenyeges szolgaltatas nincs ezeken a gepeken). De ettol meg hogy tudom rabeszelni hogy jojjon UP ha mar ujra tud pingetni?

Koszi a valaszt.

-------------------------------
"A gorog katolikus noknek 8 dioptria alatt nem kotelezo a bajusz!" avagy "Nozni csak muholdal lehet..." | http://lazly.hu

NRPE a barát :-)

http://nagios.sourceforge.net/docs/nrpe/NRPE.pdf

Illetve lecserélni a "gyári" pinget, pl erre :

define service{
use remote-service
host_name host
service_description ICMP
check_command check_icmp
is_volatile 1
contact_groups admin
max_check_attempts 3
normal_check_interval 3
retry_check_interval 3
check_period 48x7
notification_interval 30
notification_period 48x7
notification_options c,w,u,r
register 1
}

Koszonom valaszod!

A legszebb hogy meg az se igaz hogy a sima pingel vannak megpingetve, mert tuzfal mogotti gepekrol beszelunk (amik mar alapbol nrpe-s pingel vannak kihajtva). De igy mukodnek mas megfigyelt gepek is, amik nem igy pingetnek (vagy akar kulon "szolgaltataskent" nincsenek is felveve a ping, hanem barmi mas kiesik majd vissza, es a host down marad.)

Lazly

-------------------------------
"A gorog katolikus noknek 8 dioptria alatt nem kotelezo a bajusz!" avagy "Nozni csak muholdal lehet..." | http://lazly.hu

Hat elvileg (bar pont ekorul a kerdes korul van nekem is a gondom) Adsz neki egy nrpe-s szolgaltatas (ping?), es akkor a service status lesz a host status is.

Udv!

-------------------------------
"A gorog katolikus noknek 8 dioptria alatt nem kotelezo a bajusz!" avagy "Nozni csak muholdal lehet..." | http://lazly.hu

Sziasztok

Nemtudom hogy valaki találkozott-e már ilyen jellegű problémával - remélem igen.

Szóval kellene figyelni egy backup vonalat -ami végülis egy VPN csatorna- a külső telephely routere és a központ routere között.

check_mrtgtraf le tudja kérdezni az átlagos sebességet, ez már megvan. A kapcsolat fenntartásához a routerek pontosa 104 bit/sec sebességű forgalmat generálnak. A nagiosnak WARN-nal kellene jelezni, ha ez a sebesség lecsökken pl 90-re és CRITICAL-al ha felemelkedik pl 120-ra
Előző eset arra figyelmeztetne, hogy megszakadt a csatorna, utóbbi arra, hogy megnövekedett a forgalom, tehát az elsődleges útvonal - egy bérelt vonal nem aktív

Ennek alapján több lehetőség is kínálkozik a 90 bit/sec alatti forgalom figyelésére

A check_mrtgtraf byte/seccel dolgozik ezért legyen 11 a warn limit és 18 a critical limit.
A check_mrtgtraf a következőket várja el:

-F log_file -a AVG | MAX -w warning_pair -c critical_pair -e expire_minutes

A warning_pair és critical_pair változóknak két érték kell: le- és feltöltés.

tehát a következőknek működnie kellene:

1.

-w "~:11,~:11" -c "18,18" -a AVG -e 5

eredménye:

Traffic WARNING - Avg. In = 13.0 B/s, Avg. Out = 13.0 B/s|in=13.000000B/s;;18.000000;0.000000 in=13.000000B/s;;18.000000;0.000000

2.

-w "11:,11:" -c "18,18" -a AVG -e 5

eredmény:

Traffic WARNING - Avg. In = 13.0 B/s, Avg. Out = 13.0 B/s|in=13.000000B/s;11.000000;18.000000;0.000000 in=13.000000B/s;;18.000000;0.000000

Ami érdekes: a |in=.. után az első esetben enm jelenik meg semmi, a másodikban csak 11.00000 vagyis nem veszi figyelembe a :-t a "11:,11:" -nál. Úgy értelmezi, mindha a limit 11 lett volna, így érthető a WARN a válaszban.

Nagyon megköszönnék egy működő megoldást, vagy egy javaslatot a fenti probléma megoldására.

Köszi
Sempi

Mivel nem kaptam semmi javaslatot, írtam egy kis shell scriptet, ami elég primitív módon ugyan, de elvégzi a feladatot. Gondoltam megosztom...


#!/bin/bash
if [ "$#" -eq 1 ]; then
in_warning_level=11
in_critical_level=18
out_warning_level=11
out_critical_level=18
check_unit=B/s
mrtgtraf_result=`/usr/lib/nagios/plugins/check_mrtgtraf -F $1 -w "18,18" -c "18,18" -a AVG -e 5 2>&1 `
in_speed=`echo $mrtgtraf_result | awk '{print $7}' | grep -o '[^\.]*' | head -n 1 `
in_unit=`echo $mrtgtraf_result | awk '{print $8}' | grep -o '[^\,]*' | head -n 1 `
out_speed=`echo $mrtgtraf_result | awk '{print $12}' | grep -o '[^\.]*' | head -n 1 `
out_unit=`echo $mrtgtraf_result | awk '{print $13}' | grep -o '[^\|]*' | head -n 1 `
output="Traffic OK - Avg. In= $in_speed B/s, Avg. Out= $out_speed B/s"
exit_status=0
if [ $in_unit = "KB/s" ];
then
in_speed=`echo $in_speed*1024 | bc -l | grep -o '[^\.]*' | head -n 1 `
fi
if [ $out_unit = "KB/s" ];
then
out_speed=`echo $out_speed*1024 | bc -l | grep -o '[^\.]*' | head -n 1 `
fi
if [ $in_unit = "MB/s" ];
then
in_speed=`echo $in_speed*1048576 | bc -l | grep -o '[^\.]*' | head -n 1 `
fi
if [ $out_unit = "MB/s" ];
then
out_speed=`echo $out_speed*1048576 | bc -l | grep -o '[^\.]*' | head -n 1 `
fi
if [ $in_speed -lt $in_warning_level ];
then
output="WARNING In: $in_speed $check_unit under the warning level: $in_warning_level $check_unit ( Out: $out_speed $check_unit )"
exit_status=1
fi
if [ $in_speed -gt $in_critical_level ];
then
output="CRITICAL In: $in_speed $check_unit above the critical level: $in_critical_level $check_unit ( Out: $out_speed $check_unit )"
exit_status=2
fi
if [ $out_speed -lt $out_warning_level ];
then
output="WARNING Out: $out_speed $check_unit under the warning level: $out_warning_level $check_unit ( In: $in_speed $check_unit )"
exit_status=1
fi
if [ $out_speed -gt $out_critical_level ];
then
output="CRITICAL Out: $out_speed $check_unit above the critical level: $out_critical_level $check_unit ( In: $in_speed $check_unit )"
exit_status=2
fi
echo $output
exit $exit_status
else
echo "Argumentum hiba"
fi

A probelmam a kovetkezo a windows-os event logokat kene nezni a a nagios on ezek vannak beallitva eddig

define command {
command_name check_eventlog
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c check_eventlog -a $ARG1$ $ARG2$ $ARG3$ $ARG4$
}

define service{
use generic-service_uzemeltetes
host_name xpteszthun
service_description Eventlog Application 05
check_command check_eventlog!"error"!"15m"!"1"!"5"
}

Nagios ezt uzeni vissza:

Eventlog Application 05 UNKNOWN 2009-10-30 16:34:37 0d 0h 7m 3s 4/4 CHECK_NRPE: Received 0 bytes from daemon. Check the remote server logs for error messages.

A kliens oldalon NSClient van.

2 napja hegesztem de megoldat meg nem talaltam. Minden nemu 5letet szivesen veszek ;)

Volna egy aprobb problemam. Windows masinakat kellene nagiossal figyelnem. Talaltam ket agens-t windows ala, de nem ugy mukodnek ahogy kellene. Az egyik az NSClient++ a masik az NSClient. Az egyikkel nem boldogultam, Az NSClient pedig nem kozol minden infot.

Nem mukodik, a meminfo, a cpuload. A useddiskspace mukodik es jol is.

Van valami otletetek, hogy miert nem megy? Esetleg a win7 az oka?

Udv
balazsasd

Ez nem valami bő infó. Mit jelent a nem boldogultam?

NSClient++-ban beállitod a nagiosod portját amin kérdez, IP cimet. És a tűzfalon ha van engedélyezed a portokat. A lekérdező scriptek megvannak a szerveren? Mit takar a nem működik? Hibaüzenet? Mit ír service detailsben a nagios?
-------------------------
127.0.0.1 SWEET 127.0.0.1