Monitorowanie po snmp

      Brak komentarzy do Monitorowanie po snmp

Co to wlasciwie jest ten SNMP? :

Simple Network Management Protocol – Najprościej mówiąc jest to Sląska baba w oknie z kawa opierająca sie parapet, która ma na wszystko oko i zadzwoni  gdzie trzeba jeśli coś jej sie nie spodoba:) a bardziej dokładniej jest to protokół trzeciej warstwy sieciowej(IP) ,dzięki któremu będziemy mogli zdalnie zarządzać i odczytywać informacje z urządzę sieciowych. Ma w prostu i szybki sposób dawać nam informacje o serwerku(snmpget), zgłaszać nam gdy coś sie dzieje złego(snmptrap) , a także umożliwić wykonywania działań na nim (snmpset). Jednym słowem , wspaniale narzędzie do zbudowania naszej aplikacji monitorująca siec(manager). Wykorzystuje protokół UDP na porcie 161 (do wysłania i odpowiadanie na  żądania ) i 162 ( odbierania trapow). Jest podział na dwie role, manager zbierają dane i wysyłają zadania, a agenci posłusznie odpowiadaj i wykonują 🙂

Protokół doczekał sie trzech  wersji:

  • SNMP Version 1 ( -v 1) – bezpieczeństwo na poziomie haseł community(plain-text) możliwy w czterech opcjach : read-only, read-write , read-write i trap.
  • SNMP Version 2 (-v 2c) – zgodność z poprzednikiem, bulk querties, wsparcie dla 64 bit.
  • SNMP Version 3 (-v 3) – szyfrowanie połączenia.

Informacje które są odczytywane od agenta przez managera, znajdują się w tak zwanej strukturze zarządzenia, czyli  drzewo ( SMI –  Structure of managemnet) a konkretna numeryczna ścieżka do jednostki lub grupy informacji, można porównać do owego liścia na tym drzewie, która stricte jest nazywana OID em(object identyfices).

SNMP_OID_MIB_Tree

Czyli adres do OIDa typu system to 1.3.6.1.1.1.1 albo iso.org.dod.internet.directory.mib-2.system lub przestrzeń nazwy z pliku MiB SNMPv2-MIB::system, ale musimy go mieć w naszej bazie.

Oid składa się na kilka typów, o to kilka najważniejszych:

  • INTEGER – liczba.
  • OCTET_STRING – ciąg znaków, text.
  • Counter – licznik który  tylko się dodaje ,  kiedy przekroczy max liczbę (2^32) zaczyna liczyć od zera.
  • Gauge – to samo co Counter ale możne się tez odejmować.

Najczęściej do odczytywanie informacji korzysta się z gotowych schematów opisujących   czyli MiB ( Managment Inforation Base) i zęby można było odczytywać dane, agent i manager musi wspierać dana implementacje miba.

Snmp składa z kliku operacji:

  • get – zadanie o informacje
  • get-next – zadanie kolejnej po tej  informacji
  • get-bulk – bardziej szczegółowe i więcej informacji
  • set -zmiana wartości na serwerze ( interface up na down)
  • trap – informacja wysyłana przez agenta ze coś poszło nie tak

Konfiguracja Agenta(urządzenie z którego chcemy odczytać informacje) :

Wykonujemy kopie domyślnego pliczku i tworzymy właściwą konfiguracje dla agenta:

cd /etc/snmp
mv snmp.conf snmp.conf.org 
mcedit snmp.conf

/etc/snmp/snmp.conf:

# Nazwa miejsca gdzie sie znajduje maszyna 
syslocation serwerownia_gliwice

# Numer określa rodzaj end-host Agenta 
sysservices 79

# ustawiamy haslo do operacji tylko do odczytu 
rocommunity public 127.0.0.1
rocommunity public 10.10.10.2

# tablica obciążeń UCD-SNMP-MIB::laTable
load 12 12 12 

# tablica dysku UCD-SNMP-MIB::dskTable 
disk /dev/sda1  100000 # zachowaj 100Mb wolnego 

# tablica do monitorowania procesów
proc httpd 1 1 # jeden serwer www  
procfix /bin/httpd restart # akcja gdy jest ich wiecej 


I odpalamy naszego agenta:

snmpd -c /etc/snmp/snmp.conf -a /var/log/snmp.log

Odczytywanie danych( manager ):

snmpwalk   – przeszukanie całego drzewa znanych OIDów.

#odczytanie wszystkich 
snmpwalk -c public  -v 1 10.10.10.1 

# wyświetlenie wraz ścieżka numeryczna oida zwiazana z korzeniem "system"
snmpwalk -c public -On system

snmpget – odczytanie jednego konkretnego OIDa

snmpget -c public -v 1 10.10.10.1 .1.3.6.1.2.1.1.1.0
snmpget  -c public -v 1 10.10.10.1 SNMPv2-MIB::sysDescr.0

snmptable – ładnie formatuje nasze dane do postaci tabelki

#Odczyt tabeli otwartych połączeń po tcp
snmptable -c public  -v 1 10.10.10.1  TCP-MIB::tcpConnTable

#Odczyt tabeli dyskow 
snmptable -c public  -v 1 10.10.10.1 UCD-SNMP-MIB::dskTable

#Odczyt obciążenia serwera 
snmptable -c public -v 1 10.10.10.1

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Witryna wykorzystuje Akismet, aby ograniczyć spam. Dowiedz się więcej jak przetwarzane są dane komentarzy.