Namestitev vtičnikov za nagios. Nagios namestitev in konfiguracija strežnika za spremljanje

Priljubljena rešitev za spremljanje, nagios vam omogoča implementacijo razširljivih sistemov. Konfiguracija za porazdeljene sisteme je dolgotrajen proces, v okviru članka bomo izvajali spremljanje ene storitve na oddaljenem gostitelju.

Konfiguracijsko delo se bo izvajalo na strežniku z operacijskim sistemom CentOS 7, bo odjemalec nrpe uporabljal tudi CentOS 7

Namestite vtičnik na odjemalcu nrpe in dovolite povezavo s strežnikom v njegovih nastavitvah.

Nagios namestitev in konfiguracija strežnika za spremljanje

Konfiguracijo začnemo na stroju, ki bo deloval kot strežnik nagios. Namestite potrebne pakete:

yum install -y wget httpd php gcc glibc glibc-common gd gd-devel naredi net-snmp razpakiraj

nagios deluje skozi Apache, zato je httpd na seznamu nameščenih paketov

Gremo v korenski imenik z začasnimi datotekami in vanj prenesemo najnovejše izdaje nagiosa in nagios-vtičnikov z uporabo wget

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

wget http://nagios-plugins.org/download/nagios-plugins-2.1.2.tar.gz

Ustvarite sistemskega uporabnika in skupino

Dodajanje uporabnika nagios v skupino nagcmd

usermod -a -G nagcmd nagios

usermod -a -G nagios,nagcmd apache

Ker uporabljamo CentOS, se httpd ne izvaja kot uporabnik www-data, ampak kot uporabnik apache

Če se želite izogniti navzkrižju pravic v prihodnosti, dodajte uporabnika apache v skupine nagios, nagcmd

Izvlecite vsebino prenesenega arhiva

tar -zxvf nagios-4.2.0.tar.gz

Pojdite v imenik z datotekami nagios

V prihodnosti bomo tako nagios kot nrpe namestili iz vira

./configure --with-command-group=nagcmd

Podajte skupino nagcmd kot možnost med sestavljanjem

Sestavljanje

naredite namestitveni ukazni način

Rekurzivno kopirajte imenik knjižnice v /usr/local na strežniku

cp -R contrib/eventhandlers /usr/local/nagios/libexec

Prav tako rekurzivno spreminjamo lastnika in skupino lastnika imenikov in datotek na nagiosu

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

Poskušamo zagnati in videti različico nagiosa, tako da določimo pot do glavne konfiguracijske datoteke

Zagonu dodajte nagios - sistem ga bo zagnal vsakič ob zagonu

systemctl omogoči nagios

Zagon storitve

Podobne operacije izvajamo tudi s spletnim strežnikom

Nastavite uporabniško geslo za nagios

S pomočjo htpasswd ustvarite datoteko, ki bo omejila dostop uporabniku nagiosadmin

htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin

Namestitev glavnega paketa je zdaj končana. Odpremo internetni brskalnik in v iskalno polje vnesemo ip-naslov strežnika, nato /nagios in vstopimo v spletni vmesnik

Nastavitev spremljanja storitev na oddaljenem gostitelju

Gremo na drugo strežniško napravo, ki bo delovala kot nagios odjemalec
Pojdite v imenik /tmp/

Odpakirajte nagios-plugins-2.1.2

tar -zxvf nagios-plugins-2.1.2

cd nagios-plugins-2.1.2

Prevajanje z uporabnikom in skupino nagios

./configure --with-command-user=nagios --with-nagios-group=nagios

Zdaj namestite vtičnik nrpe

Najprej dodatno namestite iz repozitorija openssl-devel, če je že nameščen, preskočite korak (paket mora biti prisoten tudi na strežniku nagios)

yum -y namestite openssl-devel

Namestite lahko tudi iz skladišča

yum namestite nagios-plugins-all nagios-plugins-nrpe

Če potrebujete novo različico, torej
Prenos paketa

wget http://sourceforge.net/projects/nagios/files/nrpe-2.x/nrpe-2.15/nrpe-2.15.tar.gz

Razpakirajte tar.gz

tar -zxvf nrpe-2.15.tar.gz

Sestavljanje na enak način kot prej

Pojdite na strežnik nagios

Poskušamo se povezati s strežnikom, ki je naveden za ključem -H naslov IP odjemalca

Povezava je zavrnjena in gremo na konfiguracijo vtičnika

Zaženemo nrpe na odjemalcu in dodamo storitev zagonu

Odprite glavno konfiguracijsko datoteko in podajte naslov IP strežnika kot vrednost v razdelku dovoljeni_gostitelji

mcedit /etc/nrpe/nrpe.cfg

dovoljeni_gostitelji = 10.11.27.11

Nazaj na strežnik

/usr/local/nagios/libexec/check_nrpe -H 10.11.27.44

Zdaj je naš poskus uspešen in vidimo različico nagios

Ponovno odprite glavno konfiguracijo

Odstranite oznako komentarja iz vrstice z cfg_dir(cfg_dir=/usr/local/nagios/etc/servers)

Ustvarite imenik in preklopite nanj

mkdir /usr/local/nagios/etc/servers

cd /usr/local/nagios/etc/servers

Določite gostitelje, ki bodo nadzorovani. Gostitelji imajo lahko poljubna imena, nagios bo videl vse datoteke s končnico cfg

Predpisujemo parametre gostitelja, pomen direktiv je razviden iz imena. Teh direktiv je lahko veliko več v primeru potrebe po natančnem prilagajanju spremljanja, tukaj upoštevamo osnovno delovno konfiguracijo

definiraj gostitelja (
uporabite strežnik linux
ime_gostitelja cenos11
alias samo nagios odjemalec
naslov 10.11.27.44
max_check_attempts 5
kontrolno_obdobje 24×7
interval_obvestila 30
Obdobje_obvestila 24×7

}

Dodajte konfiguracijo za storitev, ki jo spremljamo. Zdaj se omejimo na preverjanje prisotnosti pinga za gostitelja

{
uporabite generično storitev
ime_gostitelja cenos11
service_description PING
check_command check_ping!100.0.20%!500.0.50%
}

Uporabljen je bil ukaz check_command, izvleček iz priročnika v zvezi z njim pravi naslednje:

check_ping -H -w ,% -c ,%
[-p paketi] [-t časovna omejitev] [-4|-6]

V skladu s tem bomo ob izgubi 20% paketov prejeli opozorilo, z izgubo 50% - ALERT

Zaženite znova in se prepričajte, da ni napak

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

Ponovni zagon storitve

systemctl znova zaženi nagios

Gremo v spletni vmesnik in vidimo, da je tam prikazana storitev na oddaljenem gostitelju, ki ga spremljamo (v konfiguraciji, prikazani na posnetku zaslona, ​​je konfigurirano spremljanje številnih drugih virov). Konfiguracija nadzornega strežnika z osnovno funkcionalnostjo je zdaj končana.

Nastavitev ALERT-ov v nagiosu

Odprite glavno konfiguracijsko datoteko in po potrebi odstranite komentar iz vrstice cfg_file=/usr/local/nagios/etc/objects/contacts.cfg:

mcedit /usr/local/nagios/etc/nagios.cfg

V datoteki določimo kontaktni elektronski naslov za pošiljanje obvestil:

mcedit /usr/local/nagios/etc/objects/contacts.cfg

definiraj stik (
contact_name nagiosadmin
uporabite generični kontakt
alias Nagios Admin
E-naslov [email protected]

}

Ponovni zagon storitve

cyctemctl znova zaženi nagios

Uporabite lahko tudi dodatno programsko opremo, s katero lahko na primer pošiljate SMS sporočila OPOZORILO glede bistvenih storitev. Prejet je bil delujoč strežnik Nagios, namestitev in konfiguracija na tem je končana.

Za strežnike lahko namestite strežnik in odjemalca Nagios na isti računalnik, vendar je veliko lažje uporabiti drug paket, kot je .

Ta vodnik vam bo pomagal namestiti priljubljen odprtokodni sistem za spremljanje Nagios 4 na strežnik Ubuntu 14.04 ter izvesti osnovno konfiguracijo spremljanja virov gostitelja. Poleg tega vodnik prikazuje, kako nastaviti Nagios Remote Plugin Executor (NRPE) kot agenta na oddaljenih gostiteljih za spremljanje njihovih virov.

Sistem Nagios omogoča spremljanje strežniških virov in delovanja osnovnih storitev. Na splošno so sistemi za spremljanje bistveno orodje za vsako proizvodno okolje.

Opomba: Podoben vodnik za CentOS lahko najdete na .

Zahteve

  • Vnaprej konfiguriran strežnik Ubuntu 14.04.
  • Pravice superuporabnika (več podrobnosti -).
  • Vnaprej nameščen sklad LAMP (navodila za namestitev najdete).
  • zasebno omrežje; če vaš strežnik ne podpira zasebnega omrežja, preprosto zamenjajte reference na notranji naslov IP z zunanjim naslovom IP.

Namestitev Nagiosa 4

