Sådan tilføjes Linux-vært til Nagios Monitoring Server ved hjælp af NRPE-plugin


I vores første del af denne artikel har vi forklaret detaljeret, hvordan du installerer og konfigurerer den nyeste Nagios 4.4.5 på RHEL/CentOS 8/7 og Fedora 30-serveren. I denne artikel viser vi dig, hvordan du tilføjer Remote Linux-maskine, og dens tjenester til Nagios Monitoring-vært ved hjælp af NRPE-agent.

Vi håber, at du allerede har Nagios installeret og kører korrekt. Hvis ikke, skal du bruge følgende installationsvejledning til at installere den på systemet.

  1. Sådan installeres Nagios 4.4.5 på RHEL/CentOS 8/7 og Fedora 30
  2. Sådan tilføjes Windows Host til Nagios Monitoring Server

Når du har installeret, kan du gå videre med at installere NRPE-agent på din Remote Linux-vært. Før vi går videre, lad os give dig en kort beskrivelse af NRPE.

Hvad er NRPE?

NRPE-pluginet (Nagios Remote Plugin Executor) giver dig mulighed for at overvåge alle eksterne Linux/Unix-tjenester eller netværksenheder. Denne NRPE-tilføjelse giver Nagios mulighed for at overvåge lokale ressourcer som CPU-belastning, swap, hukommelsesforbrug, online-brugere osv. På fjerntliggende Linux-maskiner. Når alt kommer til alt er disse lokale ressourcer ikke mest udsat for eksterne maskiner, en NRPE-agent skal installeres og konfigureres på de eksterne maskiner.

Bemærk: NRPE-tilføjelsen kræver, at Nagios Plugins skal installeres på den eksterne Linux-maskine. Uden disse fungerer NRPE-dæmonen ikke og overvåger ikke noget.

Installation af NRPE-plugin

For at bruge NRPE skal du udføre nogle yderligere opgaver på både Nagios Monitoring Host og Remote Linux Host, som NRPE installerede på. Vi dækker begge installationsdele separat.

Vi antager, at du installerer NRPE på en vært, der understøtter TCP-indpakninger og Xinted-dæmon installeret på den. I dag har de fleste af de moderne Linux-distributioner disse to installeret som standard. Hvis ikke, installerer vi det senere under installationen, når det er nødvendigt.

Brug nedenstående instruktioner til at installere Nagios Plugins og NRPE-dæmon på Remote Linux Host.

Vi skal installere nødvendige biblioteker som gcc, glibc, glibc-common og GD og dets udviklingsbiblioteker inden installation.

 yum install -y gcc glibc glibc-common gd gd-devel make net-snmp openssl-devel

-------------- On Fedora --------------
 dnf install -y gcc glibc glibc-common gd gd-devel make net-snmp openssl-devel

Opret en ny nagios-brugerkonto, og angiv en adgangskode.

 useradd nagios
 passwd nagios

Opret en mappe til installation og alle dens fremtidige downloads.

 cd /root/nagios

Download nu de nyeste Nagios Plugins 2.1.2-pakke med wget-kommando.

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

Kør følgende tjærekommando for at udtrække kildekoden tarball.

 tar -xvf nagios-plugins-2.1.2.tar.gz

Derefter vises udpakning af en ny mappe i den mappe.

 ls -l

total 2640
drwxr-xr-x. 15 root root    4096 Aug  1 21:58 nagios-plugins-2.1.2
-rw-r--r--.  1 root root 2695301 Aug  1 21:58 nagios-plugins-2.1.2.tar.gz

Derefter kompileres og installeres ved hjælp af følgende kommandoer

 cd nagios-plugins-2.1.2
 ./configure 
 make
 make install

Indstil tilladelserne til plugin-biblioteket.

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

De fleste af systemerne er som standard installeret. Hvis ikke, skal du installere xinetd-pakke ved hjælp af følgende yum-kommando.

 yum install xinetd

-------------- On Fedora --------------
 dnf install xinetd

Download de seneste NRPE Plugin 3.2-pakker med wget-kommandoen.

 cd /root/nagios
 wget https://github.com/NagiosEnterprises/nrpe/releases/download/nrpe-3.2.1/nrpe-3.2.1.tar.gz

Pak NRPE-kildekoden tarball ud.

 tar xzf nrpe-3.2.1.tar.gz
 cd nrpe-3.2.1

Kompilér og installer NRPE-tilføjelsen.

 ./configure
 make all

Installer derefter NRPE-plugin-dæmonen, og prøv daemon-konfigurationsfilen.

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

Installer NRPE-dæmonen under xinetd som en tjeneste.

 make install-xinetd
