poniedziałek, 26 listopada 2012

Cacti - monitorowanie serwera DNS - BIND9

Do uruchomienia monitorowania serwera DNS Bind9 będa potrzebne:
- skrypty i template do Cacti - bind9-stats-2.0.tar
- biblioteka do Perla - libsnmp-extension-passpersist-perl

Ponieważ nie mam jej w dystrybucji Debian Squeeze należy pobrać pakiet deb na dysk i zainstalować za pomocą:
# dpkg - i libsnmp-extension-passpersist-perl_0.06-1_all.deb

Przed instalacja należy doinstalować pakiety:
  • libclass-accessor-perl (>= 0.30)
  • liblist-moreutils-perl (>= 0.21)

1. Konfiguracja Binda i sprawdzenie działanie narzędzie RNDC

- do pliku konfiguracyjnego Binda dodajemy sekcje z kluczem MD5 dla RNDC, musi byc on zgodny z kluczem w pliku konfiguracyjny rndc.conf, oraz konfigurujemy Binda by generował statystyki do pliku (jeżeli Bind jest uruchamiany w sand-boxie, podajemy zwykłą ścieżkę do pliku, bez żadnych dodatkowych informacji)


key rndc-key {
        algorithm hmac-md5;
        secret " jakis sekretny klucz MD5 ";
        };

zone-statistics         yes;
dump-file               "/var/cache/bind/cache_dump.db";
statistics-file         "/var/cache/bind/named_stats.txt";
memstatistics-file      "/var/cache/bind/named_mem_stats.txt";


- restart Binda i sprawdzenie działanie narzędzia RNDC
# /etc/init.d/bind9 restart

# rndc status
version: 9.7.3 (DNS)
CPUs found: 1
worker threads: 1
number of zones: 28
debug level: 0
xfers running: 0
xfers deferred: 0
soa queries in progress: 0
query logging is OFF
recursive clients: 0/0/1000
tcp clients: 0/100
server is up and running

- sprawdzamy czy rndc generuje plik

# rndc stats
# more /var/cache/bind/named_stats.txt

+++ Statistics Dump +++ (1353929701)
++ Incoming Requests ++
                 123 QUERY
++ Incoming Queries ++
                 117 A
                   6 AAAA
++ Outgoing Queries ++
[View: internal]
[View: external]
[View: _bind]
++ Name Server Statistics ++
                 123 IPv4 requests received
                  54 requests with EDNS(0) received
                  62 recursive queries rejected
                 123 responses sent
                  54 responses with EDNS(0) sent
                  55 queries resulted in successful answer
                  61 queries resulted in authoritative answer
                   6 queries resulted in nxrrset
                  62 other query failures
++ Zone Maintenance Statistics ++
                   9 IPv4 notifies sent
++ Resolver Statistics ++
(...)

- i dodajemy wywołanie skryptu do crona, generowanie statystyk nastąpi co 5 minut
*/5 * * * * /usr/share/bind9/bind9-genstats.sh > /dev/null 2>&1

2. Plik bind9-stats-2.0.tar rozpakowujemy np. do /usr/share/bind9

3. Modyfikujemy skrypty. W obu należy ustawić ścieżkę do pliku named_stats.txt. Tu podajemy już pełną ścieżkę w systemie plików


/usr/share/bind9/bind9-genstats.sh

STAT_FILE=/var/lib/named/var/cache/bind/named_stats.txt



/usr/share/bind9/snmp/bind9-stats-snmpd.pl
$STAT_FILE = "/var/lib/named/var/cache/bind/named_stats.txt";


4. Do pliku snmpd.conf dodajemy:
pass .1.3.6.1.4.1.2021.55 /usr/bin/perl /usr/share/bind9/snmp/bind9-stats-snmpd.pl

restartujemy demona
# /etc/init.d/snmpd restart

i sprawdzamy:
#snmpwalk -v 2c -c <snmp_community> localhost .1.3.6.1.4.1.2021.55
UCD-SNMP-MIB::ucdavis.55.1.0 = INTEGER: 0
UCD-SNMP-MIB::ucdavis.55.1.1 = INTEGER: 1
UCD-SNMP-MIB::ucdavis.55.1.2 = INTEGER: 2
UCD-SNMP-MIB::ucdavis.55.1.3 = INTEGER: 3
UCD-SNMP-MIB::ucdavis.55.1.4 = INTEGER: 4
UCD-SNMP-MIB::ucdavis.55.1.5 = INTEGER: 5
UCD-SNMP-MIB::ucdavis.55.1.6 = INTEGER: 6
UCD-SNMP-MIB::ucdavis.55.2.1 = STRING: "GLOBAL"
(...)

5. Na koniec kopjujemy plik 
# cp /usr/share/bind9/snmp/bind9-stats-snmp.xml /usr/share/cacti/resource/snmp_queries/

oraz importujemy do Cacti template cacti_data_query_bind_9_statistics_snmp.xml

6. Dodajemy do hosta na którym mamy uruchomiony serwer DNS data query BIND 9 Statistics (SNMP), po czym wykonujemy odczyt danych z serwera (Verbose query) i normalnie dodajemy potrzebne wykresy.
Data Query
Obrazek z http://forums.cacti.net




Statystyka ogólna serwera DNS Bind9
Obrazek z http://forums.cacti.net



Brak komentarzy:

Prześlij komentarz