Ustvarjanje uporabnika in skupine Nagios

Ustvarite uporabnika in skupino za izvajanje procesa Nagios; v tem priročniku se uporabnik imenuje nagios, skupina pa nagcmd. Ustvarite jih in dodajte uporabnika v skupino.

sudo useradd nagios
sudo groupadd nagcmd
sudo usermod -a -G nagcmd nagios

Namestitev odvisnosti

Po tem morate namestiti nekaj razvojnih knjižnic za gradnjo Nagios Core iz vira in apache2-utils za prilagoditev vmesnika Nagios.

Posodobite seznam sistemskih paketov:

sudo apt-pridobi posodobitev

Namestite pakete:

sudo apt-get install build-essential libgd2-xpm-dev openssl libssl-dev xinetd apache2-utils unzip

Namestitev Nagios Core

Prenesite najnovejšo stabilno izdajo Nagios Core. Odprite stran za prenos spletnega mesta, kliknite Preskoči za prenos in prenesite povezavo do stabilne izdaje.

Opomba: Ta priročnik uporablja različico Nagiosa 4.1.1.

Prenesite paket v svoj domači imenik:

cd ~
curl -L -O https://assets.nagios.com/downloads/nagioscore/releases/nagios-4.1.1.tar.gz

Razpakirajte arhiv:

tar xvf nagios-*.tar.gz

Odprite nastali imenik:

Preden začnete graditi Nagios, morate konfigurirati sistem. Če želite Nagios konfigurirati tako, da podpira postfix (ki ga je mogoče namestiti z apt-get), dodajte --with-mail=/usr/sbin/sendmail v naslednji ukaz:

./configure --with-nagios-group=nagios --with-command-group=nagcmd

Prevedi Nagios:

Nato namestite Nagios, inicializacijske skripte in vzorčne konfiguracijske datoteke:

sudo naredi namestitev
sudo naredi namestitveni ukazni način
sudo naredi install-init
sudo naredi install-config
sudo /usr/bin/install -c -m 644 sample-config/httpd.conf /etc/apache2/sites-available/nagios.conf

Če želite izvajati zunanje ukaze prek spletnega vmesnika Nagios, morate dodati uporabnika www-data skupini nagcmd:

sudo usermod -G nagcmd www-data

Namestitev vtičnikov Nagios

Najnovejšo izdajo vtičnikov Nagios najdete na tej povezavi. Kopirajte povezavo do najnovejše stabilne izdaje in prenesite paket v svoj domači imenik.

Opomba: Ta priročnik uporablja vtičnike Nagios različice 2.1.1.

cd ~
curl -L -O http://nagios-plugins.org/download/nagios-plugins-2.1.1.tar.gz

Razpakirajte arhiv vtičnikov Nagios.

tar xvf nagios-plugins-*.tar.gz

Odprite nastali imenik:

cd nagios-plugins-*

Zaženite konfiguracijo vtičnikov Nagios, preden zgradite pakete.

./configure --with-nagios-user=nagios --with-nagios-group=nagios --with-openssl

Prevedi vtičnike Nagios:

Namestite nastali paket:

sudo naredi namestitev

namestitev NRPE

Odprite stran za prenos spletnega mesta, poiščite najnovejšo stabilno izdajo NRPE in jo naložite v svoj domači imenik.

Opomba: Ta priročnik uporablja NRPE 2.15.

cd ~
curl -L -O http://downloads.sourceforge.net/project/nagios/nrpe-2.x/nrpe-2.15/nrpe-2.15.tar.gz

Razpakirajte arhiv NRPE:

tar xvf nrpe-*.tar.gz

Preklopite v nastali imenik:

Če želite konfigurirati NRPE, zaženite ukaz:

./configure --enable-command-args --with-nagios-user=nagios --with-nagios-group=nagios --with-ssl=/usr/bin/openssl --with-ssl-lib=/usr /lib/x86_64-linux-gnu

Nato sestavite in namestite NRPE in skript xinetd:

naredi vse
sudo naredi namestitev
sudo naredi install-xinetd
sudo naredi install-daemon-config

Odprite zagonski skript xinetd v urejevalniku besedil:

sudo vi /etc/xinetd.d/nrpe

V vrstico only_from dodajte notranji naslov IP strežnika Nagios:

samo_od = 127.0.0.1 10.132.224.168

Opomba: Prosimo, vnesite svoj pravilen naslov IP.

Shranite in zaprite datoteko. Zdaj bo lahko samo strežnik Nagios komuniciral z NRPE.

Znova zaženi xinetd:

ponovni zagon storitve sudo xinetd

Namestitev Nagiosa 4 je bila uspešno zaključena. Zdaj moramo nastaviti sistem.

Nastavitev Nagiosa 4

Odprite glavno konfiguracijsko datoteko Nagios v urejevalniku besedil:

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

Poiščite in odkomentirajte naslednjo vrstico:

#cfg_dir=/usr/local/nagios/etc/servers

Shranite in zaprite datoteko.

Ustvarite imenik za shranjevanje konfiguracijskih datotek nadzorovanih strežnikov.

sudo mkdir /usr/local/nagios/etc/servers

Odprite konfiguracijsko datoteko stikov v urejevalniku besedil:

sudo vi /usr/local/nagios/etc/objects/contacts.cfg

Poiščite e-poštno direktivo in jo izpolnite s svojim e-poštnim naslovom.

E-naslov [email protected] ; <<***** CHANGE THIS TO YOUR EMAIL ADDRESS ******

Shranite in zaprite datoteko.

Konfiguriranje ukaza check_nrpe

V nastavitve Nagiosa dodajte nov ukaz:

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

Na konec datoteke dodajte naslednjo kodo:

definiraj ukaz (
ukaz_ime check_nrpe
ukazna_vrstica $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
}

Shranite in zaprite datoteko. Zdaj bi morali biti sposobni uporabiti ukaz check_nrpe pri definiranju strežnikov Nagios.

Nastavitev Apache

Omogočite modula za prepisovanje in cgi:

prepisovanje sudo a2enmod
sudo a2enmod cgi

Uporabite htpasswd, da ustvarite uporabnika z imenom nagiosadmin za dostop do spletnega vmesnika Nagios.

sudo htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin

Vnesite geslo. Zapomnite si te poverilnice, saj vam bodo prišle prav pri delu s spletnim vmesnikom Nagios.

Opomba: Če to uporabniško ime ni nagiosadmin, boste morali urediti datoteko /usr/local/nagios/etc/cgi.cfg in v vseh sklicah na nagiosadmin podati drugo uporabniško ime.

sudo ln -s /etc/apache2/sites-available/nagios.conf /etc/apache2/sites-enabled/

Sistem Nagios je zdaj pripravljen za delovanje. Ne pozabite znova zagnati Apache:

sudo storitev nagios start
sudo storitev apache2 znova zaženi

Če želite konfigurirati samodejni zagon Nagiosa, vnesite:

sudo ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios

Omejitev dostopa z naslovom IP (neobvezno)

Če želite omogočiti dostop samo do določenih naslovov IP, uredite konfiguracijo Apache:

sudo vi /etc/apache2/sites-available/nagios.conf

Poiščite in komentirajte naslednje vrstice:

naročilo dovoli, zavrni
Dovoli od vseh

Nato razkomentirajte naslednje vrstice in dodajte naslove IP ali obsege naslovov IP (ločene s presledkom), ki bodo imeli dostop do strežnika, v direktivo Dovoli iz:

# Naročilo zavrni, dovoli
# Zavrni od vseh
# Dovoli od 127.0.0.1

Opomba: Ker se te vrstice v konfiguracijski datoteki pojavijo dvakrat, morate ta navodila dvakrat ponoviti.

Shranite in zaprite datoteko.

Zaženite Nagios in znova zaženite Apache, da posodobite nastavitve:

ponovni zagon storitve sudo nagios
sudo storitev apache2 znova zaženi

Spletni vmesnik Nagios

Odprite brskalnik in se pomaknite do Nagiosa s to povezavo:

http://nagios_server_public_ip/nagios

Spletni strežnik Apache uporablja htpasswd, zato morate vnesti poverilnice uporabnika nagiosadmin.

Po preverjanju pristnosti boste imeli dostop do domače strani Nagiosa. Če si želite ogledati seznam strežnikov, ki jih spremlja Nagios, odprite Hosts na levi nadzorni plošči.

Kot lahko vidite, Nagios trenutno spremlja samo lokalnega gostitelja.

Spremljanje gostitelja z NRPE

Ta razdelek vam bo pokazal, kako dodati nov strežnik nastavitvam spremljanja Nagiosa.

Opomba: Če želite dodati več strežnikov, ponovite ta navodila za vsakega od njih.

Prijavite se v strežnik, ki ga želite spremljati, in posodobite apt-get:

sudo apt-pridobi posodobitev

Nato namestite vtičnike Nagios in NRPE.

sudo apt-get install nagios-plugins nagios-nrpe-server

Nastavitev gostiteljev

Odprite konfiguracijsko datoteko NRPE v urejevalniku besedil:

sudo vi /etc/nagios/nrpe.cfg

