Kako da Nagios nadgleda Linux?

Dodavanje CentOS 8 Linux-a hosta Nagiosu za monitoring.

Kako da dodamo linux klijent u Nagios Core?

Prvo ćemo morati da instaliramo NRPE plugin u Linux klijent mašinu da bi nagios mogao da komunicira i preuzme kakvo je zdravlje te mašine.

Za ovaj primer koristiću novi podignut linux koji će da mi bude klijent za nadgledanje preko Nagios Core. Na ovom linku možete da pogledate kako da uradite instalaciju CentOS 8.

1. Instaliramo repositorijum

dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm

Epel repositorijum

dnf install dnf-utils http://rpms.remirepo.net/enterprise/remi-release-8.rpm

remi repositorijum

2. Instaliramo NRPE plugine

dnf install nrpe nagios-plugins

 

Instalacija nagios nrpe plugina

dnf install nagios-plugins*

Instalacija Nrpe Plugina

3. Firewall port

Otvorimo portove na firewall kako bi Nagios mogao da pristupi Linux mašini i preuzme podatke.

firewall-cmd ‐‐permanent ‐‐add-port=5666/tcp

firewall-cmd ‐‐reload

Otvaranje firewall porta 5666

4. Pokrećemo i omogućimo NRPE plugin da se podiže i pri svakom restartu mašine.

systemctl enable nrpe.service

systemctl start nrpe.service

Pokretanje i omogucavanje NRPE plugina

5. Konfiguracioni fajl NRPE plugina

Moramo sada u konfiguracionom fajl nrpe.cfg dodati gde se nalazi naš nagios core server. Kada upišemo IP addresu Nagios Core servera u nrpe.cfg Linux klijent će znati da sa te adrese po portu 5666 ga pita nagios i on će da odgovori.

cd /etc/nagios

nano nrpe.cfg

NRPE konfiguracioni fajl

Nadjete ovu liniju koda ispod i dodate ip adresu od nagios core servera u mom primeru sam dodao 192.168.100.132

allowed_host=127.0.0.1,192.168.100.132

Kada dodate ip adresu u allowed_host idite dole sve dok ne dodjete do dela gde su ovih pet komandi.

command[check_users]=/usr/lib64/nagios/plugins/check_users -w 5 -c 10
command[check_load]=/usr/lib64/nagios/plugins/check_load -r -w .15,.10,.05 -c .30,.25,.20
command[check_hda1]=/usr/lib64/nagios/plugins/check_disk -w 20% -c 10% -p /dev/hda1
command[check_zombie_procs]=/usr/lib64/nagios/plugins/check_procs -w 5 -c 10 -s Z
command[check_total_procs]=/usr/lib64/nagios/plugins/check_procs -w 150 -c 200

Ovde treba napraviti jednu ispavku što se tiče nadgledanja sda1 particije. Tamo gde piše hdal1 promeniti u sdal1. Ovako treba da izgledaju ovih pet komandi.

command[check_users]=/usr/lib64/nagios/plugins/check_users -w 5 -c 10
command[check_load]=/usr/lib64/nagios/plugins/check_load -r -w .15,.10,.05 -c .30,.25,.20
command[check_sda1]=/usr/lib64/nagios/plugins/check_disk -w 20% -c 10% -p /dev/sda1
command[check_zombie_procs]=/usr/lib64/nagios/plugins/check_procs -w 5 -c 10 -s Z
command[check_total_procs]=/usr/lib64/nagios/plugins/check_procs -w 150 -c 200

Snimimo poromene koje smo izvršili u fajlu nrpe.cfg

Sada smo spremni da dodamo u Nagios Core server configuracioni fajl od Linux klijenta. Taj fajl je potreban da bi Nagios znao sve o Linux klijentu, gde se nalazi i šta da ga pita. Da bi vam blo lakše zapamtite ove delove iz predhodnog fajla koji ste modifikovali Nrpe.cfg jer ti delovi se dodaju u servise definition i govore šta se sve prati od servisa na Linux klijent mašini. Te delove ćemo iskoristiti da kažemo nagiosu šta da traži od linux klijenta.

[check_users]
[check_load]
[check_sda1]
[check_zombie_procs]
[check_total_procs]

6. Dodavanje klijenta u Nagios Core konfiguracioni fajl.

Ovaj deo se radi sada na Serveru gde smo podigili Nagios Core. Ulogujemo se na naš Nagios Core server moj je na adresi 192.168.100.132.

Treba da napravimo fajl sa extenzijom .cfg u folderu /usr/local/nagios/etc/objects

Druga opcija je ako nećete da napravite fajl možete i da koristite već postojeći kao template localhost.cfg samo ga kopirajte i promenite mu ime. Posle treba da modifikujete taj fajl da bi NRPE radio svoj posao kako treba. U ovom primeru ja pravim taj fajl ispočetka jer će biti lakše da ne dodje do neke zabune. Posle možete da uporedite localhost.cfg i taj moj fajl da vidite šta bi sve moralo da se modifikuje.

