Nagios: Difference between revisions

From ICO wiki
Jump to navigationJump to search
No edit summary
No edit summary
Line 22: Line 22:
2002 annab Galstad projektile uue nime "Nagios", et vältida võimalikke vaidlusi seoses kaubamärgiga.<br />
2002 annab Galstad projektile uue nime "Nagios", et vältida võimalikke vaidlusi seoses kaubamärgiga.<br />
2007 loob Galstad ettevõtte Nagios Enterprises LLC, et pakkuda Nagiosega seotud konsultatsiooni ja spetsiaalseid arendusi. Vahepealsetel aastatel saadakse ka mitmeid auhindu ja järjepidevat tunnustust.<br />
2007 loob Galstad ettevõtte Nagios Enterprises LLC, et pakkuda Nagiosega seotud konsultatsiooni ja spetsiaalseid arendusi. Vahepealsetel aastatel saadakse ka mitmeid auhindu ja järjepidevat tunnustust.<br />
2009 Nagios Enterprises annab välja esimese Nagiosel baseeruva tasulise toote. Hiljem samal aastal nimetatakse Nagios ümber Nagios Core-ks.<br /><br />
2009 Nagios Enterprises annab välja esimese Nagiosel baseeruva tasulise toote. Hiljem samal aastal nimetatakse Nagios ümber Nagios Core-ks.<br />


Vaata täpsemat ajalugu <a href="http://www.nagios.org/about/history">siin</a>.
Täpsem ajalugu http://www.nagios.org/about/history


==Versioonid==
==Versioonid==
Line 32: Line 32:
NRPE 2.13<br />
NRPE 2.13<br />
Ubuntu Server 11.10 64bit<br />
Ubuntu Server 11.10 64bit<br />
<br />
Nagios Core muudatused http://www.nagios.org/projects/nagioscore/history/core-3x
Nagios Core muudatused asuvad <a href="http://www.nagios.org/projects/nagioscore/history/core-3x">siin</a>.


==Ülesande püstitus==
==Ülesande püstitus==
Line 59: Line 58:
===Paigaldame Monitooringu serverisse Nagios Core===
===Paigaldame Monitooringu serverisse Nagios Core===
*Eeldused: töötav e-posti server, mis suudab kirju saata.
*Eeldused: töötav e-posti server, mis suudab kirju saata.
1. Siseneme monitooringu serverisse root kasutaja õigustega.
1. Siseneme monitooringu serverisse root kasutaja õigustega.</ br>
2. Paigaldame paketid apache2, build-essential, libapache2-mod-php5, libgd2-xpm-dev
2. Paigaldame paketid apache2, build-essential, libapache2-mod-php5, libgd2-xpm-dev
<pre>
<pre>
Line 90: Line 89:
make install
make install
</pre>
</pre>
*Võimalik, et make install lõppeb järgmiste vigadega (hetkel ignoreerime neid):
*Võimalik, et make install lõppeb järgmiste vigadega (hetkel ignoreerime neid): make[1]: *** [install] Error 1
make[1]: *** [install] Error 1
make: *** [install] Error 2 ...ja jätkame
make: *** [install] Error 2
..ja jätkame
<pre>
<pre>
make install-init
make install-init
Line 99: Line 96:
make install-commandmode
make install-commandmode
</pre>
</pre>
7. Muudame konfiguratsiooni selliselt, et teated hakkasid tulema soovitud aadressile.
7. Muudame konfiguratsiooni selliselt, et teated hakkaksid tulema soovitud aadressile.
<pre>
<pre>
nano /usr/local/nagios/etc/objects/contacts.cfg
nano /usr/local/nagios/etc/objects/contacts.cfg
</pre>
</pre>
sisestame nagiosadmin kontakt-aadressiks oma e-posti aadressi, näiteks:  
*sisestame nagiosadmin kontakt-aadressiks oma e-posti aadressi, näiteks: username@localhost
username@localhost


8. Seadistame veebiserveri nii, et saaksime Nagiose veebiliidesele ligi. Teeme veebiliidese admin-kasutaja ja määrame talle parooli. Loeme veebiserveri konfiguratsioonifaili uuesti sisse.
8. Seadistame veebiserveri nii, et saaksime Nagiose veebiliidesele ligi. Teeme veebiliidese admin-kasutaja ja määrame talle parooli. Loeme veebiserveri konfiguratsioonifaili uuesti sisse.
Line 160: Line 156:
</pre>
</pre>


===Jälgitava serveri seadistamine===
===Paigaldame jälgitavasse serverisse Nagiose pluginad ja NRPE===
Paigaldame jälgitavasse serverisse Nagiose pluginad ja NRPE teenuse.
Paigaldame jälgitavasse serverisse Nagiose pluginad ja NRPE teenuse.