Poiščite direktivo dovoljeno_hosts in na konec dodajte notranji naslov IP strežnika Nagios (ločen z vejicami).

dovoljeni_gostitelji=127.0.0.1,10.132.224.168

Shranite in zaprite datoteko. Zdaj bo NRPE sprejemal zahteve strežnika Nagios prek notranjega naslova IP.

Prilagajanje ukazov NRPE

Določite ime korenskega datotečnega sistema (to je ena od komponent, ki bodo nadzorovane):

Uporabite ime datotečnega sistema v konfiguraciji NRPE za spremljanje uporabe diska (/dev/vda). Odprite nrpe.cfg v urejevalniku:

sudo vi /etc/nagios/nrpe.cfg

Konfiguracijska datoteka NRPE je zelo dolga in vsebuje veliko komentiranih vrstic. Potrebujete samo naslednje vrstice:

  • server_address: Določite notranji naslov IP gostitelja.
  • dovoljeni_gostitelji: Določite notranji naslov IP strežnika Nagios.
  • ukaz: Zamenjajte /dev/hda1 z imenom korenskega datotečnega sistema.

Posledično bi morale te vrstice izgledati takole:

naslov_strežnika=zasebni_IP odjemalca
dovoljeni_gostitelji=nagios_server_private_IP
ukaz=/usr/lib/nagios/plugins/check_disk -w 20% -c 10% -p /dev/vda

Upoštevajte, da datoteka vsebuje več drugih ukaznih vrstic, ki jih lahko uporablja Nagios. NRPE posluša na vratih 5666 (vrstica server_port=5666). Če požarni zid blokira ta vrata, jih odprite.

Shranite in zaprite datoteko.

Za posodobitev nastavitev znova zaženite NRPE:

sudo service nagios-nrpe-server restart

Po tem morate v nastavitve strežnika Nagios dodati gostitelja.

Dodajanje gostitelja v nastavitve Nagiosa

Pojdite na strežnik Nagios in ustvarite novo konfiguracijsko datoteko za gostitelja v /usr/local/nagios/etc/servers/.

sudo vi /usr/local/nagios/etc/servers/yourhost.cfg

Opomba: zamenjajte svoj gostitelj s svojim imenom gostitelja.

V datoteko dodajte naslednjo kodo, pri čemer vrednost host_name nadomestite z imenom oddaljenega gostitelja (web-1 v tem primeru), vrednost vzdevka z opisom gostitelja in naslov z notranjim naslovom IP oddaljenega gostitelja.

definiraj gostitelja (
uporabite strežnik linux
ime_gostitelja vaš gostitelj
vzdevek Moj prvi strežnik Apache
naslov 10.132.234.52
max_check_attempts 5
kontrolno_obdobje 24x7
interval_obvestila 30
Obdobje_obvestila 24x7
}

Zdaj bo Nagios spremljal ta strežnik. Vendar bo sistem spremljal samo stanje oddaljenega gostitelja (omogočeno ali onemogočeno). Če je to dovolj, shranite in zaprite datoteko. Če želite spremljati posamezne storitve na oddaljenem gostitelju, ne zaprite datoteke.

Sledijo primeri konfiguriranja sledenja storitev. Samo izberite storitev, ki ji želite slediti, in datoteki dodajte predlagani blok nastavitev. Upoštevajte, da vrednost check_command določa, kaj bo nadzorovano.

definiraj storitev (
uporabite generično storitev
ime_gostitelja vaš gostitelj
service_description PING
check_command check_ping!100.0.20%!500.0.60%
}

SSH (notifications_enabled nastavljen na 0 onemogoči obvestila):

definiraj storitev (
uporabite generično storitev
ime_gostitelja vaš gostitelj
service_description SSH
check_command check_ssh
notifications_enabled 0
}

Direktiva uporabe generične storitve preprosto podeduje od privzete predloge generične storitve.

Shranite in zaprite datoteko. Za posodobitev nastavitev znova zaženite Nagios:

sudo storitev nagios ponovno naloži

Ko je konfiguriran, odprite spletni vmesnik in preverite stran Storitve; zdaj bi moral vsebovati seznam pravkar dodanih oddaljenih gostiteljev.

Zaključek

Po nastavitvi spremljanja gostiteljev in nekaterih storitev določite, katere storitve so ključne za delovanje strežnika in jih dodajte na seznam. Nastavite lahko tudi obvestila; Nagios lahko na primer poroča, da je uporaba diska dosegla kritično točko ali da spletno mesto ne deluje. To vam omogoča, da pravočasno odpravite takšne težave.

Oznake: ,

Nagios je eno najbolj razširjenih odprtokodnih orodij za spremljanje strežnikov Linux in Windows. Z njim lahko preko spletnega vmesnika na daljavo spremljate izvajanje različnih aplikacij in storitev. Nagios lahko spremlja tudi usmerjevalnike in druge omrežne naprave.

Z Nagiosom lahko spremljate osnovne parametre strežnika, kot so obremenitev CPE-ja, poraba pomnilnika itd. Vse to je na voljo v spletnem vmesniku, ki zahteva preprosto preverjanje pristnosti za dostop. V tem članku si bomo ogledali, kako poteka namestitev Nagios Ubuntu, pa tudi konfiguracijo tega programa.

Nagios Ubuntu 16.04 lahko namestite na več načinov. Uporabite lahko PPA ali namestite s pomočjo arhiva, prenesenega z uradnega spletnega mesta. Trenutno je najnovejša različica 4.3. V PPA je na voljo samo 4.2, zato bomo razmislili o ročni namestitvi z uporabo arhiva.

Toda preden nadaljujemo z namestitvijo, morate posodobiti sistem in namestiti vse potrebne komponente za izdelavo programa:

sudo apt install build-essential apache2 php7.0 openssl perl make php7.0-gd libgd2-xpm-dev libapache2-mod-php7.0 libperl-dev libssl-dev daemon wget apache2-utils unzip

Nato morate ustvariti skupino in uporabnika, pod katerim se bo Nagios izvajal, ter ukaze lupine, ki se izvajajo v spletnem vmesniku:

sudo useradd nagios
$ sudo groupadd nagcmd

Dodajte uporabnika nagios in uporabnika, pod katerim se Apache izvaja v skupini nagcmd:

sudo usermod -a -G nagcmd nagios
$ sudo usermod -a -G nagcmd www-data

Nato moramo prenesti vire nagios. To lahko storite s terminalskim ukazom, a ker želimo dobiti najnovejšo različico, je bolje, da gremo na uradno spletno stran in prenesemo.

Najprej kliknite na predmet "Nagio Core", nato se pomaknite navzdol in pritisnite Prenesi:

Na tej stopnji lahko vnesete podatke o sebi ali pa preskočite s klikom "Preskoči prenos":

Ostaja še izbrati različico, na primer 4.3.2. Ko je prenos končan, pojdite v mapo s prenosi in razpakirajte arhiv:

cd ~/Prenosi/
$ tar -zxvf /tmp/nagios-4.3.2.tar.gz

Zdaj lahko preidemo na sestavljanje nagiosov. Če želite to narediti, morate zagnati naslednje ukaze:

./configure --with-nagios-group=nagios --with-command-group=nagcmd --with-httpd_conf=/etc/apache2/sites-enabled/
$naredi vse
$ sudo naredi namestitev
$ sudo naredi install-init
$ sudo naredi install-config
$ sudo naredi namestitveni ukazni način
$ sudo naredi install-webconf

Nastavitev Nagiosa na Ubuntu

Vse konfiguracijske datoteke programa bo namestitveni program postavil v /usr/local/nagios/etc/. Privzete nastavitve omogočajo zagon Nagiosa, vendar moramo narediti še nekaj sprememb. Odprite datoteko contact.cfg in spremenite e-poštni naslov, na katerega bodo poslana obvestila:

sudo vi /usr/local/nagios/etc/objects/contacts.cfg

definiraj kontakt (
contact_name nagiosadmin ; Kratko uporabniško ime
uporabite generic-contact ; Privzeta predloga
alias Nagios Admin ; Polno uporabniško ime
E-naslov [email protected] Spletna stran ; Vaš e-poštni naslov
}

Da bi spletni vmesnik deloval, morate ustvariti geslo za uporabnika nagiosadmin s pomočjo htpasswd, brez njega preprosto ne morete vstopiti v vmesnik:

sudo htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin

Končno, za pravilno delovanje, morate narediti nekaj nastavitev za spletni strežnik. Omogoči modul cgi:

sudo a2enmod cgi

Znova zaženite spletni strežnik:

sudo storitev apache2 znova zaženi

Za več funkcij nagiosa lahko namestite nabor vtičnikov. Če želite to narediti, ga najprej prenesite:


Zdaj odpakirajte arhiv in pojdite v mapo z njim:

tar -zxvf /tmp/nagios-plugins-2.1.1.tar.gz
$ cd /tmp/nagios-plugins-2.1.1/

Za prevajanje modulov zaženite:

./configure --with-nagios-user=nagios --with-nagios-group=nagios
$naredi
$ naredi namestitev

