Kako da Nagios nadgleda Windows?

Nagios Core monitoring Windows mašine.

Imamo podignut Nagios core i pokazali smo kako da dodamo Linux klijent mašinu da je nagios prati.

Sada ćemo da uradimo isto to samo sa windows mašinom.

Da bi nagios pratio Windows mašinu potrebno je da se na windows-u instalira NSClinet++ koji će da komunicira sa Nagios Coere serverom i da mu da željene paratmetre koje nagios prati.

Prilikom testiranja ja sam isključio firewall na windows 10 klijentu.

1. Preuzimamo NSClinet++

Sa sajta nsclient preuzmemo fajl na windows. I pokrenemo ga. https://www.nsclient.org/download/

Preuyimanje NSClinet++

 

Kada ga pokrenemo kliknemo na Next

Instalacija nsclinet++

 

Sada idemo na generic.

Bireamo generic nsclinet++

 

Onda izaberemo Complete.

Iyabermo complete nsclinet++

 

U polje allowed host stavite adresu nagiosa, password ja sam stavio samo password, štikliramo Enable nsclient server (check_nt), štkliramo Enable NRPE (check_nrpe), i štikliramo dole Enable NSCA client i Enable Web server. Idemo onda na Next.

Podesavanja nsclinet++ za nagios

 

Kliknite na install

instalacija nsclinet ++

 

Kada se završi instalacija idite na finish.

2. Proverimo Servis NSClinet++

Treba da vidimo da li je servis posle instalacije pokrenut. Trebalo bi da se sam autormatski pokrenuo.

U windowsu pritisnemo WIN+r i otkucamo services.msc

windows servisi

 

Pronadjete NSClient++ Monitoring i treba da piše status running

Pronadjemo nsclinet servis

3. Testiramo da li radi plugin NSClinet++

Ulogujte se sada na Nagios server da testiramo da li radi NSClinet tako što ćemo da mu zatražimo uptime mašine.

cd /usr/local/nagios/libexec
./check_nt -H 192.168.100.129 -s password -p 12489 -v UPTIME

testiramo konekciju

 

Kada pokrenemo ovo dobićemo error pošto treba još neka podešavanja da uradimo na windowsu.

4. Podešavanje fajla nslicent.ini

Odemo u Windows mašinu i na putanji ispod nadjemo fajl nsclinet.ini i otvorimo ga u notepad editoru.

c:\Program Files\NSClient++

fajl nsclinet++

 

Pronadjemo sada nsclient.ini i otvorimo ga sa notepad editorom.

Svuda gde piše disabled promenite u enabled i snimite fajl.

nsclinet enabled modifikacija

 

Kada snimite promene na fajlu idite sada opet na servis nsclinet++ kao u delu broj 2 restartujte ga. Pronadjete NSClinet++ desni klik na njega i restart.

Restart nsclinet servisa

5. Testiramo da li radi NSClinet++ opet

Idemo sada opet na Nagios Core server da otkucamo opet komandu da proverimo da li nam radi NSClinet.

cd /usr/local/nagios/libexec
./check_nt -H 192.168.100.129 -s password -p 12489 -v UPTIME

Ja sam dobio da mi je mašina up već 57 minuta. Plugin radi sada treba da podesimo još neke fajlove na Nagios Core serveru kako bi on uspostavio komunikaciju sa Windows klijent mašinom.

Test plagina nsclinet

6. Dodavanje Windows cfg fajla u Nagios

Treba sada na nagiosu da napravimo konfiguracioni fajl od te windows mašine kako bi Nagios Core znao gde je i šta da je pita. Kopiraćemo već postojeći template za windows ili ako vam je lakše napravite novi fajl i kopirajte moje parametre.

cd /usr/local/nagios/etc/objects
cp windows.cfg windows10.cfg
vi windows10.cfg

Windows cfg fajl za nagios

 

Promeniti host_name da bude svuda isti, alias stavite nešto vaše, address od vaše windows mašine, service definition popunite delove ispod use isto kao i ja. Ako je lakše samo kopirajte sve što sam ja napisao dole i napravite novi dokument prekopirajte parametre i oabavezno zamenite host_name svuda isti, alias, address.

Imamo sada definisan Host a ispod toga imamo definisane servise. Neke delove sam izbrisao u fajlu tako da vas ne brine ako ih imate više nego ja. Ispod je primer mog windows10.cfg

###############################################################################
#
# HOST DEFINITIONS
#
###############################################################################

define host {

use                     windows-server
host_name               windows10.domen.com
alias                   Windows 10 masina
address                 192.168.100.129

}

###############################################################################
#
# HOST GROUP DEFINITIONS
#
###############################################################################

 

define hostgroup {

hostgroup_name          windows-servers
alias                   Windows Servers
}

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

 

define service {
host_name                       windows10.domen.com
service_description             CPU Usage
use                             generic-service
check_command                   check_nt!CPULOAD!-l 5,90,95
max_check_attempts              5
check_interval                  5
retry_interval                  1
check_period                    24×7
notification_interval           0
notification_period             24×7
notifications_enabled           1
contacts                        nagiosadmin
contact_groups                  admins

}

 