Line 178: Line 174:
<pre>
<pre>
cd
cd
wget http://prdownloads.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-
wget http://prdownloads.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.15.tar.gz
 
1.4.15.tar.gz
tar xzf nagios-plugins-1.4.15.tar.gz
tar xzf nagios-plugins-1.4.15.tar.gz
cd nagios-plugins-1.4.15/
cd nagios-plugins-1.4.15/
Line 205: Line 199:
make
make
</pre>
</pre>
7. Paigaldame NRPE plugina (testimiseks), daemoni ja konfiguratsioonifailide näidised  
7. Paigaldame NRPE plugina (testimiseks), daemoni ja konfiguratsioonifailide näidised ja muudame ta xinetd teenuseks.
 
ja muudame ta xinetd teenuseks.
<pre>
<pre>
make install-plugin
make install-plugin
Line 218: Line 210:
nano /etc/xinetd.d/nrpe
nano /etc/xinetd.d/nrpe
</pre>
</pre>
lisame reale:
*lisame reale:
<pre>
<pre>
only_from = 127.0.0.1 <minu_monitooringuserveri_ip_address>
only_from = 127.0.0.1 <minu_monitooringuserveri_ip_address>
</pre>
</pre>
9. Lisame NRPE teenuse services faili, sisestades järgmise rea:
9. Lisame NRPE teenuse services faili:
<pre>
<pre>
nano /etc/services
nano /etc/services
</pre>
*Sisestame rea:
</pre>
</pre>
nrpe 5666/tcp # NRPE
nrpe 5666/tcp # NRPE
 
</pre>
10. Restardime xinetd teenuse.
10. Restardime xinetd teenuse.
<pre>
<pre>
Line 237: Line 231:
netstat -at | grep nrpe
netstat -at | grep nrpe
</pre>
</pre>
väljund peaks välja nägema umbes selline:
*väljund peaks välja nägema umbes selline:
tcp 0 0 *:nrpe *:* LISTEN
tcp 0 0 *:nrpe *:* LISTEN


Line 244: Line 238:
/usr/local/nagios/libexec/check_nrpe -H localhost
/usr/local/nagios/libexec/check_nrpe -H localhost
</pre>
</pre>
Kui töötab, siis peaks vastus olema selline:  
*Kui töötab, siis peaks vastus olema selline:  
NRPE v2.13
NRPE v2.13


14. Lisame iptables-isse vastava rea, et NRPE daemon pääseks masinale ligi ja  
14. Lisame iptables-isse vastava rea, et NRPE daemon pääseks masinale ligi ja salvestame selle faili.
 
salvestame selle faili.
<pre>
<pre>
iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 5666 -j ACCEPT
iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 5666 -j ACCEPT
Line 256: Line 248:




===Paigaldame monitooringu serverisse NRPE===
===Paigaldame monitooringu serverisse Nagiose pluginad ja NRPE===
1. Sikutame NRPE alla ja paigaldame
1. Sikutame NRPE alla ja paigaldame

Revision as of 20:43, 12 December 2011

vana artikkel on teise nime all Nagios 3.2 Risto Bristol AK31

See artikkel on pooleli

Nagios Core ja NRPE

viimati muudetud 12.12.2011

Autor

Risto Bristol

Varem samal teemal

Kaks aastat tagasi kirjutas samal teemal referaadi Martin Kiigemaa. Tema töö asub siin Nagios 3.2. Soovitan sellega vähemalt põgusalt tutvuda, enne kui minu tööga edasi lähete.

Sissejuhatus

Nagios on serverite ja teiste võrguseadmete jälgimise tarkvara, mis saadab administraatoritele tõrgetest automaatteateid. Nagiosega saab jälgida teenuste olekut ja koormust (näiteks SSH, HTTP, sisselogitud kasutajate arv, ketta kasutus, CPU koormus, andmebaaside seisukord jne). Nagios kasutab pluginate ja lisade süsteemi, mis võimaldab vajadusel funktsioone juurde programmeerida. Vabalt saadavate lisade hulk on märkimisväärne. Kui mõnest võimalusest puudust tunnete, siis tasub sellekohast pluginat kõigepealt internetist otsida.

Nagiose ajalugu

1996 loob Ethan Galstad MS-DOS programmi Novell Netware serverite jälgimiseks.
1998 alustab Galstad uue süsteemi loomist, mis töötab Linuxi peal.
1999 avaldab ta Open Source projekti "NetSaint".
2002 annab Galstad projektile uue nime "Nagios", et vältida võimalikke vaidlusi seoses kaubamärgiga.
2007 loob Galstad ettevõtte Nagios Enterprises LLC, et pakkuda Nagiosega seotud konsultatsiooni ja spetsiaalseid arendusi. Vahepealsetel aastatel saadakse ka mitmeid auhindu ja järjepidevat tunnustust.
2009 Nagios Enterprises annab välja esimese Nagiosel baseeruva tasulise toote. Hiljem samal aastal nimetatakse Nagios ümber Nagios Core-ks.