Moduli so nameščeni v mapi Nagios, zdaj preverite, ali je konfiguracija pravilna:

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

Za samodejni zagon ustvarite datoteko Unit za systemd:

sudo vi /etc/systemd/system/nagios.service


Opis=Nagios
BindTo=omrežje.cilj


WantedBy=več-user.target


Uporabnik=nagios
Skupina=nagios
Vrsta = preprosto
ExecStart=/usr/local/nagios/bin/nagios /usr/local/nagios/etc/nagios.cfg

Zagon Nagiosa

Skoraj vse je pripravljeno, še vedno je treba zagnati storitev in jo začeti uporabljati. Če želite zagnati storitev, vnesite:

sudo systemctl stat nagios

Za odpiranje spletnega vmesnika nagios bo dovolj, da v brskalnik vnesete naslov ip in url nagiosa. Če ste vse to namestili na svoj lokalni računalnik, uporabite:

http://localhost/nagios

Takoj po odprtju strani boste morali vnesti uporabniško ime nagiosadmin in geslo, ki ste ga zanj nastavili prej. Po tem lahko uporabite vse funkcije programa:

sklepi

V tem članku smo si ogledali, kako konfigurirati nagios 4, pa tudi v celoti namestiti najnovejšo različico na operacijski sistem Ubuntu. Kljub temu, da se na prvi pogled zdi vse zapleteno, je postopek precej preprost. Zdaj lahko spremljate nagios ubuntu 16.04. Upam, da so vam bile te informacije v pomoč.

Preden konfigurirate nagios, morate namestiti potrebne odvisnosti

# apt install build-essential apache2 php libapache2-mod-php7.0 php-gd libgd-dev mailutils

In dodajte uporabnika in skupino, v imenu katere se bo izvajal nagios

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

Pojdite v imenik za gradnjo in prenesite izvorno kodo za nagios in vtičnike

# cd /usr/src/ # wget https://sourceforge.net/projects/nagios/files/nagios-4.x/nagios-4.2.3/nagios-4.2.3.tar.gz # wget https:// nagios-plugins.org/download/nagios-plugins-2.1.4.tar.gz

Razpakirajte prenesene arhive

# tar xzvf nagios-4.2.3.tar.gz # tar xzvf nagios-plugins-2.1.4.tar.gz

Pojdimo v imenik z izvorno kodo nagios in konfigurirajmo

# cd nagios-4.2.3 # ./configure --prefix=/etc/nagios --with-command-group=nagcmd --with-httpd-conf=/etc/apache2/sites-available --with-mail= /usr/bin/mail

Gradimo

# naredi vse

Namestite nagios

# naredi namestitev

Namestite init skript v /etc/init.d in omogočite samodejni zagon

# naredi install-init # update-rc.d nagios privzete

Nastavite dovoljenja za imenik za shranjevanje zunanjih paketnih datotek

# naredi namestitveni ukazni način

Namestite konfiguracijske datoteke nagios

# naredi install-config

Nastavite konfiguracijo nagios za apache

# naredi install-webconf

Kopirajte skripte za obdelavo dogodkov zunanjih paketnih datotek v mapo z nagios in nastavite lastnika na mapo

# cp -R contrib/eventhandlers/ /etc/nagios/libexec/ # chown -R nagios:nagios /etc/nagios/libexec/eventhandlers

Preverimo nameščeno konfiguracijo

# /etc/nagios/bin/nagios -v /etc/nagios/etc/nagios.cfg

# naredi # naredi namestitev

Omogočite konfiguracijo nagiosa v apache in aktivirajte potrebne dodatke

# a2ensite nagios # a2enmod prepiši cgi

Znova zaženite storitev apache

# storitev apache2 znova zaženi

Začnimo nagios in preverimo stanje

# service nagios start # service nagios status ● nagios.service - Nagios Naloženo: naloženo (/etc/systemd/system/nagios.service; omogočeno; prednastavitev ponudnika: omogočeno) Aktivno: aktiven (teče)

Dodajte skrbnika za nagios

# htpasswd -c /etc/nagios/etc/htpasswd.users nagiosadmin

Zdaj pa se ukvarjamo s konfiguracijskimi datotekami nagios.

/etc/nagios/etc/ cgi.cfg- definira nastavitve spletnega vmesnika, kot tudi pravice dostopa do spletne konzole nagios.

/etc/nagios/etc/ htpasswd.users- podatkovno bazo uporabnikov in njihovih gesel za dostop do spletnega vmesnika nagios.

/etc/nagios/etc/ nagios.cfg— vsebuje glavne nastavitve in poti do datotek *.cfg.

/etc/nagios/etc/ vir.cfg- tukaj je definirana spremenljivka, do imenika z vtičniki.

/etc/nagios/etc/objects/ commands.cfg- vsebuje definicije ukazov.

/etc/nagios/etc/objects/ kontakti.cfg- določa poštne kontakte, na katere bodo poslana nagios obvestila.

/etc/nagios/etc/objects/ templates.cfg- vsebuje predloge za stike, gostitelje in storitve.

/etc/nagios/etc/objects/ timeperiods.cfg- vsebuje definicije časovnih obdobij.

/etc/nagios/etc/objects/ localhost.cfg- konfiguracija za spremljanje samega strežnika nagios. Opredeljuje samega gostitelja, gostiteljsko skupino za strežnike linux in storitve spremljanja.

/etc/nagios/etc/objects/ tiskalnik.cfg- konfiguracija za spremljanje tiskalnika. Opredeljuje poljuben tiskalnik, gostiteljsko skupino za tiskalnike in storitve spremljanja.

/etc/nagios/etc/objects/ switch.cfg- konfiguracija za spremljanje stikala. Opredeljuje poljubno stikalo, gostiteljsko skupino za stikala in storitve spremljanja.

/etc/nagios/etc/objects/ windows.cfg- konfiguracija za spremljanje poljubnega gostitelja Windows. Opredeljuje poljubnega gostitelja Windows, skupino gostiteljev za strežnike Windows in storitve spremljanja.

Opis kaže, da localhost.cfg, printer.cfg, switch.cfg in windows.cfg vsebujejo definicije skupine gostiteljev. Zaradi udobja jih je smiselno ločiti v ločeno datoteko /etc/nagios/etc/objects/ hostgroups.cfg. V skladu s tem jih je treba komentirati v izvirni datoteki. Opis istega predmeta se ne sme ponavljati v različnih konfiguracijskih datotekah. Dodali bomo tudi datoteko /etc/nagios/etc/objects/ servicegroups.cfg, v katerem bodo določene storitvene skupine. Ker ta publikacija postavlja nadzor za gostitelje linux in windows, bomo zanje definirali skupine. Za tiskalnike in stikala so skupine definirane po analogiji. Ustvarili bomo tudi mapo /etc/nagios/etc/servers/, v kateri bodo shranjene datoteke, ki določajo gostitelje za spremljanje. Naredimo ustrezne spremembe v datoteki nagios.cfg

# nano /etc/nagios/etc/nagios.cfg . . . # Določite lahko posamezne konfiguracijske datoteke objektov, kot je prikazano spodaj: cfg_file=/etc/nagios/etc/objects/commands.cfg cfg_file=/etc/nagios/etc/objects/contacts.cfg cfg_file=/etc/nagios/etc/objects /timeperiods.cfg cfg_file=/etc/nagios/etc/objects/templates.cfg # Definicije za gostiteljske in storitvene skupine cfg_file=/etc/nagios/etc/objects/hostgroups.cfg cfg_file=/etc/nagios/etc/objects/servicegroups.cfg# Definicije za spremljanje lokalnega (Linux) gostitelja cfg_file=/etc/nagios/etc/objects/localhost.cfg # Definicije za spremljanje računalnika Windows #cfg_file=/etc/nagios/etc/objects/windows.cfg # Definicije za spremljanje usmerjevalnik/stikalo #cfg_file=/etc/nagios/etc/objects/switch.cfg # Definicije za spremljanje omrežnega tiskalnika #cfg_file=/etc/nagios/etc/objects/printer.cfg # Nagiosu lahko tudi poveste, naj obdela vse konfiguracijske datoteke (s pripono .cfg #) v določenem imeniku z uporabo direktive cfg_dir #, kot je prikazano spodaj: cfg_dir=/etc/nagios/etc/servers#cfg_dir=/etc/nagios/etc/printers #cfg_dir=/etc/nagios/etc/switches #cfg_dir=/etc/nagios/etc/routers . . .

Ustvarite datoteke za gostitelja in storitvene skupine ter nastavite pravice zanje

# cd /etc/nagios/etc/objects/ # dotaknite se hostgroups.cfg servicegroups.cfg # chown nagios:nagios hostgroups.cfg servicegroups.cfg # chmod 664 hostgroups.cfg servicegroups.cfg

Ustvari imenik /etc/nagios/etc/ strežniki/ in nastavite pravice do njega

# mkdir /etc/nagios/etc/servers/ # chown nagios:nagios /etc/nagios/etc/servers/ # chmod 775 /etc/nagios/etc/servers/