define service {
host_name                       windows10.domen.com
service_description             Drive C: Disk Usage
use                             generic-service
check_command                   check_nt!USEDDISKSPACE!-l C -w 90 -c 95
max_check_attempts              5
check_interval                  5
retry_interval                  1
check_period                    24×7
notification_interval           0
notification_period             24×7
notifications_enabled           1
contacts                        nagiosadmin
contact_groups                  admins

}

 

define service {

host_name                       windows10.domen.com
service_description             Memory Usage
use                             generic-service
check_command                   check_nt!MEMUSE!-w 90 -c 95
max_check_attempts              5
check_interval                  5
retry_interval                  1
check_period                    24×7
notification_interval           0
notification_period             24×7
notifications_enabled           1
contacts                        nagiosadmin
contact_groups                  admins

}

 

define service {

host_name                       windows10.domen.com
service_description             Page File Usage
use                             generic-service
check_command                   check_nt!COUNTER!-l “\\Paging File(_Total)\\% Usage”,”Paging File usage is %.2f %%” -w 90 -c 95
max_check_attempts              5
check_interval                  5
retry_interval                  1
check_period                    24×7
notification_interval           0
notification_period             24×7
notifications_enabled           1
contacts                        nagiosadmin
contact_groups                  admins

}

 

define service {

host_name                       windows10.domen.com
service_description             Uptime
use                             generic-service
check_command                   check_nt!UPTIME
max_check_attempts              5
check_interval                  5
retry_interval                  1
check_period                    24×7
notification_interval           0
notification_period             24×7
notifications_enabled           1
contacts                        nagiosadmin
contact_groups                  admins

}

##########
#Dodatna dva Servisa #
###########

define service {

use                     generic-service
host_name               windows10.domen.com
service_description     BitDefender AV servis
check_command           check_nt!SERVICESTATE!-d SHOWALL -l vsserv
max_check_attempts              5
check_interval                  5
retry_interval                  1
check_period                    24×7
notification_interval           0
notification_period             24×7
notifications_enabled           1
contacts                        nagiosadmin
contact_groups                  admins

}

 

define service {

use                     generic-service
host_name               windows10.domen.com
service_description     NSClient++ Version
check_command           check_nt!CLIENTVERSION
max_check_attempts              5
check_interval                  5
retry_interval                  1
check_period                    24×7
notification_interval           0
notification_period             24×7
notifications_enabled           1
contacts                        nagiosadmin
contact_groups                  admins

}

7. Dodavanje putanje Windows cfg fajla

Moramo sada da dodamo taj fajl što samo napravili u nagios konfiguracioni fajl da bi on znao gde da traži taj windwos klijent.

cd /usr/local/nagios/etc
vi nagios.cfg

Nagiso cfg fajl

 

Nadjemo linju koda # Definitions for monitoring a Windows machine i dodamo ispod kao na slici putanju gde se nalazi konfiguracioni fajl za windows klijenta koji Nagios Core treba da nadgleda.

cfg_file=/usr/local/nagios/etc/objects/windows10.cfg

dodavanje windows cfg putanje

8. Dodavanje komande u commands.cfg

Moramo da dodamo i kako nam ide šifra koju smo stavili prilikom instalacije NSClinet++ plugina za windows. U mom slučaju ja sam stavio password.

cd /usr/local/nagios/etc/objects/
vi commands.cfg

command cfg fajl

 

Pronadjete ovu liniju koda ispod i ubacite -s [vaša šifra] ispred -v

define command {

command_name    check_nt
command_line    $USER1$/check_nt -H $HOSTADDRESS$ -p 12489 -v $ARG1$ $ARG2$

}

command cfg ubacivanje sifre

9. Provera da li nagios Core ima Error

Treba sada da proverimo da li nam Nagios Core prikazuje neke greške jer smo radili dosta modifikaciju u cfg fajlovima. Možda neki od tih fajlova sadrži neku grešku koja nam je promakla.

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

Ukoliko je sve prošlo bez greške onda primenite restart Nagios Core servisa.

systemctl restart nagios

Sada se ulogujte na Nagios Core admin panel ip/nagios da proverite da li se windows mašina prikazala i da li su servisi počeli da zelene. Potrebno je do pet minuta da se sačeka kako bi se svi servisi javili.

Nagiso monitoring windowsa

 

Vidimo da je mašina windows10.domen.com dostupan. Na slici ispod ako kliknete na servise da pogledate videćemo da su i oni pozeleneli.

 

Ako primetite prvi servis mi je BitDefender AV. Kod vas ovaj servis će verovatno biti crven jer sam ja dodao da nadgledam taj kao poseban da mi je bitan. Time sam hteo da vam pokažem da možete vi koji god želite da stavite samo ideite u ondaj fajl windwos10.cfg i nadjite na delu gde piše Bit Defender AV primetićete da u jednoj liniji koda piše vsserv, tako se zove taj servise. Ako želite neki poseban da vi pratite samo idite u service.msc najdite servis pogledajte mu ime i zamenite sa vsserv.

Ukoliko se desi da imate problema probajte da ugasite na windows mašini firewall ako već niste.

Ovim smo pokazali kako da u Nagios Core serveru podesimo nadgledanje Windows klijenta.

Related Posts