OR
 make install-inetd

Åbn nu /etc/xinetd.d/nrpe-filen, og tilføj lokalhost og IP-adresse på Nagios Monitoring Server.

only_from = 127.0.0.1 localhost <nagios_ip_address>

Derefter skal du åbne/etc/services-filen tilføje følgende post for NRPE-dæmonen i bunden af filen.

nrpe            5666/tcp                 NRPE

Genstart xinetd-tjenesten.

 service xinetd restart

Kør følgende kommando for at kontrollere, at NRPE-dæmonen fungerer korrekt under xinetd.

 netstat -at | grep nrpe

tcp        0      0 *:nrpe                      *:*                         LISTEN

Hvis du får output svarende til ovenstående, betyder det, at det fungerer korrekt. Hvis ikke, skal du kontrollere følgende ting.

  1. Kontroller, at du har tilføjet nrpe-post korrekt i/etc/services-filen
  2. Den eneste_fra indeholder en post til "nagios_ip_address" i filen /etc/xinetd.d/nrpe.
  3. Xinetd er installeret og startet.
  4. Kontroller for fejlene i systemlogfilerne for omkring xinetd eller nrpe, og ret disse problemer.

Kontroller derefter, at NRPE-dæmonen fungerer korrekt. Kør kommandoen “check_nrpe”, der blev installeret tidligere til testformål.

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

Du får en følgende streng på skærmen, den viser dig, hvilken version af NRPE der er installeret:

NRPE v3.2

Sørg for, at Firewall på den lokale maskine gør det muligt at få adgang til NRPE-dæmonen fra eksterne servere. For at gøre dette skal du køre følgende iptables-kommando.

-------------- On RHEL/CentOS 6/5 and Fedora --------------
 iptables -A INPUT -p tcp -m tcp --dport 5666 -j ACCEPT

-------------- On RHEL/CentOS 8/7 and Fedora 19 Onwards --------------
 firewall-cmd --permanent --zone=public --add-port=5666/tcp

Kør følgende kommando for at gemme den nye iptables-regel, så den overlever ved genstart af systemet.

-------------- On RHEL/CentOS 6/5 and Fedora --------------
 service iptables save

Standard NRPE-konfigurationsfilen, der blev installeret, har flere kommandodefinitioner, der vil blive brugt til at overvåge denne maskine. Eksempelkonfigurationsfilen placeret på.

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

Følgende er standardkommandodefinitionerne, der er placeret i bunden af konfigurationsfilen. Indtil videre antager vi, at du bruger disse kommandoer. Du kan kontrollere dem ved hjælp af følgende kommandoer.

# /usr/local/nagios/libexec/check_nrpe -H localhost -c check_users

USERS OK - 1 users currently logged in |users=1;5;10;0
# /usr/local/nagios/libexec/check_nrpe -H localhost -c check_load

OK - load average: 3.90, 4.37, 3.94|load1=3.900;15.000;30.000;0; load5=4.370;10.000;25.000;0; load15=3.940;5.000;20.000;0;
# /usr/local/nagios/libexec/check_nrpe -H localhost -c check_hda1

DISK OK - free space: /boot 154 MB (84% inode=99%);| /boot=29MB;154;173;0;193
# /usr/local/nagios/libexec/check_nrpe -H localhost -c check_total_procs

PROCS CRITICAL: 297 processes
# /usr/local/nagios/libexec/check_nrpe -H localhost -c check_zombie_procs

PROCS OK: 0 processes with STATE = Z

Du kan redigere og tilføje nye kommandodefinitioner ved at redigere NRPE-konfigurationsfilen. Endelig har du installeret og konfigureret NRPE-agent på Remote Linux Host. Nu er det tid til at installere en NRPE-komponent og tilføje nogle tjenester på din Nagios Monitoring Server ...

Log nu ind på din Nagios Monitoring Server. Her skal du gøre følgende:

  1. Installer check_nrpe-pluginet.
  2. Opret en Nagios-kommandodefinition ved hjælp af check_nrpe-pluginet.
  3. Opret Nagios-vært og tilføj servicedefinitioner til overvågning af den eksterne Linux-vært.

Gå til nagios-downloadmappen, og download det nyeste NRPE-plugin med wget-kommandoen.

 cd /root/nagios
 wget https://github.com/NagiosEnterprises/nrpe/releases/download/nrpe-3.2.1/nrpe-3.2.1.tar.gz

Pak NRPE-kildekoden tarball ud.

 tar xzf nrpe-3.2.1.tar.gz
 cd nrpe-3.2

Kompilér og installer NRPE-tilføjelsen.

 ./configure
 make all
 make install-daemon

Sørg for, at check_nrpe-pluginet kan kommunikere med NRPE-dæmonen på den eksterne Linux-vært. Tilføj IP-adressen i nedenstående kommando med IP-adressen til din Remote Linux-vært.

 /usr/local/nagios/libexec/check_nrpe -H <remote_linux_ip_address>

Du får en streng tilbage, der viser dig, hvilken version af NRPE der er installeret på fjernværten, som denne:

NRPE v3.2

Hvis du modtager en plugin-timeout-fejl, skal du kontrollere følgende ting.

  1. Sørg for, at din firewall ikke blokerer kommunikationen mellem den eksterne vært og overvågningsværten.
  2. Sørg for, at NRPE-dæmonen er installeret korrekt under xinetd.
  3. Sørg for, at den eksterne Linux-værtsfirewall-regler blokerer overvågningsserveren fra at kommunikere til NRPE-dæmonen.

Tilføjelse af Remote Linux Host til Nagios Monitoring Server

For at tilføje en ekstern vært skal du oprette to nye filer "hosts.cfg" og "services.cfg" under "/ usr/local/nagios/etc /" placering.

 cd /usr/local/nagios/etc/
 touch hosts.cfg
 touch services.cfg

Tilføj nu disse to filer til Nagios hovedkonfigurationsfil. Åbn nagios.cfg-fil med en hvilken som helst editor.

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

Tilføj nu de to nyoprettede filer som vist nedenfor.

# You can specify individual object config files as shown below:
cfg_file=/usr/local/nagios/etc/hosts.cfg
cfg_file=/usr/local/nagios/etc/services.cfg

Åbn nu hosts.cfg-filen, og tilføj standardværtsskabelonnavnet og definer eksterne værter som vist nedenfor. Sørg for at udskifte værtsnavn, alias og adresse med dine eksterne værtsserveroplysninger.

 vi /usr/local/nagios/etc/hosts.cfg
## Default Linux Host Template ##
define host{
name                            linux-box               ; Name of this template
use                             generic-host            ; Inherit default values
check_period                    24x7        
check_interval                  5       
retry_interval                  1       
max_check_attempts              10      
check_command                   check-host-alive
notification_period             24x7    
notification_interval           30      
notification_options            d,r     
contact_groups                  admins  
register                        0                       ; DONT REGISTER THIS - ITS A TEMPLATE
}

## Default
define host{
use                             linux-box               ; Inherit default values from a template
host_name                       tecmint		        ; The name we're giving to this server
alias                           CentOS 6                ; A longer name for the server
address                         5.175.142.66            ; IP address of Remote Linux host
}

Næste åbn filen services.cfg, og tilføj følgende tjenester, der skal overvåges.

 vi /usr/local/nagios/etc/services.cfg
define service{
        use                     generic-service
        host_name               tecmint
        service_description     CPU Load
        check_command           check_nrpe!check_load
        }

define service{
        use                     generic-service
        host_name               tecmint
        service_description     Total Processes
        check_command           check_nrpe!check_total_procs
        }

define service{
        use                     generic-service
        host_name               tecmint
        service_description     Current Users
        check_command           check_nrpe!check_users
        }

define service{
        use                     generic-service
        host_name               tecmint
        service_description     SSH Monitoring
        check_command           check_nrpe!check_ssh
        }

define service{
        use                     generic-service
        host_name               tecmint
        service_description     FTP Monitoring
        check_command           check_nrpe!check_ftp
        }

Nu skal NRPE-kommandodefinition oprettes i commands.cfg-filen.

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

Tilføj følgende NRPE-kommandodefinition i bunden af filen.

###############################################################################
# NRPE CHECK COMMAND
#
# Command to use NRPE to check remote host systems
###############################################################################

define command{
        command_name check_nrpe
        command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
        }

Endelig skal du kontrollere Nagios Configuration-filer for eventuelle fejl.

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

Total Warnings: 0
Total Errors:   0

Genstart Nagios:

 service nagios restart

Det er det. Gå nu til Nagios Monitoring Web-interface på “http:/Din-server-IP-adresse/nagios” eller “http:/FQDN/nagios” og angiv brugernavnet “nagiosadmin” og adgangskode. Kontroller, at Remote Linux Host blev tilføjet og overvåges.

Det er det! for nu vil jeg i vores kommende artikel vise dig, hvordan du tilføjer Windows-vært til Nagios overvågningsserver. Hvis du har problemer, mens du tilføjer fjernværten til Nagios. Du bedes kommentere dine forespørgsler eller problemer via kommentarsektionen, indtil da hold øje med linux-console.net for flere sådanne værdifulde artikler.