V hostgroups.cfg dodajte definicije gostiteljskih skupin za strežnike linux in windows iz localhost.cfg oziroma windows.cfg

# nano /etc/nagios/etc/objects/hostgroups.cfg # Določite izbirno skupino gostiteljev za računalnike Linux # Vsi gostitelji, ki uporabljajo predlogo strežnika linux, bodo samodejno člani te skupine, definirajte gostiteljsko skupino ( hostgroup_name linux-servers ; ime vzdevka skupine gostiteljev Linux Servers ; Dolgo ime skupine ) # Določite skupino gostiteljev za računalnike Windows # Vsi gostitelji, ki uporabljajo predlogo Windows-strežnika, bodo samodejno člani te skupine, definirajte gostiteljsko skupino ( hostgroup_name windows-servers ; Ime vzdevek skupine gostiteljev Windows Servers; Dolgo ime skupine)

Ker je pot do windows.cfg komentirana v nagios.cfg, ni treba komentirati definicije gostiteljskih skupin v windows.cfg, v localhost.cfg pa je to obvezno dejanje

# nano /etc/nagios/etc/objects/localhost.cfg . . . # Določite neobvezno skupino gostiteljev za računalnike Linux #define hostgroup( # hostgroup_name linux-servers ; Ime skupine gostiteljev # vzdevek Linux Servers ; Dolgo ime skupine # člani localhost ; Seznam gostiteljev, ločenih z vejico, ki pripadajo tej skupini # ) . . .

Ko je objekt Windows Server ustvarjen, samodejno postane član skupine Windows Servers. To dejanje je definirano v datoteki templates.cfg. Da bi strežniki linux samodejno spadali v skupino strežnikov linux, morate narediti naslednjo spremembo

# nano /etc/nagios/etc/objects/templates.cfg . . . # Predloga definicije gostitelja Linux - To NI pravi gostitelj, samo predloga! define host( ime linux-server ; Ime te predloge gostitelja uporablja generic-host ; Ta predloga podeduje druge vrednosti iz predloge generičnega gostitelja check_period 24x7 ; Privzeto so gostitelji Linuxa preverjani 24 ur na dan check_interval 5 ; Aktivno preverjanje gostitelj vsakih 5 minut retry_interval 1 ; Načrtujte ponovne poskuse preverjanja gostitelja v 1 minutnih intervalih max_check_attempts 10 ; Preverite vsakega gostitelja Linuxa 10-krat (največ) check_command check-host-alive ; Privzeti ukaz za preverjanje delovnih ur gostiteljev Linuxa notification_period ; Skrbniki Linuxa sovražijo biti prebujeni navzgor, zato obveščamo samo čez dan ; Upoštevajte, da se spremenljivka notification_period preglasi iz ; vrednost, ki je podedovana iz predloge generičnega gostitelja! notification_interval 120 ; Znova pošlji obvestila vsaki 2 uri notification_options d,u,r ; Pošlji samo obvestila za določena gostiteljska stanja contact_groups admins ; Obvestila se privzeto pošiljajo skrbnikom gostiteljske skupine linux-strežniki; Gostiteljske skupine, katerih člani morajo biti strežniki Linux register 0 ; NE REGISTRIRAJTE TE DEFINICIJE - NI PRAVI gostitelj, SAMO PREDLOGA! ) . . .

Če želite nastaviti obvestilo, morate v contacts.cfg določiti e-poštni naslov skrbnika sistema

# nano /etc/nagios/etc/objects/contacts.cfg . . . define contact( contact_name nagiosadmin ; Kratko ime uporabnika uporablja generic-contact ; Podeduj privzete vrednosti iz predloge generičnega stika (definirano zgoraj) vzdevek Nagios Admin ; Polno ime e-pošte uporabnika [email protected] Spletna stran ; <<***** CHANGE THIS TO YOUR EMAIL ADDRESS ****** } . . .

# storitev nagios znova zaženi

Učinkovitost obvestil lahko preverite na naslednji način, na levi strani v spletnem vmesniku izberite »Hosts«, nato kliknite »localhost«, kliknite »Pošlji obvestilo gostitelja po meri« v meniju na desni, napišite karkoli v Vrstica »Komentiraj« in kliknite »Objavi«.

Opozorilo je treba poslati na pošto, navedeno v contacts.cfg.


Malo o vtičnikih

Mapa /etc/nagios/libexec vsebuje nameščene vtičnike. Na začetku članka je bilo omenjeno, da nagios sprejema vse informacije prek vtičnikov. Poglejmo si na primer čas delovanja sistema

# /etc/nagios/libexec/check_uptime Uptime OK: 0 dan(i) 3 ure(e) 52 minute(e) | uptime=232.000000;;;

Večina vtičnikov deluje samo z argumenti, na primer, poglejmo stanje datoteke sistemske zamenjave

# /etc/nagios/libexec/check_swap -w 20 -c 10 SWAP OK - 100 % brezplačno (2044 MB od 2044 MB) |swap=2044MB;0;0;0;2044

Obstajata dva argumenta -w 20 in -c 10.

w - opozorilo, ko ostane 20 % prostega prostora, se pojavi opozorilni dogodek.

c - kritično, ko ostane 10% prostega prostora, se zgodi kritični dogodek.

Obstajajo tudi vtičniki lokalni in "splošni". Zgornji primeri so lokalni. Na primer, vtičnik check_swap ne bo mogel preveriti stanja ostranjevalne datoteke na oddaljenem gostitelju, vendar lahko vtičnik check_ping preveri razpoložljivost lokalnih in oddaljenih gostiteljev.

# /etc/nagios/libexec/check_ping -H localhost -w 100.0.20% -c 500.0.60% PING OK - Izguba paketa = 0%, RTA = 0.04 ms|rta=0.036000ms;100.000000;0000.00; 0%;20;60;0 # /etc/nagios/libexec/check_ping -H 192.168.1.16 -w 100.0.20% -c 500.0.60% PING OK - Izguba paketa = 0%, RTA = 0,27 ms|rta= 0,273000ms;100,000000;500,000000;0,000000pl=0%;20;60;0


Malo o NRPE

NRPE - Nagios Remote Plugin Executor. Da bi nagios prejeli informacije od oddaljenih gostiteljev, kot je uporaba diska ali CPE, se uporablja vtičnik nrpe. Nagios prek vtičnika nrpe dostopa do strežnika nrpe, nameščenega na oddaljenem gostitelju linux/unix. Strežnik nrpe zažene lokalne vtičnike in posreduje informacije strežniku nagios. Pomembno! Strežnik nrpe in vtičnik morata biti enake različice, sicer lahko pride do napak.


Namestitev vtičnika NRPE

Pred namestitvijo vtičnika nrpe morate namestiti odvisnost

# apt install libssl-dev

Najnovejšo različico nrpe lahko prenesete s spletnega mesta nagios. Pojdite v imenik za gradnjo, prenesite in razpakirajte najnovejšo različico nrpe

# cd /usr/src/ # wget https://github.com/NagiosEnterprises/nrpe/archive/3.0.1.tar.gz # tar xzvf 3.0.1.tar.gz

Pojdimo v mapo z nrpe in konfigurirajmo

Sestavimo in namestimo vtičnik nrpe

# naredi check_nrpe # naredi namestitveni vtičnik

Dodajte podporo nrpe v /etc/nagios/etc/objects/commands.cfg

# nano /etc/nagios/etc/objects/commands.cfg . . . # "check_nrpe" definicija ukaza define command( command_name check_nrpe ukazna_vrstica $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$) . . .

Po opravljenih spremembah morate znova zagnati storitev nagios

# storitev nagios znova zaženi


Namestitev strežnika NRPE

Na gostitelju linuxa, ki ga bomo spremljali, moramo namestiti strežnik nrpe in vtičnike.

Namestite potrebne odvisnosti

# apt install build-essential libssl-dev

Pojdite v imenik za gradnjo, prenesite nrpe, vtičnike in jih razpakirajte

# cd /usr/src/ # wget https://github.com/NagiosEnterprises/nrpe/archive/3.0.1.tar.gz # wget https://nagios-plugins.org/download/nagios-plugins-2.1. 4.tar.gz # tar xzvf 3.0.1.tar.gz # tar xzvf nagios-plugins-2.1.4.tar.gz

Pojdimo v imenik z nrpe in konfigurirajmo

# cd nrpe-3.0.1 # ./configure --prefix=/etc/nagios

Gradimo

# naredi nrpe

Dodajte uporabnika in skupino, v imenu katere se bo izvajal strežnik nrpe

# naredi namestitvene skupine-uporabnike

Namestimo strežnik in konfiguracijsko datoteko

# naredi install-daemon # naredi install-config

Namestite začetni skript

# naredi install-init # systemctl omogoči /lib/systemd/system/nrpe.service

Pojdimo v imenik z izvorno kodo vtičnikov in konfiguriramo

# cd /usr/src/nagios-plugins-2.1.4/ # ./configure --prefix=/etc/nagios --with-nagios-user=nagios --with-nagios-group=nagios

