Sziasztok!
Pár éve fejlesztek egy programot, saját célra, hálózatfelügyelethez. A program eddig Perl/PHP/MySQL-ben készült. Jelenleg igencsak rászorul egy újragondolásra/újraírásra (esetleg olyan formában, ami alkamas arra, hogy közkincsé tegyem).
Mivel elég jól elvagyok a QT4-el, arra gondoltam, hogy az új verzió ebben készülne. Sajnos néhány dologgra nem igazán találok jó megoldást:
Az információgyűjtésre az SNMP-t használom, amit eddig a NET-SNMP-tools parancsfáljain keresztül oldottam meg, a programkimenet szövegének feldolgozásával. Ez ugye nem a leghatékonyabb megoldás. A QT-hez nincs SNMP modul, amit eddig néztem: net-snmp C API : nem nevezném sem egyszerűnek, sem túldokumentáltnak. SNMP++ szintén nem egyszerű, de legalább rosszul dokumentált (nyomtatott könyv van róla, kb 10 éves, de ennek a beszerzése elég macerás, letölteni nem tudtam). snmpkit könyvtár: ha jól értem csak az SNMP v1-et támogatja, ami nem elég. Felmerült annak a lehetősége, hogy beágyazott PERL-en keresztűl csinálom az SNMP kéréseket, de nem tudom megéri-e, félek, hogy a perl modulok dokumentáltsága sem sokkal jobb. Nekem úgy tűnik, hogy az SNMP tudorok szerint elég, ha elolvasom az RFC-ket és megnézem a forrását a könyvtáraknak, és abból minden kiderül. Ez igaz, de erre sem időm, sem kedvem (és bizonnyal az angol tudásom sem elég), és nem tudora akarok lenni a témának, csak lehetőleg hatékonyan szeretnék egy programban nagyszámú SNMP lekérdezést csinálni. Szivesen fogadnék tippeket, a legkevésbé kűzdelmes megoldás kiválasztásában.
A régi rendszer egyes lekérdezéseket SSH-n keresztül csinálta, van valamilyen egyszerű módszer az SSH kapcsolatok kezelésére C/C++-ban, vagy itt nics más megoldás mint az ssh parancsot hívogatni, ill. a módszert elfelejteni.
Esetleg arra is várok tippeket, hogy milyen kész programokat tudék beolvasztani a sajátomba:
Eddigi öletek: A nagios integrálása. Ezt csak tegnam kezdtem körbejárni. Jó lenne egy olyan doksi, ami gyengébb angol udással is felfogható, és nem csak a nagyon alapokról szól.
A forgalom grafikonok rajzolsához rrdtools-t haszáltam, ezt a részt lehetne egyszerűsíteni a munin, vagy a cacti esetleg más bevonásával. A munin-t kipróbáltam, és a legegyerübb felállásban nem igazán akar működni.
A régi program folyamatosan feltérképezte a switch-ek kapcsolódását, a kliens gépek helyét-mozgását, a VLAN kiosztást, a kliensek ip címeit, ill. annak változását. A switch portok állapotát, és erre épülve figyelmeztetést adott, ha egy (figyelt) eszközt eltávolítottak a rendszerből. Nem tudom, hasonló feladatokra vannak-e kész programok. Ha igen, esetleg használhatnám/bevonhatnám azokat is, ill. adhatnának ötleteket.
Előre is köszönöm a tippeket.
- 1794 megtekintés
Hozzászólások
Ha konkret parancsokat akarsz kiadni SSH-val es SNMP-vel, akkor miert nem jo a szimpla parancshivas? Ill. http://lists.trolltech.com/qt-interest/2003-04/thread01503-0.html
--
The Net is indeed vast and infinite...
http://gablog.eu
- A hozzászóláshoz be kell jelentkezni
Eddig szimpla parancshívás volt, és tulajdonképpen egy megfelelő kapacitású géppel működött is. Így, ha nem találok valami kevésbé embertpóbáló modszert a hatéponyság növelésére, akkor marad ez.
De úgy gondoltam egy próbálkozást/kérdésfeltevést megér a dolog. Folyamatosan nagy mennyiségű lekérdezésről van szó, és egy programon bellűl elintézve a lekérdezéseket, jobb eredményt érhetünk el mintha 50x meghívok egy külső programot, és oda-viszza konvertálgatom az eredményt.
A linket megnéztem. Az egyik válasz szerint használjak net-snmp-t, és elmagyarázza az installálást, biztos az én hibám, de ettől nem lettem okosabb. Elolvastam a net-snmp doksiját, és a példaprogramokat is, de nem egy nyitott kérdés maradt, kisérletezni, forrás fájlokból kitalálni a használatát pedig se kedvem se időm nincsen, lehet, hogy öregszem, de ez van.
Később ajánl egy nem free, sem nyilt forrású rendszert (mg-soft). Bár munkahelyem ennél jóval fölöslegesebb dolgokra is költ jóval többet (egy főiskola), erre nem fog egy fillért sem.
A http://www.snmplink.org/ -ot még nem néztem át, de ha emlékeim nem csalnak itt már keresgéltem régebben, nem sok eredménnyel. Persze az az elején volt, és akkor még azt hittem találok jobb helyeket is.
- A hozzászóláshoz be kell jelentkezni
szerintem j2eeben csinald, ugysem tudok javas halozatfelugyeleti cuccrol :)
- A hozzászóláshoz be kell jelentkezni
Ott van rendes SNMP?
--
()=() Ki oda vagyik,
('Y') hol szall a galamb
C . C elszalasztja a
()_() kincset itt alant.
- A hozzászóláshoz be kell jelentkezni
ssh-hoz van libssh2 esetleg megnezegetheted, ill. snmp-hez nezd meg a net-snmp-ben a megfelelo tool-ok forrasat, hatha nem olyan bonyolult atalakitani oket.
--
()=() Ki oda vagyik,
('Y') hol szall a galamb
C . C elszalasztja a
()_() kincset itt alant.
- A hozzászóláshoz be kell jelentkezni
Szia Fecó!
Esetleg megnézhetnéd a pythont is, van hozzá egy SNMP framework (http://pysnmp.sourceforge.net/), és ha az jó, akkor a Qt4-et sem kell mellőznöd, mert ugye ott van PyQt (http://wiki.python.org/moin/PyQt).
Üdv:
R
- A hozzászóláshoz be kell jelentkezni