cd /usr/local/nagios/etc/objects/

nano linux-test.cfg

Dodavanje linux hosta u nagios

Kopirajte sledeće vrendosti u fajl i zamenite ih sa svojim. Najbitnije je da zamenite sledeće vrednostima vašim.

host_name – stavite na primer linux.server.com
Allias – napišite nesto vaše na primer Linux koji ima web servis
address – stavite adresu linux mašine koju želite da nagios prati moja adresa je 192.168.100.128

Dole kada dodjete do dela service definition (define service) tu ispratite sve kao sto  sam ja napravio jer je tu definisan onaj fajl nrpe.cfg što sam pomenuo da se zapamt izmedju onih [ ]. Ako kopirate sve ovo dole onda ne dirajte service defeniton sve ostavitekao što jeste samo zamenite host_name i ip adresu napišite od linux klijenta u mom slučaju je 192.168.100.128 linux klijent.

define host {

                                use                         linux-server
                                host_name         linux.test.com
                                alias                       Monitoring Linux test masine
                                address                192.168.100.128

}

###############################################################################
#
# SERVICE DEFINITIONS
#
###############################################################################

define service {
    use                     local-service
    host_name               linux.test.com
    service_description     Current Users
    check_command           check_nrpe!check_users

}

define service {
    use                     local-service
    host_name               linux.test.com
    service_description     Current Load
    check_command           check_nrpe!check_load

}

define service {
    use                     local-service
    host_name               linux.test.com
    service_description     Root Partition
    check_command           check_nrpe!check_sda1
}

define service {
    use                     local-service
    host_name               linux.test.com
    service_description     Tota
    check_command           check_nrpe!check_total_procs

}

define service {
    use                     local-service
    host_name               linux.test.com
    service_description     Zombi Process count
    check_command           check_nrpe!check_zombie_procs

}

Snimite ovaj fajl i sada imamo zapis o linux klijentu i Nagios će znati gde se nalazi.

7. Nagios Core i nagios.cfg fajl

Treba sada Nagios Core serveru u jedan fajl nagios.cfg da upišemo putanju ovog fajla linux-test.cfg, samo tako će nagios znati da treba da pogleda taj fajl i da vidi koje komande da izvši.

cd /usr/local/nagios/etc

vi nagios.cfg

Nagios konfiguracioni fajl

Nadjite ovu liniju ispod i odmah ispod nje dodajte i ovu putanju cfg_file=/usr/local/nagios/etc/objects/linux-test.cfg

# Definitions for monitoring the local (Linux) host
cfg_file=/usr/local/nagios/etc/objects/localhost.cfg

Prikaz slika ispod kako treba da izgleda.

putanja linux klijenta u nagios fajlu

Snimite ove promene sada.

Kada snimite ovaj fajl uradite na Nagios serveru onu proveru koja će da nam kaže da li imamo grešku.

/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

Ako vam nije pokazalo grešku uradite restart nagios servisa

systemctl restart nagios

ERROR – GREŠKA – Nagios CORE

Samo čisto radi vežbe da pokažem i kako to izgleda kada se pojavi greška.

U fajli /usr/local/nagios/etc/objects/linux-test.cfg dodaću neki deo koda na primer kod host definition napisacu host_definition. Ovo sada je nepravilan kod i nagios će da se buni. Najbitnije je da uradite proveru i da vam on izbaci gde je greška ili na kojoj liniji koda se nalazi problem. U slučaju ako uradite restart nagiosa a niste uradili proveru sa onom komandom nećete ga moći da pokrenete nagios a nećete ni znati gde vam je sada greška.

Uradimo sada proveru da vidimo da li je sve u redu i da li Nagios može da radi sa novim modifikacijama.

/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

greska kod nagios core servera

Kao što vidite prikazuje se greška čak vidimo da je problem u linx-test.cfg fajlu na liniji broj 4.

Sada samo vrratite sve kao i što je bilo u fajli koji ste izmenili i opet pokrenite komandu da vidite da li ima novih grešaka.

/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

Ukoliko je sve prošlo kako treba možemo da restartujemo nagios.

8. Logovanje na Nagios i videti da li se pokazuje klijent linux

Ulogujemo se sada na nagios da vidimo da li se pojavila naša linux mašina.

192.168.100.132/nagios

I kada klkenmo na Hosts videćemo linux.test.com i status UP

Nagios Core kontrolni panel

 

Dodali samo sada jedan Linux CentOS 8 klijent našem Nagios-u. Sledeće je da dodamo Windows klijent da ga nadgleda Nagios.

Related Posts