Zgradite in namestite vtičnike

# naredi # naredi namestitev

V /etc/nagios/etc/nrpe.cfg bomo strežniku nagios omogočili prejemanje informacij o sistemu, v vnaprej določenem ukazu pa bomo navedli tudi pravo ime particije diska, ki jo je treba spremljati.

Nano /etc/nagios/etc/nrpe.cfg . . . dovoljeni_gostitelji=127.0.0.1, 192.168.1.13 . . . command=/etc/nagios/libexec/check_users -w 5 -c 10 command=/etc/nagios/libexec/check_load -w 15,10,5 -c 30,25,20 command=/etc/nagios/libexec/check_disk -w 20% -c 10% -p /dev/ sda1 ukaz=/etc/nagios/libexec/check_procs -w 5 -c 10 -s Z ukaz=/etc/nagios/libexec/check_procs -w 150 -c 200 . . .

192.168.1.13 je treba zamenjati z naslovom vašega strežnika nagios.
Zaženite strežnik nrpe in preverite njegovo stanje

# storitev nrpe start # service nrpe status ● nrpe.service - Nagios Remote Program Executor Naloženo: naloženo (/lib/systemd/system/nrpe.service; omogočeno; prednastavitev ponudnika: omogočeno) Aktivno: aktiven (teče)


Dodajanje gostitelja linux v sistem za spremljanje

V ta namen bomo v mapi strežniki ustvarili datoteko linux-server.cfg

# nano /etc/nagios/etc/servers/linux-serv.cfg definiraj gostitelja( uporabi linux-server ime gostitelja linux-serv vzdevek linux-serv naslov 192.168.1.12 ) definiraj storitev (uporabi generic-service host_name linux-serv service_description CPU Load check_command check_nrpe!check_load ) definiraj storitev (uporabi generično storitev ime gostitelja linux-serv service_description Trenutni uporabniki check_command check_nrpe!check_users ) definiraj storitev (uporabi generično-storitveno ime gostitelja linux-serv service_description /dev/sda1 prost prostor check_command check_n service(da) check_n service uporabite generično-storitev ime_gostitelja linux-serv service_description Skupaj procesov check_command check_nrpe!check_total_procs ) definirajte storitev (uporabite generično storitev ime gostitelja linux-serv service_description Zombie Processes check_command check_nrpe!check_zombie_procs )

192.168.1.12 je treba zamenjati z naslovom vašega strežnika Linux.
Direktiva use kaže na ime predloge v templates.cfg, ki določa privzete nastavitve. Da se novi gostitelj prikaže v spletnem vmesniku, morate znova zagnati storitev nagios

# storitev nagios znova zaženi

Če želite preveriti, ali nrpe deluje, lahko zaženete ukaz

# /etc/nagios/libexec/check_nrpe -H 192.168.1.12 NRPE v3.0.1

Če želite preveriti določeno storitev, morate dodati argument z imenom preverjanja

# /etc/nagios/libexec/check_nrpe -H 192.168.1.12 -c check_sda1 DISK OK - prosti prostor: /var/tmp 14549 MB (85% inode=88%);| /var/tmp=2527MB;14411;16212;0;18014

Ime preverjanja smo definirali v datoteki nrpe.cfg

ukaz[ check_sda1]=/etc/nagios/libexec/check_disk -w 20% -c 10% -p /dev/sda1

in v datoteki linux-serv.cfg

Določite storitev (uporabite ime gostitelja generične storitve linux-serv service_description /dev/sda1 Prosti prostor check_command check_nrpe! check_sda1 }


Nadzor gostitelja Windows

Vtičnik nt se uporablja za spremljanje gostiteljev Windows. Privzeto je vključen v osnovne vtičnike in ga ni treba namestiti ločeno. Preko nt vtičnik nagios dostopa do NSClient++, nameščenega na gostitelju Windows. NSClient++ dostopa do določenih modulov, ki mu sporočajo informacije o sistemu. NSClient++ pošlje prejete informacije strežniku nogios.


Namestitev NSClient++

Na gostitelju Windows morate namestiti NSClient++. Prenesite najnovejšo različico in zaženite kot skrbnik.

Kliknite "Naprej"

Ponovno kliknite "Naprej".

Izberite "Tipično"

Določite naslov strežnika nagios, geslo in pustite prvi dve potrditveni polji. Kliknite "Naprej"

Kliknite "Namesti"

Kliknite "Dokončaj"


Dodajanje gostitelja Windows v sistem za spremljanje

V ta namen bomo v mapi strežniki ustvarili datoteko windows-serv.cfg

# nano /etc/nagios/etc/servers/windows-serv.cfg definiraj gostitelja (uporabi ime gostitelja windows-server windows-serv vzdevek Moj naslov Windows Server 192.168.1.33 ) definiraj storitev (uporabi generično-storitveno ime_gostitelja windows-serv service_description NSClient++ različica check_command check_nt!CLIENTVERSION ) definiraj storitev (uporabi generično-storitveno ime gostitelja windows-serv service_description Uptime check_command check_nt!UPTIME ) define service(uporabi generično-storitveno ime gostitelja windows-serv service_description CPU Load check_command check_nt!CPULOAD!-l 5,80,90 ) definiraj storitev( uporabite ime gostitelja generične storitve windows-serv service_description Uporaba pomnilnika check_command check_nt!MEMUSE!-w 80 -c 90 ) define service (uporabite ime gostitelja generične storitve windows-serv service_opis C:\ Drive Space check_command check_nt!USEDDISKSPACE!-l c -w 80 -c 90 ) definiraj storitev (uporabi ime gostitelja generične storitve windows-serv service_opis VMTools check_command check_nt!SERVICESTATE!-d SHOWALL -l VMToo ls ) definiraj storitev (uporabi ime gostitelja generične storitve windows-serv service_description Explorer check_command check_nt!PROCSTATE!-d SHOWALL -l explorer.exe )

192.168.1.33 je treba zamenjati z naslovom vašega strežnika Windows.
Če je bilo pri namestitvi odjemalca NSClient++ podano geslo, ga morate dodati v commands.cfg

# nano /etc/nagios/etc/objects/commands.cfg . . . # "check_nt" definicija ukaza define command( command_name check_nt command_line $USER1$/check_nt -H $HOSTADDRESS$ -p 12489 -s MegaPass-v $ARG1$ $ARG2$) . . .

In znova zaženite storitev nagios

# storitev nagios znova zaženi


Definicija storitvene skupine

Skupina storitev združuje gostitelje, ki so predmet določenih servisnih pregledov. Ustvarimo skupino storitev CPU Load in združimo gostitelje, da preverimo obremenitev procesorja.

# nano /etc/nagios/etc/objects/servicegroups.cfg define servicegroup( servicegroup_name cpuload alias CPU Load members linux-serv,CPU Load, localhost,Current Load, windows-serv,CPU Load)

Člani skupine so opredeljeni v direktivi o članih po načelu
člani = ,,,,…,n>,n>

Če želite narediti skupino na voljo, morate znova zagnati storitev nagios

# storitev nagios znova zaženi


Lokacija gostiteljskih povezav na zemljevidu

Privzeto so vsi gostitelji na zemljevidu povezani s procesom Nagios. Včasih morate to vedenje preglasiti. Na primer, povezava ne bi smela prihajati iz Nagios Process, ampak iz druge točke na zemljevidu (na primer povezava s strežnikom prek stikala). To naredite tako, da v razdelek z opisom gostitelja dodate direktivo staršev. Za ilustrativen primer spremenimo povezavo windows-serv iz Nagios Process v linux-serv

# nano /etc/nagios/etc/servers/windows-serv.cfg definiraj gostitelja (uporabi windows-server ime_gostitelja windows-serv vzdevek Moj naslov Windows Server 192.168.1.33 starši linux-serv } . . .

In znova zaženite storitev nagios

# storitev nagios znova zaženi

V prvem primeru so imeli vsi gostitelji povezavo z Nagios Process, v drugem primeru se povezava windows-serv začne z linux-serv.


Omogoči ikone

nagios ima možnost omogočiti ikone poleg imena gostitelja. Ikone se nahajajo v mapi /etc/nagios/share/images/logos. Uporabite lahko že pripravljen komplet, ki ga lahko prenesete z interneta. Če želite omogočiti prikaz ikon, morate v templates.cfg dodati naslednje vrstice