Täpsem ajalugu http://www.nagios.org/about/history

Versioonid

Juhendi kirjutamisel on kasutatud versioone:
Nagios Core 3.3.1
Nagios Plugins 1.4.15
NRPE 2.13
Ubuntu Server 11.10 64bit
Nagios Core muudatused http://www.nagios.org/projects/nagioscore/history/core-3x

Ülesande püstitus

Paigaldada Ubuntu serverisse Nagios Core monitooringu server ja jälgida teist Ubuntu serverit kasutades NRPE-d.

Ülesande täitmise eeldused

  • Linux või Unix OS, millel on C kompilaatori tugi
  • Juurkasutaja õigused serverites
  • TCP/IP protokollide tugi – enamiku rakenduste kontroll käib läbi TCP/IP
  • Veebiserver (soovituslik Apache)
  • Thomas Boutell’s gd library versioon 1.6.3 või uuem, mis on vajalik „statusmap” ja „trends CGI” liideste tööks
  • Algteadmised Linux-ist
  • Oskus töötada käsurealt
  • Installitud postfix

Nagiose paigaldamine

Paigaldamiseks proovisin kahte erinevat viisi:

  • Apt-get
  • Ise kompileeritud

Minu arvamuse kohaselt on "production" versiooniks mõistlik Nagios Core ise kokku kompileerida. Apt-iga paigaldatakse täna versioon 3.2.3-3. Lisaks installeerub Nagiose Core pakk soovituslikest erinevate seadistustega (näiteks installatsiooni kaustad, command grupp, kaustaõigused, teenuse nimi). Selleks, et uuendada tarkvara versioonile 3.3.1 tuleb muuta ./configure skripti parameetreid nii, et need vastaksid meie seadistustele. See osutub aga küllalt keeruliseks ja aeganõudvaks. Samuti tuleb ebastandardseid seadistusi arvestada pluginate ja lisade paigaldamisel. Nagios Core põhifunktsioonidega tutvumiseks sobib Apt-get paigaldus paremini, sest seda on mõnevõrra lihtsam ellu viia.

Hetkel jätkame ise kompileeritud versiooni paigaldamisega ja hiljem jõuame ka apt-get paigaldusjuhendini.

Paigaldame Monitooringu serverisse Nagios Core

  • Eeldused: töötav e-posti server, mis suudab kirju saata.

1. Siseneme monitooringu serverisse root kasutaja õigustega.</ br> 2. Paigaldame paketid apache2, build-essential, libapache2-mod-php5, libgd2-xpm-dev

apt-get -y install apache2
apt-get -y install build-essential
apt-get -y install libapache2-mod-php5
apt-get -y install libgd2-xpm-dev

3. Loome nagiose teenuse jaoks kasutaja ja määrame talle parooli.

useradd -m -s /bin/bash nagios
passwd nagios

4. Loome uue grupi, et veebiliidese kaudu saaks ka käsklusi saata.

groupadd nagcmd
usermod -a -G nagcmd nagios
usermod -a -G nagcmd www-data

5. Laeme alla Nagios Core 3.3.1 ja pakime lahti.

wget http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-3.3.1.tar.gz
tar xzf nagios-3.3.1.tar.gz

6. Käivitame paigaldusskripti, nii et command group oleks varem loodud nagcmd.

cd nagios
./configure --with-command-group=nagcmd
make all
make install
  • Võimalik, et make install lõppeb järgmiste vigadega (hetkel ignoreerime neid): make[1]: *** [install] Error 1

make: *** [install] Error 2 ...ja jätkame

make install-init
make install-config
make install-commandmode

7. Muudame konfiguratsiooni selliselt, et teated hakkaksid tulema soovitud aadressile.

nano /usr/local/nagios/etc/objects/contacts.cfg
  • sisestame nagiosadmin kontakt-aadressiks oma e-posti aadressi, näiteks: username@localhost

8. Seadistame veebiserveri nii, et saaksime Nagiose veebiliidesele ligi. Teeme veebiliidese admin-kasutaja ja määrame talle parooli. Loeme veebiserveri konfiguratsioonifaili uuesti sisse.

make install-webconf
htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
service apache2 reload

9. Tõmbame ja paigaldame pluginad. Kõigepealt väljume kaustast "nagios"

