UPS hálózati monitorozás Nagios -al.

Íme egy kisebb írás arról hogy hogyan oldottuk meg azt hogy monitorozva legyenek a UPS-eink, hálózaton, anélkül, hogy mindenhova tennénk egy PC.

Szóval adott kb. 50 db UPS, amit monitorozni kellene, de nem csak abból a célból hogy időben letálisuk az általa „meghajtott” eszközt, vagy szervert, hanem, és ez volt a legfőbb cél, hogy monitorozni tudjuk az áram kimaradásokat, és riasztásunk legyen ezekről a helyzetekről. Vegyük a következő esettet, aki nem használ UPS-t és úgy üzemeltet szervert, azt nem minősíteném, de minden esetre maximum nagyon bátornak mondanám. Persze vannak olyan megoldások ahol nem kellenek hiszen már a szerver szobába olyan a tápellátás, hogy szünet mentes tápegységről jön az áram.. Ilyenkor tárgytalan az egész téma amiről írok.

Viszont ha van mondjuk 20 LAN szekrény kb. 5 különböző épületben akkor az a nagy közös UPS dolog nem működik. Úgyhogy minden LAN szekrénybe, és szerver rack-be 2 db. egymástól teljesen különálló, és teljesen két külön körös betáp-ról működő kb. 3000 W-os szünetmentest tettem.. Na most ezeket kellet monitorozni. Ezekhez lehet már kapni olyan modult, ami Ethernet csatlakozóval el van látva, és mint ilyen az én switchelt hálózatomon tud kommunikálni. A gond ezekkel a bővítő kártyákkal csak az, hogy amikor én néztem (~2005-ben) akkor olyan ~100.000 Ft be került darabja. Viszont RS232 soros porti csatlakozóval mindegyik rendelkezett.

A megoldás kézenfekvő volt, egy olyan átalakítóra volt szükségem ami Sorosport-ot Ethernet-re alakít. Ebből többféle is létezik a piacon, olyan ~15.000 Ft körüli árban.

(Sokat gondolkodtam, hogy megírjam-e az általam használt típusokat, mivel ez szerintem reklámnak minősül, bár nem annak szánnám. Végül is úgy döntöttem, hogy megírom, maximum ha valakinek nem tetszik, akkor majd szól és akkor kiszedem.)

Én a következő két típusból rendelkezem jó pár példánnyal.

moxa_5110

http://www.moxa.com/Product/NPort_5110.htm

tibbo_ds100

http://www.tibbo.com/ds100.php

Mindkét eszköz rendelkezik Linux, Unix-os támogatással a Windowsos mellet. Természetesen én Linux-on használom, merthogy azon megy a nagios is. Mind a két termék egy egy daemont futtat és egy konfigurációs file-ból olvassa ki az IP címeket. A moxa-nak minden egyes kernel upgrade-kor újra kell fordítani a driver-et, illetve ugy van megírva a telepítő, fordíto script, hogy azt feltételezi, hogy a /tmp könyvtárba lett kitömörítve. LoL

A nagios, a linuxban található UPS daemon-tól vesszi az információkat. Igazából nem szeretném ezt túl komplikálni, hiszen linuxon a beálitások 3 file-ban található, és nagyon egyértelmü:

A moxa konfigurációs file a /usr/lib/npreal2/driver/npreal2d.cf található, és a tartalma:

ttymajor=33
calloutmajor=38
#[Minor] [ServerIP]     [data]  [cmd]   [FIFO]  [SSL]   [ttyName] [coutName]
0        10.5.5.15       950     966     1       0       ttyr00     cur00

A daemon újra inditása után létre jön a /dev könyvtárban a ttyr00 – eszköz, amire már tud hivatkozni az ups daemon is.

A Tibbo konfigurációs file-ja /usr/local/vspd/etc/vspd.conf található, és a tartalm:

<vsp num=”0″>
<bind host=”" port=”3500″/>
<connection rmode=”server/client” proto=”tcp” conmode=”ondata” timeout=”5″ onthefly=”outofband”/>
<destination ip=”10.5.5.18″ port=”1001″ cport=”65535″/>
<packets maxlen=”255″ maxdelay=”0″ starton=”any”/>
<log type=”file” level=”EMR” path=”var/dev.0.log”/>
<log type=”file” level=”ALR” path=”var/dev.0.log”/>
<log type=”file” level=”CRT” path=”var/dev.0.log”/>
<log type=”file” level=”ERR” path=”var/dev.0.log”/>
<log type=”file” level=”WRN” path=”var/dev.0.log”/>
<log type=”file” level=”NTC” path=”var/dev.0.log”/>
<log type=”file” level=”INF” path=”var/dev.0.log”/>
<!– <log type=”file” level=”DBG” path=”var/dev.0.log”/> –>
</vsp>

Természetesen itt is létrejön a /dev könyvtár alatt egy vsps0-ás eszköz file .

A UPS daemon konfigurációs file-ja már OP rendszertől függő, de a tartalma:

[ups-2epulet-01]
driver = apcsmart
port = /dev/vsps0

Innen már szinte bármi tud csatlakozni és információt lekérdezni a ups daemon-tól.

FIGYELEM: Az eszköz file-ok egy emulált soros porti eszközök, ezért ha mondjuk egyszerre két procesz is írni próbálja, akkor egy gyönyörű szép kernel panic -ot kapunk !

Én már megjártam. Minicom-al próbáltam csatlakozni hozzá ami sikerült is csak rögtön utána elszált, mert a nagios-is próbálkozot.

Hát ismételten köszönöm a figyelmet, és ha kérdésetek van – please do not hesitate  ;-)


About this entry