# nano /etc/nagios/etc/objects/templates.cfg . . . # Predloga definicije gostitelja Linux - To NI pravi gostitelj, samo predloga! define host( ime linux-server ; Ime te predloge gostitelja uporablja generic-host ; Ta predloga podeduje druge vrednosti iz predloge generičnega gostitelja check_period 24x7 ; Privzeto se gostitelji Linuxa preverjajo 24 ur na dan check_interval 1 ; Aktivno preverjanje gostitelj vsakih 5 minut retry_interval 1 ; Načrtujte ponovne poskuse preverjanja gostitelja v 1 minutnih intervalih max_check_attempts 10 ; Preverite vsakega gostitelja Linuxa 10-krat (največ) check_command check-host-alive ; Privzeti ukaz za preverjanje delovnih ur gostiteljev Linuxa notification_period ; Skrbniki Linuxa sovražijo biti prebujeni navzgor, zato obveščamo samo čez dan ; Upoštevajte, da se spremenljivka notification_period preglasi iz ; vrednost, ki je podedovana iz predloge generičnega gostitelja! notification_interval 120 ; Znova pošlji obvestila vsaki 2 uri notification_options d,u,r ; Pošlji samo obvestila za določena stanja gostitelja contact_groups admins ; Obvestila se privzeto pošiljajo skrbnikom gostiteljske skupine linux-strežniki ; gostiteljske skupine, ki jih strežniki linux sho bi bil član icon_image linux40.png statusmap_image linux40.gd2 register 0 ; NE REGISTRIRAJTE TE DEFINICIJE - NI PRAVI gostitelj, SAMO PREDLOGA! ) # Predloga definicije gostitelja Windows - To NI pravi gostitelj, samo predloga! definiraj gostitelja (ime windows-server ; Ime te predloge gostitelja uporablja generic-host ; Podeduj privzete vrednosti iz predloge generičnega gostitelja check_period 24x7 ; Privzeto so strežniki Windows nadzorovani 24 ur na dan check_interval 5 ; Aktivno preverjaj strežnik vsakih 5 minut retry_interval 1 ; Načrtujte ponovne poskuse preverjanja gostitelja v 1-minutnih intervalih max_check_attempts 10 ; Preverite vsak strežnik 10-krat (največ) check_command check-host-alive ; Privzeti ukaz, da preverite, ali so strežniki "živi" notification_period 24x7; Pošljite obvestilo ob katerem koli času, time - dan ali noč notification_interval 30 ; Ponovno pošlji obvestila vsakih 30 minut notification_options d,r ; Pošlji obvestila samo za določena stanja gostitelja contact_groups admins ; Obvestila se privzeto pošljejo skrbnikom skupine gostiteljev windows-strežniki ; Gostiteljske skupine, katerih člani morajo biti strežniki Windows od icon_image win40.png statusmap_image win40.gd2 register 0 ; NE REGISTRIRAJTE TEGA - JE SAMO PREDLOGA). . .

Ponovni zagon storitve nagios

# storitev nagios znova zaženi

Trenutno vse več malih in srednje velikih podjetij ustvarja porazdeljeno IT infrastrukturo, katere sestavni del je učinkovito spremljanje vseh njenih komponent za zagotavljanje neprekinjenega in kakovostnega delovanja. Takšne rešitve imajo običajno naslednje nefunkcionalne zahteve: hiter odziv na dogodke in zmožnost dela z omejenimi računalniškimi viri. Ta članek opisuje možnost gradnje takšnega sistema na podlagi prosto distribuirane programske opreme za spremljanje - Nagios.

Kratek opis Nagiosa

Glavno komponento Nagiosa, osnovnega strežnika, je mogoče namestiti na skoraj kateri koli strežnik Linux/Unix. Vključen je v skoraj vse običajne distribucije Linuxa in Unixa. Po potrebi lahko prenesete izvorno kodo s spletnega mesta projekta in na podlagi nje zgradite svojo različico Nagiosa. Poleg glavnega paketa Nagios je nameščena tudi dokumentacija zanj.

Nagios ima modularno in razširljivo arhitekturo. Za povečanje zmogljivosti Nagiosa lahko uporabite naslednje vrste komponent: vtičnike (vtičniki Nagios) in razširitve (dodatki Nagios).

Glavni proces Nagios uporablja vtičnike za pridobivanje naslednjih informacij: odzivni čas oddaljenega vozlišča, prosti prostor na particiji diska itd. Če vtičnika z zahtevano funkcionalnostjo ni bilo mogoče najti, je na voljo priročen vmesnik za ustvarjanje lastnih vtičnikov.

Izraz "dodatek" je bil uveden, da bi se izognili zamenjavi z vtičniki, saj se razširitve uporabljajo za dodajanje bistveno nove funkcionalnosti v Nagios ali za integracijo z drugimi zunanjimi izdelki.

Sposobnost hitrega pisanja vtičnikov je Nagios spremenila v vsestransko orodje za spremljanje omrežja. Obstajajo vtičniki za izpraševanje vozlišč prek SNMP, ki preverjajo razpoložljivost oddaljenega vozlišča z uporabo različnih omrežnih protokolov. V projektu Nagios Exchange lahko iščete med že napisanimi vtičniki ali razširitvami ali pa tam dodate vtičnik lastnega razvoja.

Uporabniški vmesnik Nagios je implementiran kot spletna aplikacija. Potrebni CGI skripti in konfiguracija spletnega strežnika so vključeni v osnovni paket Nagios. Obstaja tudi podsistem obveščanja, ki omogoča obveščanje po elektronski pošti o nastanku izrednih razmer in njihovi odpravi.

Slika 1 prikazuje strukturo glavnega strežnika Nagios.


Slika 2 prikazuje mehanizem za zagon vtičnikov Nagios na oddaljenem gostitelju.


Ključne komponente na sliki 2 so vtičnik check_nrpe spremljanje in razširitev na strani vozlišča NRPE na oddaljenem gostitelju. Med vtičnikom check_nrpe in NRPE- demon vzpostavi šifrirano SSL povezavo, prek katere nagiosd pošilja ukaze za zagon vtičnikov in prejema rezultate njihovega izvajanja. NRPE"projicira" vtičnike na oddaljenem gostitelju na glavni strežnik Nagios ( nagiosd), tako da lahko zaženete vse vtičnike na katerem koli oddaljenem gostitelju.

Za oddaljeno spremljanje vozlišč Windows lahko uporabite razširitev NSClient++. V tem primeru s strani nagiosd je treba uporabiti vtičnik check_nt.

Primer uporabe Nagiosa

Na primer, vzeto bo majhno trgovsko podjetje, ki ima 3 točke prisotnosti: skladišče, trgovino in pisarno. Vsaka točka prisotnosti ima svojo povezavo z lokalnim ponudnikom internetnih storitev. Strežnik Linux/Unix je nameščen kot prehod na vsakem mestu. Med vsemi spletnimi mesti je organiziran VPN. V pisarni je intranetno omrežje 10.1.0.0/24. Na zalogi - 10.2.0.0/24. V trgovini - 10.3.0.0/24. Vodstvo podjetja si je zadalo nalogo spremljati to IT infrastrukturo.


Če želite to narediti, morate storitev namestiti na vsakem od strežnikov. NRPE in dva od njih imata osnovni komplet Nagios. To se naredi tako, da če eden od strežnikov Nagios izpade, bo drugi takoj poslal sporočilo o tem.

Za namestitev nagiosd in NRPE lahko uporabite standardna orodja sistema. Ta postopek je odvisen od izbrane platforme in običajno ni težak. Tudi skupaj z nagiosd oz NRPE osnovni nabor vtičnikov je nameščen. Prav tako boste morali namestiti in konfigurirati spletni vmesnik za prikaz stanja vozlišča z nameščenim strežnikom Nagios. V nekaterih distribucijah je ločen v ločen paket. Končno morate ustvariti datoteko htpasswd z uporabnikom nagiosadmin, definiranim v datoteki cgi.conf. Če želite, lahko spremenite konfiguracijo in namesto tega imena uporabite drugega uporabnika.

Po tem lahko zaženete strežnik Nagios in spletni strežnik ter se s svojim uporabniškim imenom in geslom prijavite v vašo lokalno skupno rabo Nagios. Zaenkrat spremlja samo eno vozlišče lokalnega gostitelja in prikazuje več njegovih parametrov (povprečje obremenitve (povprečje nalaganja), trenutni uporabniki (aktivni uporabniki), prostor na disku (prostor na disku)). Eden od razdelkov tega vira vsebuje dokumentacijo, tako da vam za dostop do njega ni treba porabiti internetnega prometa. Opis gostitelja je v datoteki localhost.cfg.


Preden v konfiguracijo dodate druga vozlišča, morate določiti e-poštne naslove oseb, ki so odgovorne za njihovo administracijo. To se naredi v datoteki contacts.cfg. Zelo priporočljivo je, da izberete e-poštne naslove pri neodvisnih ponudnikih elektronske pošte. Na primer, poštni odjemalec Yandex lahko namestite na svoj mobilni telefon in v opisu navedete naslov na yandex.ru. Če je internet v pisarni, kjer je nameščen službeni poštni strežnik, izklopljen, bo strežnik Nagios iz skladišča tudi po urah prek mobilnega telefona o tem obvestil skrbnika.

Seznam 1 prikazuje, kako dodati kontaktne podatke v datoteko contacts.cfg.