cd ..
wget http://prdownloads.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.15.tar.gz
tar xzf nagios-plugins-1.4.15.tar.gz
cd nagios-plugins-1.4.15/
./configure --with-nagios-user=nagios --with-nagios-group=nagios
make
make install

10. Testime konfiguratsioonifaili.

/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
  • Võimalik, et saame sellise vea: Error in configuration file '/usr/local/nagios/etc/nagios.cfg' - Line 465 (Check result path is not a valid directory) Error processing main config file!
  • Siit selgub, et millegipärast puuduvad kataloogis /usr/local/nagios/var/ kataloogid spool/checkresults
  • Loome puuduvad kataloogid ja määrame omaniku ja grupi
cd /usr/local/nagios/var/
mkdir -p spool/checkresults
chown -R nagiso:nagcmd spool

11. Käivitame Nagiose ja muudame ta automaatselt käivitatavaks serveri startimisel.

service nagios start
  • Võimalik, et saame järgmise vea: Starting nagios:touch: cannot touch `/usr/local/nagios/var/nagios.log': Permission denied touch: cannot touch `/usr/local/nagios/var/retention.dat': Permission denied done.
  • Seega paneme õigused paika.
cd /usr/local/
chown -R nagios:nagcmd nagios
  • ja jätkame sealt kus pooleli jäime.
service nagios start
ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios

12. Avame veebiliidese http://localhost/nagios või http://"ip-aadress"/nagios ja sisestame kasutaja nagiosadmin ning vastava parooli. Proovime veebiliidese kaudu saata Nagiose poole mõne käsu.

  • Kui me me saame järgmise veateate: Error: Could not stat() command file '/usr/local/nagios/var/rw/nagios.cmd'!
  • Siis selle parandamiseks proovime järgmist:
cd /usr/local/
chgrp -R nagcmd nagios
dpkg-statoverride --update --add nagios www-data 2710 /usr/local/nagios/var/rw
dpkg-statoverride --update --add nagios nagios 751 /usr/local/nagios
service nagios restart

Paigaldame jälgitavasse serverisse Nagiose pluginad ja NRPE

Paigaldame jälgitavasse serverisse Nagiose pluginad ja NRPE teenuse.

1. Siseneme juurkasutaja õigustes. Loome nagiose jaoks kasutaja.

useradd nagios
passwd nagios

2. Kui kompileerimiseks vajalikud vidinad puuduvad, siis paigaldame need.

apt-get -y install build-essential
apt-get -y install libapache2-mod-php5
apt-get -y install libgd2-xpm-dev
apt-get -y install libssl-dev

3. Paigaldame Nagiose pluginad.

cd
wget http://prdownloads.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.15.tar.gz
tar xzf nagios-plugins-1.4.15.tar.gz
cd nagios-plugins-1.4.15/
./configure
make
make install

4. Paneme paika õigused.

chown nagios:nagios /usr/local/nagios
chown -R nagios:nagios /usr/local/nagios/libexec

5. Paigaldame xinetd (kui seda pole).

apt-get install xinetd

6. Paigaldame NRPE, ilma ssl toeta.

cd
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.13.tar.gz
tar xzf nrpe-2.13.tar.gz
cd nrpe-2.13/
./configure -disable-ssl
make

7. Paigaldame NRPE plugina (testimiseks), daemoni ja konfiguratsioonifailide näidised ja muudame ta xinetd teenuseks.

make install-plugin
make install-daemon
make install-daemon-config
make install-xinetd

8. Lisame monitooringuserveri ip aadressi lubatud ip-de nimekirja.

nano /etc/xinetd.d/nrpe
  • lisame reale:
only_from = 127.0.0.1 <minu_monitooringuserveri_ip_address>

9. Lisame NRPE teenuse services faili:

nano /etc/services
  • Sisestame rea:

nrpe 5666/tcp # NRPE

10. Restardime xinetd teenuse.

service xinetd stop
service xinetd start xinetd

11. Kontrollime, kas daemon töötab xinetd all.

netstat -at | grep nrpe
  • väljund peaks välja nägema umbes selline:

tcp 0 0 *:nrpe *:* LISTEN

12. Kontrollime, kas NRPE daemon töötab

/usr/local/nagios/libexec/check_nrpe -H localhost
  • Kui töötab, siis peaks vastus olema selline:

NRPE v2.13

14. Lisame iptables-isse vastava rea, et NRPE daemon pääseks masinale ligi ja salvestame selle faili.

iptables -A INPUT -p tcp -d 0/0 -s 0/0 --dport 5666 -j ACCEPT
iptables-save


Paigaldame monitooringu serverisse Nagiose pluginad ja NRPE

1. Sikutame NRPE alla ja paigaldame