Kategória: OpenWrt

Zmenené: 13. august 2013

Monitorovanie pomocou SNMP

Pôvodne to bol clekom dlhý článok, ale oproti verzii 8.09 sa v OpenWrt verzie 12.09 toho veľa zlepšilo, takže popis spustenia minimalistického démona SNMP bude krátky.

Inštalácia

SNMP je sieťový protokol, ktorý slúži na monitorovanie i správu zariadení po sieti. V OpenWrt sú k dispozícii tri balíky, ktoré poskytujú démona SNMP:

  • snmpd
  • snmpd-static
  • mini-snmpd

Prvé dva ponúkajú plnohodnotného démona snmpd, prvý dynamicky a druhý zase staticky linkovaný. Najviac ma zaujal posledný, ktorého domovská stránka je na http://members.aon.at/linuxfreak/linux/mini_snmpd.html a podporuje len obmedzenú množinu funkcií, ale pre mňa plne postačujúce:

  • SNMP verzie 1 a 2c
  • komunikácia TCP i UDP
  • základné informácie o systéme (uptime, CPU load, využitie pamäte)
  • základné sieťové informácie (prenesená bajty/pakety, počet chýb)
  • základné informácie o diskoch (miesto/inody – dostupné/použité/voľné)

Tip

Napriek uvedenému zoznamu mi funguje len uptime a štatistiky rozhraní, ale chyba môže byť v mojom nastavení.

Inštalácia je v podstate jednoduchá, nič netreba kompilovať, stačí použiť balík, ktorý je dostupný v úložisku:

opkg install mini-snmpd

Upozornenie

V starej verzii OpenWrt som si musel vytvoriť spúšťací skript i konfiguračný súbor, v súčasnej už balík obsahuje všetko potrebné.

Nastavenie

Pred samotným spustením je ešte potrebné upraviť konfiguračný súbor /config/mini_snmpd, ak by ste boli totiž nedočkavý, budete sa diviť, že sa nič nedeje. Myslím, že syntax súboru súboru je ľahko pochopiteľná a zmeniť treba vlastne len jednu vec, a to povoliť spúšťanie démona v riadku:

option enabled 1

Po inštalácii balíka tam bude 0, čo bráni samotnému spusteniu démona pomocou štartovacieho skriptu.

Rada

Samozrejme, môžete si prispôsobiť aj dostupné rozhrania, či ďalšie voľby…

Spustenie

Po prispôsobení konfiguračného súboru démona ho možno spustiť:

/etc/init.d/mini_snmpd start

Pre istotu môžete skontrolovať, že démon je spustený zobrazením spustených sieťových služieb:

netstat -tunlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:161             0.0.0.0:*               LISTEN      11657/mini_snmpd
...

Aby sa démon automaticky spúšťal aj po reštarte smerovača (pri búrkach u nás často vypadáva elektrina), je potrebné zapnúť ho:

/etc/init.d/mini_snmpd enable

Otestovanie

Po nastavení a spustení démona je dobré si pozrieť, čo to vlastne poskytuje, napríklad:

snmpwalk -v2c -c public meno_stroja

iso.3.6.1.2.1.1.1.0 = ""
iso.3.6.1.2.1.1.2.0 = OID: iso.3.6.1.4.1
iso.3.6.1.2.1.1.3.0 = Timeticks: (614) 0:00:06.14
iso.3.6.1.2.1.1.4.0 = STRING: "<contact>"
iso.3.6.1.2.1.1.5.0 = STRING: "OpenWrt"
iso.3.6.1.2.1.1.6.0 = STRING: "<location>"
iso.3.6.1.2.1.2.1.0 = INTEGER: 3
iso.3.6.1.2.1.2.2.1.1.1 = INTEGER: 1
iso.3.6.1.2.1.2.2.1.1.2 = INTEGER: 2
iso.3.6.1.2.1.2.2.1.1.3 = INTEGER: 3
iso.3.6.1.2.1.2.2.1.2.1 = STRING: "lo"
iso.3.6.1.2.1.2.2.1.2.2 = STRING: "br-lan"
iso.3.6.1.2.1.2.2.1.2.3 = STRING: "eth1"
iso.3.6.1.2.1.2.2.1.8.1 = INTEGER: 1
iso.3.6.1.2.1.2.2.1.8.2 = INTEGER: 1
iso.3.6.1.2.1.2.2.1.8.3 = INTEGER: 1
iso.3.6.1.2.1.2.2.1.10.1 = Counter32: 67620
iso.3.6.1.2.1.2.2.1.10.2 = Counter32: 783636674
iso.3.6.1.2.1.2.2.1.10.3 = Counter32: 4126591673
iso.3.6.1.2.1.2.2.1.11.1 = Counter32: 829
iso.3.6.1.2.1.2.2.1.11.2 = Counter32: 2847495
iso.3.6.1.2.1.2.2.1.11.3 = Counter32: 3816344
iso.3.6.1.2.1.2.2.1.13.1 = Counter32: 0
iso.3.6.1.2.1.2.2.1.13.2 = Counter32: 456
iso.3.6.1.2.1.2.2.1.13.3 = Counter32: 13452
iso.3.6.1.2.1.2.2.1.14.1 = Counter32: 0
iso.3.6.1.2.1.2.2.1.14.2 = Counter32: 0
iso.3.6.1.2.1.2.2.1.14.3 = Counter32: 0
iso.3.6.1.2.1.2.2.1.16.1 = Counter32: 67620
iso.3.6.1.2.1.2.2.1.16.2 = Counter32: 4138218755
iso.3.6.1.2.1.2.2.1.16.3 = Counter32: 788897908
iso.3.6.1.2.1.2.2.1.17.1 = Counter32: 829
iso.3.6.1.2.1.2.2.1.17.2 = Counter32: 3701627
iso.3.6.1.2.1.2.2.1.17.3 = Counter32: 2524895
iso.3.6.1.2.1.2.2.1.19.1 = Counter32: 0
iso.3.6.1.2.1.2.2.1.19.2 = Counter32: 0
iso.3.6.1.2.1.2.2.1.19.3 = Counter32: 0
iso.3.6.1.2.1.2.2.1.20.1 = Counter32: 0
iso.3.6.1.2.1.2.2.1.20.2 = Counter32: 0
iso.3.6.1.2.1.2.2.1.20.3 = Counter32: 0
iso.3.6.1.2.1.25.1.1.0 = Timeticks: (59455621) 6 days, 21:09:16.21

Rada

Ak potrebujete vidieť číselný kód položiek, použite voľbu -On.