Seznam 1. Dodajanje kontaktnih podatkov.
define contact( contact_name zorin; // kratko uporabniško ime // privzete vrednosti bodo podedovane iz predloge splošnega stika use generic-contact; vzdevek Alexander N. Zorin; // polno uporabniško ime email [email protected]; }

Po tem morate registrirati vozlišča, ki bodo nadzorovana v Nagiosu. Seznam 2 prikazuje, kako ustvariti definicijo vozlišča skladišča v datoteki warehouse-gw.cfg, podobno kot datoteka localhost.cfg.

Seznam 2. Dodajanje vozlišč v Nagios.
define host( // ime predloge, ki se uporablja za opis gostitelja. // če definiraš ta gostitelj, bo podedoval vse nastavitve // ​​deklarirane v predlogi gostitelja linux-server. use linux-server host_name warehouse-gw alias warehouse display_name Kontakti skladišča zorin , warehouse-admin address 140.14.22.4 ) define service( // ime predloge, uporabljene za opis storitve. use local-service ; host_name warehouse-gw service_description SSH check_command check_ssh notifications_enabled 1 ) define host( uporabite linux-server; host_name warehouse -intra alias warehouse-intra display_name Skladišče lokalni omrežni kontakti zorin, warehouse-admin address 10.2.0.1 ) define service( // ime predloge, uporabljene za opis storitve. use local-service; host_name warehouse-intra service_description SMTP check_command check_smtp notifications_en 1)

vozel skladišče-gw namerno dvakrat registriran, da bi spremljal stanje zunanjih in notranjih storitev LAN. V tem primeru strežnik SMTP služi samo lokalnemu omrežju. Nadzorne plošče spletnega vmesnika Nagios bodo prikazale dve vozlišči skladišče-gw in skladišče-intra. Če vozlišče skladišče-intra izgine in postane na voljo samo skladišče-gw- to pomeni, da je bil kanal VPN prekinjen.

Nekateri vtičniki se bodo izvajali skozi razširitev NRPE(povprečje obremenitve - check_load, disk space - check_disk, trenutni uporabniki - check_users) za pridobitev informacij, ki jih je nemogoče ali težko pridobiti izven vozlišča. Če želite to narediti, morate namestiti vtičnik check_nrpe2 na strežnikih in razširitvah Nagios NRPE na vseh strežnikih. To je mogoče storiti s standardnimi sistemskimi orodji.

V konfiguracijski datoteki nrpe.cfg morate določiti naslov, na katerega bo pripeta NRPE-demon in zaupanja vredna vozlišča, iz katerih bo sprejemal zahteve. Za trgovino (vozlišče shop-gw) bodo uporabljeni naslednji parametri:

server_address=10.3.0.1 dovoljeni_gostitelji=10.1.0.1,10.2.0.1

Promet NRPE namerno preusmerjen prek VPN-ja. Zaupanja vredna vozlišča za NRPE demon v trgovini sta pisarna in skladišče. Na strežnikih Nagios bodo te storitve spremljane, kot je prikazano na seznamu 3:

Seznam 3. Konfiguriranje nadzora za oddaljeno storitev
define service( // ime predloge, ki se uporablja za opis storitve. use local-service; host_name warehouse-intra service_description Naloži povprečni indeks check_command check_nrpe2!-c check_load notifications_enabled 1 )

V tem primeru NRPE- node daemon skladišče-intra ukaz je poslan check_load. Odgovor bo trenutna vrednost. povprečna obremenitev za to vozlišče. Upoštevajte, da morajo biti parametri za vtičnik (in jih je lahko več) ločeni s klicaji. V prikazanem primeru je parameter -c check_load.

Tako se korak za korakom z dodajanjem novih vozlišč in parametrov, ki se na njih spremljajo, zgradi zelo funkcionalen sistem spremljanja.

Delo z vtičniki

Vtičniki so preprosti programi ali skripti, ki prejemajo vhodne parametre, ko se izvajajo skozi možnosti ukazne vrstice in vrnejo zahtevane vrednosti v stdout v dobro definirani obliki. Ukaze za izvajanje vtičnikov je mogoče zapisati v datoteko commands.cfg, medtem ko so vtičniki nameščeni s nagiosd so že v tej datoteki. Vsak vtičnik je mogoče registrirati tudi v ločeni datoteki.

Seznam 4 prikazuje, kako je vtičnik opisan. check_smtp A, ki preveri razpoložljivost strežnika SMTP na oddaljenem gostitelju in njegov odzivni čas.

Seznam 4. Konfiguriranje vtičnika check_smtp
define command (ime ukaza check_smtp ukazna_vrstica /usr/lib/nagios/plugins/check_smtp -H $HOSTADDRESS$)

Tukaj je izrecno določena pot do vtičnika check_smtp in potrebo po dodajanju zahtevi prek možnosti -KOLK naslov vozlišča, ki se preverja, ki se na podlagi direktive samodejno nadomesti opredeliti storitev zgoraj. Če ta vtičnik zaženete iz ukazne vrstice, bodo prikazane naslednje informacije:

/usr/lib/nagios/plugins/check_smtp -H 192.168.4.1 SMTP OK - 0,038 sek. odzivni čas|čas=0,037518s;;;0,000000

Možnosti zagona so lahko različne, glavna stvar je, da jih pravilno dodate v opis ukaza. Izhodni format je podrobno opisan v dokumentaciji, nameščeni s spletnim vmesnikom.

Pri namestitvi NRPE-daemon, le majhen del vtičnikov je registriran v datoteki nrpe.conf, med njimi je zgornji ukaz check_load:

ukaz=/usr/lib/nagios/plugins/check_load -w 15,10,5 -c 30,25,20

Zgornja vrstica vsebuje pot do vtičnika check_load in možnosti zagona. Če se vtičnik zažene brez parametrov, bo prikazal seznam veljavnih parametrov. Na primer, morate ustvariti ukaz check_usr za NRPE, ki bi vrnil informacije o particiji /dev/md2, nameščeni na poti /usr, do nadzornega strežnika. To funkcijo je mogoče implementirati s standardnim vtičnikom check_disk. Če ga zaženete brez parametrov, se prikaže opis začetnih parametrov.

Uporaba: check_disk -w limit -c limit [-W limit] [-K limit] (-p pot | -x naprava) [-C] [-E] [-e] [-g group ] [-k] [ -l] [-M] [-m] [-R pot ] [-r pot ] [-t časovna omejitev] [-u enota] [-v] [-X vrsta]

Na podlagi posredovanih informacij lahko pripravite ekipo check_usr in ga vstavite v datoteko nrpe.conf:

ukaz=/usr/lib/nagios/plugins/check_disk -w 20% -c 10% -p /dev/md2

Poskusni zagon tega ukaza bo dal naslednji rezultat:

/usr/lib/nagios/plugins/check_disk -w 20% -c 10% -p /dev/md2 DISK OK - prosti prostor: /usr 20295 MB (86% inode=92%);| /usr=3061MB;19684;22145;0;24606

Kot lahko vidite, lahko v Nagiosu preprosto ustvarite vtičnike za izvajanje različnih nalog in jih povežete z demonom NRPE.

Razširitve Nagios

Ko razpravljamo o zmogljivostih Nagiosa, je nujno upoštevati najbolj zanimive razširitve, ki močno izboljšajo zmogljivosti Nagiosa.

razširitev pnp4nagios

Nagios privzeto hrani zgodovino stanja spremljanih parametrov samo glede na njihovo stopnjo kritičnosti (normalno, opozorilo, kritično). Uporabnik lahko vidi, v katerih obdobjih je bil parameter v različnih stanjih in kolikšen je bil skupni čas v teh stanjih za obdobje poročanja.


Kot je prikazano na sliki 5, je kritično obdobje označeno z rdečo, obdobja normalnega delovanja pa z zeleno. Ta rešitev je primerna za parametre logičnega tipa (da / ne), na primer za celovitost matrike RAID. Za številčne parametre bi bilo koristneje spremljati dinamiko sprememb.

Podaljšek pnp4nagios, ki redno prejema od nagiosd vrednosti parametrov, shrani zgodovino njihovih sprememb in ustvari poročilo v grafični obliki. Grafe lahko poljubno kombinirate in po potrebi nastalo spletno stran pretvorite v datoteko PDF. Slika 6 prikazuje poročilo o spremembi parametrov povprečna obremenitev za določeno vozlišče.

Slika 6. Spletna stran razširitve pnp4nagios
Zaključek

Še posebej je treba omeniti nizko intenzivnost virov te rešitve. Eno podjetje uporablja Nagios za spremljanje 14 vozlišč in 140 storitev na njih, medtem ko demon NRPE zavzame 512 KB RAM-a, strežnik nagiosd pa le 140 KB RAM-a. Poraba procesorskih virov obeh komponent in njihovih podrejenih procesov na CPU Pentium-IV ne presega 1%. Med spremljanimi parametri so temperatura trdih diskov in matičnih plošč, stanje diskovnih particij, velikost poštnih čakalnih vrst, hitrost ventilatorja, celovitost RAID nizov in še veliko več.

Kot je prikazano v tem članku, ima paket Nagios izjemno nizke zahteve po virih, je zelo prilagodljiv in je odprt za nove vtičnike in razširitve. Za majhno ali srednje podjetje, ki že ima vsaj en strežnik Linux/Unix, je Nagios idealna rešitev za spremljanje njihove obstoječe IT infrastrukture.



Povezani članki: