Erinevus lehekülje "Nagiose kasutamine Debian Lenniga" redaktsioonide vahel

Allikas: Kuutõrvaja
1. rida: 1. rida:
 
===Sissejuhatus===
 
===Sissejuhatus===
  
TODO
+
Nagios http://www.nagios.org/ on monitooringutarkvara.
 +
 
 +
===Nagiose tööpõhimõte===
 +
 
 +
Nagiose serveri ülesandeks on kontrollida võrgus töötavate arvutite (ingl. k. host) ja teenuste (ingl. k. service) seisukorda.
 +
 
 +
    _____  Nagiose server
 +
  |    | 
 +
  |_____| 
 +
      |
 +
      |
 +
    -|---------|----------|----....---|--
 +
                |          |          |
 +
              __|__      __|__      __|__
 +
            |    |    |    |    |    |
 +
            |_____|    |_____|    |_____|
 +
         
 +
              smtp      www        dns
 +
              raid      raid        raid
 +
 
 +
Arvutite ja teenuste seisukorda iseloomustavaid parameetreid võib jaotada lähtudes erinevatelt alustelt. Nt selle järgi, kas parameetrit kontrollitakse üle võrgu või lokaalsest arvutist
 +
 
 +
* kontrollitakse üle võrgu - veebileht, nimeserver
 +
* kontrollitakse lokaalselt - arvutis töötavate protsesside arv, arvuti koormus (ingl. load), failisüsteemi täituvus, raid lülituse korrasolek
 +
 
 +
või selle järgi, kes küsib või kes ütleb
 +
 
 +
* aktiivne kontroll - Nagiose server esitab teenustele kontrollpäringuid (nt veebileht, nimeserver)
 +
* passiivne kontroll - Nagiose server kuulab teenuste raporteerimisi (nt backupi õnnestumine)
  
 
===Nagios monitooringutarkvara kasutamine===
 
===Nagios monitooringutarkvara kasutamine===

Redaktsioon: 6. juuni 2010, kell 13:01

Sissejuhatus

Nagios http://www.nagios.org/ on monitooringutarkvara.

Nagiose tööpõhimõte

Nagiose serveri ülesandeks on kontrollida võrgus töötavate arvutite (ingl. k. host) ja teenuste (ingl. k. service) seisukorda.

   _____   Nagiose server
  |     |  
  |_____|  
     |
     |
    -|---------|----------|----....---|--
               |          |           |
             __|__      __|__       __|__
            |     |    |     |     |     |
            |_____|    |_____|     |_____|
         
              smtp       www         dns
              raid       raid        raid

Arvutite ja teenuste seisukorda iseloomustavaid parameetreid võib jaotada lähtudes erinevatelt alustelt. Nt selle järgi, kas parameetrit kontrollitakse üle võrgu või lokaalsest arvutist

  • kontrollitakse üle võrgu - veebileht, nimeserver
  • kontrollitakse lokaalselt - arvutis töötavate protsesside arv, arvuti koormus (ingl. load), failisüsteemi täituvus, raid lülituse korrasolek

või selle järgi, kes küsib või kes ütleb

  • aktiivne kontroll - Nagiose server esitab teenustele kontrollpäringuid (nt veebileht, nimeserver)
  • passiivne kontroll - Nagiose server kuulab teenuste raporteerimisi (nt backupi õnnestumine)

Nagios monitooringutarkvara kasutamine

Debiani paketihaldus sisaldab Nagios http://www.nagios.org/ versioon 3.0.x tarkvara, paigaldamiseks sobib öelda

 # apt-get install nagios3 nagios3-doc

nagios3-doc sisaldab muu seas HTML kujul dokumentatsiooni kataloogis /usr/share/nagios3/htdocs.

Veebipõhise haldusliidese kasutaja ligipääsu tekitamiseks sobib öelda

 # dpkg-reconfigure nagios3-common

ja dialoogides jääda vaikeväärtuste juurde, näidata parool.

Veebiliidese kasutuselevõtuks tuleb seadistada suhteliselt nn vanilla Apache virtuaalhost ja kasutada Nagiosega ühenduseks nt seadistusnäiteid failist /etc/nagios3/apache.conf.

Tulemusena saab kasutajana nagiosadmin ja näidatud parooliga haldusliidesesse logida

Debian-nagios-1.gif

kust on näha, et

  • jälgitakse kahte arvutit, vaikelüüsi ja seda arvutit ennast, kus Nagios töötab
  • arvutis jälgitakse kuut parameetrit

Haldusliidesest Nagiose juhtimiseks tuleb Nagios seadistada kuulama nn väliseid korraldusi. Selleks peab /etc/nagios3/nagios.cfg failis sisalduma rida

 check_external_commands=1

Failisüsteemis on enne

 # ls -ld /var/lib/nagios3/rw /var/lib/nagios3
 drwxr-x--- 4 nagios nagios   4096 Oct 22 00:19 /var/lib/nagios3
 drwx------ 2 nagios www-data 4096 Jul  2 12:37 /var/lib/nagios3/rw

Korraldused

 # dpkg-statoverride --update --add nagios www-data 2710 /var/lib/nagios3/rw
 # dpkg-statoverride --update --add nagios nagios 751 /var/lib/nagios3

Pärast

 # ls -ld /var/lib/nagios3/rw /var/lib/nagios3
 drwxr-x--x 4 nagios nagios   4096 Oct 22 00:19 /var/lib/nagios3
 drwx--s--- 2 nagios www-data 4096 Jul  2 12:37 /var/lib/nagios3/rw

Nagiose seadistamine

Nagios tööd juhib põhiline seadistusfail /etc/nagios3/nagios.cfg ning sellest failis viidatud muud seadistusfailid. Nagiose seadistamisel kirjeldatakse ära hulk erinevaid objekte

  • host - jälgitav arvuti või võrguseade (nt vaikelüüs)
  • service - jälgitav teenus (nt veebileht)
  • command - kontrollkäsk, mis jälgib teenust
  • hostgroup - hulk jälgitavaid arvuteid
  • servicegroup - hulk jälgitavaid teenuseid
  • contact - kontakt, kellele saadetakse teatud sündmuse toimumise kohta teade
  • contactgroup - hulk kontakte

Seejuures tehniliselt ei ole oluline, kas objektide kirjeldused asuvad ühes failis või mitmes failis, mis omakorda võivad asuda mitmes kataloogis. Siiski, sõltuvalt monitooringuülesandes on reeglina praktiline jagada objektid mitmete failide vahel. Gruppide kasutamine võimaldab kirjeldada objekte abstraktsemalt, mis praktiliselt lihtsustab Nagiose seadistuste kirjutamist.

Tavalisel juhtumil võiks olla kasutuses nt sellised seadistusfailid, kusjuures vaikimisi Debian Lenny failide nimesid on kohendatud

# find /etc/nagios3 -type f | grep -v stylesheets | grep -v index
/etc/nagios3/htpasswd.users
/etc/nagios3/cgi.cfg
/etc/nagios3/apache2.conf
/etc/nagios3/commands.cfg
/etc/nagios3/conf.d/generic-passive-service.cfg
/etc/nagios3/conf.d/hostgroups.cfg
/etc/nagios3/conf.d/timeperiods.cfg
/etc/nagios3/conf.d/generic-host.cfg
/etc/nagios3/conf.d/services.cfg
/etc/nagios3/conf.d/generic-service.cfg
/etc/nagios3/conf.d/hosts.cfg
/etc/nagios3/conf.d/contacts.cfg
/etc/nagios3/nagios.cfg
/etc/nagios3/resource.cfg

kus

  • generic-* - mallid (ingl. k. template), mis aitavad lühemalt välja kirjutada objektide kirjeldusi

Kontrollprogrammide kasutamine

Nagiosega tuleb kaasa suur hulk kontrollprogramme pakettidena nagios-plugins-standard ja nagios-plugins-basic mida kasutavad kontrollkäsud, nt

# find /usr/lib/nagios/plugins -type f | head -n 5
/usr/lib/nagios/plugins/check_dig
/usr/lib/nagios/plugins/check_overcr
/usr/lib/nagios/plugins/check_ntp_time
/usr/lib/nagios/plugins/check_disk
/usr/lib/nagios/plugins/check_hpjd

Kontrollkäsud on vaikimisi kirjeldatud kataloogis /etc/nagios-plugins/config olevates failides, nt

# find  /etc/nagios-plugins/config -type f | head -n 5
/etc/nagios-plugins/config/news.cfg
/etc/nagios-plugins/config/mail.cfg
/etc/nagios-plugins/config/load.cfg
/etc/nagios-plugins/config/games.cfg
/etc/nagios-plugins/config/disk-smb.cfg

Praktiliselt alati on tarvis lisaks ise juurde kirjeldada antud kasutusjuhtumile iseloomulikke kontrollkäske, neid võiks teha nt failis /etc/nagios-plugins/config-custom/commands.cfg

define command {
  command_name    check_dig_soa_norecurse
  command_line    /usr/lib/nagios/plugins/check_dig -l '$ARG1$' -T SOA -H '$ARG2$' -a '$ARG3$' -A "+norecurse"
}

define command {
  command_name    check_dig_soa_recurse
  command_line    /usr/lib/nagios/plugins/check_dig -l '$ARG1$' -T SOA -H '$ARG2$' -a '$ARG3$' -A "+recurse"
}

define command {
  command_name    check_ldap_3
  command_line    /usr/lib/nagios/plugins/check_ldap -H '$HOSTADDRESS$' -b '$ARG1$' -3
       }

define command {
  command_name    check_pgsql_auul
  command_line    /usr/lib/nagios/plugins/check_pgsql -H '$HOSTADDRESS$' -d $ARG1$ -l $ARG2$ -p $USER3$
}

define command {
  command_name    check_http_string
  command_line    /usr/lib/nagios/plugins/check_http -H $ARG1$ -u $ARG2$ -w $ARG3$ -c $ARG4$ \
    -t $ARG5$ -s $ARG6$ -p $ARG7$
}

define command {
  command_name    check_https_string
  command_line    /usr/lib/nagios/plugins/check_http -H $ARG1$ -u $ARG2$ -w $ARG3$ -c $ARG4$ \
    -t $ARG5$ -s $ARG6$ -p $ARG7$ -S
}


NRPE - Nagios Remote Plugin Execution

NRPE juhtimiseks tuleb Nagiose arvutisse paigutada nrpe lisa

# apt-get install nagios-nrpe-plugin

NRPE abil jälgitavate arvutite seadistamise on kirjeldatud tekstis Debiani NRPE agendi kasutamine.

NagiosGrapher

NagiosGrapher https://www.netways.org/wiki/grapher

TODO

Sissejuhatus

NRPE (Nagios Remote Plugin Executor) tehnika võimaldab Nagiose monitooringu serveril käivitada üle võrgu jälgitavates serverites Nagiose NRPE agendi vahendusel Nagiose lisasid (ingl. k plugin). See on üks võimalus koguda andmeid teiste arvutite kohta ja sobiv just operatsioonisüsteemi omaduste (nt failisüsteemi täituvus, arvuti load jms) jälgimiseks mitte niivõrd teenuste jälgimiseks.

NRPE agendi paigaldamine

NRPE agendi paigaldamiseks tuleb öelda

 # apt-get install nagios-nrpe-server nagios-plugins nagios-plugins-basic nagios-plugins-standard

Seejärel tuleb muuta sobivalt seadistusfailide /etc/default/nagios-nrpe-server ja /etc/nagios/nrpe.cfg sisu.

NRPE kasutamine

NRPE kasutamiseks peab seadistusfailis muutma tavaliselt vähemalt kahte parameetrit

  • kirjeldama monitooringualused objektid
  • lubama Nagiose monitooringuserveri aadressilt NRPE agendi poole pöörduda

Selleks tuleb leida üles sarnased kohad ja muuta sobivaks, nt

 allowed_hosts=127.0.0.1,192.168.5.10
 ..
 command[check_disk1]=/usr/lib/nagios/plugins/check_disk -w 20 -c 10 -p /dev/hda1

Käivitamiseks tuleb öelda

 # /etc/init.d/nagios-nrpe-server

NRPE agendi käivitumise üheks tunnuseks on, et kuulataks pordil 5666

 # netstat -an | grep 5666
 *.5666               *.*                0      0 49152      0 LISTEN

Tulemusena peab saama Nagiose monitooringu arvutist pöördudes saama sarnase vastuse

 # /usr/lib/nagios/plugins/check_nrpe -H 192.168.5.89 -c check_disk1
 DISK OK - free space: / 4387 MB (13% inode=85%);| /=27564MB;;29046;0;32274

Seejärel saab Nagiose monitooringuarvutisse seadistada tavapärasel viisil teenuse kontrolli

define service{
  use                             generic-service
  host_name                  loomdb
  service_description             / usage
  check_command                   check_nrpe_1arg!check_disk1
}

SSL kasutamine

Vaikimisi kasutab Debian Lenny NRPE andmevahetuse turvamiseks SSL'i, mida saab kontrollida seadistusfailist /etc/default/nagios-nrpe-server parameetriga

#DAEMON_OPTS="--no-ssl"

Kasulikud lisamaterjalid

Sissejuhatus

NSCA (Nagios Service Check Acceptor, ingl. k. Nagiose teenuse kontrolli vastuvõtja) võimadab korraldada nn passiivsed kontrolle.

NSCA paigaldamine

Nii Nagiose serverisse kui kontrollitavasse arvutisse tuleb paigaldada nsca pakett öeldes

 # apt-get install nsca

Nagiose serveri arvutis tuleb käivitada nsca deemon, mida juhib seadistusfail /etc/nsca.cfg kus on oluline veenduda, et sisaldub sobiva väärtusega command_file parameeter ja vajadusel ka debug seada, nt nii

 debug=1
 command_file=/var/lib/nagios3/rw/nagios.cmd

Kontrollitavast arvutist saadetakse programmiga send_nsca teated Nagiose NSCA deemonile

 $ echo -e "backup.loomaaed.tartu.ee\tbackup\t0\backup" | send_nsca -H nagios.loomaaed.tartu.ee -p 5667

Lisaks tuleb Nagiose serveris kirjeldada passiivsed kontrollid, nt failis /etc/nagios3/conf.d/services_nagios2.cfg võiks sisaldud sektsioon

 define service{
       hostgroup_name                  backup-serverid
       service_description             backup
       check_command                   check_dummy!0
       use                             generic-service
       notification_interval           0 ; set > 0 if you want to be renotified
 }

ning check_dummy kontrolli kirjeldamiseks sobib kasutada failis /etc/nagios3/commands.cfg

 define command{
       command_name check_dummy
       command_line $USER1$/check_dummy $ARG1$
 }

Õnnestumisel võiks Nagiose /var/log/syslog'i tekkida

 Oct 22 19:51:41 fs nsca[15318]: Connection from 192.168.206.3 port 52141
 Oct 22 19:51:41 fs nsca[15318]: Handling the connection...
 Oct 22 19:51:42 fs nsca[15318]: SERVICE CHECK -> Host Name: 'backup.loomaaed.tartu.ee', Service Description: 'backup', Return Code: '0', Output: 'backup'
 Oct 22 19:51:42 fs nsca[15318]: End of connection...
 Oct 22 19:51:42 fs nagios3: EXTERNAL COMMAND: PROCESS_SERVICE_CHECK_RESULT;backup.loomaaed.tartu.ee;backup;0;backup
 Oct 22 19:51:48 fs nagios3: PASSIVE SERVICE CHECK: backup.loomaaed.tartu.ee;backup;0;backup

nsca_send jaoks võiks sisendi konstrueerida mingit protseduuri sooritav skript oma töö lõpus ise, aga kui kasutatakse nagiose lisasid (mis tuleb siis paigaldada paigaldades paketi nagios-plugins-basic), siis võiks teisendada lisa väljundi nt selline skript

 #!/bin/bash
 
 CDISK=`/usr/lib/nagios/plugins/check_disk -c 15% -p / -c 15% -p /data/backup -c 15% -p /data/postgresql`;
 CDISK=`echo $CDISK | awk {' print $2'}`
 
 if test "$CDISK" = 'OK'; then
         code=0
 else
         code=2
 
 fi
 
 echo -e "backup.loomaaed.tartu.ee\tdisk\t$code\tdisk" | send_nsca -H nagios.loomaaed.tartu.ee -p 5667