Jinsi ya Kuongeza Seva ya Linux kwa Seva ya Ufuatiliaji ya Nagios Kwa Kutumia Programu-jalizi ya NRPE


Katika sehemu yetu ya kwanza ya kifungu hiki, tumeelezea kwa undani jinsi ya kusakinisha na kusanidi Nagios 4.4.5 ya hivi karibuni kwenye RHEL/CentOS 8/7 na seva ya Fedora 30. Katika nakala hii, tutakuonyesha jinsi ya kuongeza mashine ya Linux ya Mbali na huduma zake kwa mwenyeji wa Ufuatiliaji wa Nagios kwa kutumia wakala wa NRPE.

Tunatumahi kuwa tayari una Nagios iliyosakinishwa na inayoendeshwa ipasavyo. Ikiwa sivyo, tafadhali tumia mwongozo ufuatao wa usakinishaji ili uisakinishe kwenye mfumo.

  1. Jinsi ya kusakinisha Nagios 4.4.5 kwenye RHEL/CentOS 8/7 na Fedora 30
  2. Jinsi ya Kuongeza Seva ya Windows kwenye Seva ya Ufuatiliaji ya Nagios

Mara tu unaposakinisha, unaweza kuendelea zaidi ili kusakinisha wakala wa NRPE kwenye seva pangishi yako ya Remote Linux. Kabla ya kwenda mbele zaidi, hebu tukupe maelezo mafupi ya NRPE.

NRPE ni nini?

Programu-jalizi ya NRPE (Nagios Remote Plugin Executor) hukuruhusu kufuatilia huduma zozote za mbali za Linux/Unix au vifaa vya mtandao. Programu jalizi hii ya NRPE huruhusu Nagios kufuatilia rasilimali zozote za ndani kama vile upakiaji wa CPU, Kubadilishana, matumizi ya Kumbukumbu, watumiaji wa mtandaoni, n.k. kwenye mashine za Linux za mbali. Baada ya yote, rasilimali hizi za ndani hazionyeshwa zaidi kwa mashine za nje, wakala wa NRPE lazima asakinishwe na kusanidiwa kwenye mashine za mbali.

Kumbuka: Nyongeza ya NRPE inahitaji kuwa Nagios Plugins lazima isakinishwe kwenye mashine ya mbali ya Linux. Bila hizi, daemoni ya NRPE haitafanya kazi na haitafuatilia chochote.

Ufungaji wa programu-jalizi ya NRPE

Ili kutumia NRPE, utahitaji kufanya baadhi ya kazi za ziada kwenye Seva Nagios Monitoring Host na Remote Linux Host ambayo NRPE ilisakinisha. Tutashughulikia sehemu zote mbili za ufungaji kando.

Tunadhania kuwa unasakinisha NRPE kwenye seva pangishi inayoauni vifungashio vya TCP na daemoni ya Xinted iliyosakinishwa juu yake. Leo, usambazaji mwingi wa kisasa wa Linux umesakinishwa hizi mbili kwa chaguo-msingi. Ikiwa sivyo, tutaisakinisha baadaye wakati wa usakinishaji inapohitajika.

Tafadhali tumia maagizo yaliyo hapa chini ili kusakinisha Nagios Plugins na daemon ya NRPE kwenye Seva pangishi ya Linux ya Mbali.

Tunahitaji kusakinisha maktaba zinazohitajika kama vile gcc, glibc, glibc-common na GD na maktaba zake za usanidi kabla ya kusakinisha.

 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

Unda akaunti mpya ya mtumiaji wa nagios na uweke nenosiri.

 useradd nagios
 passwd nagios

Unda saraka ya usakinishaji na upakuaji wake wote wa siku zijazo.

 cd /root/nagios

Sasa pakua kifurushi cha hivi karibuni cha Nagios Plugins 2.1.2 na amri ya wget.

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

Tekeleza tar amri ifuatayo ili kutoa tarball ya msimbo wa chanzo.

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

Baada ya, kutoa folda moja mpya itaonekana kwenye saraka hiyo.

 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

Ifuatayo, kusanya na usakinishe kwa kutumia amri zifuatazo

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

Weka ruhusa kwenye saraka ya programu-jalizi.

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

Wengi wa mifumo, ni kwa default imewekwa. Ikiwa sivyo, sakinisha xinetd kifurushi kwa kutumia yum amri ifuatayo.

 yum install xinetd

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

Pakua vifurushi vya hivi karibuni vya NRPE Plugin 3.2 na amri ya wget.

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

Fungua tarball ya msimbo wa chanzo cha NRPE.

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

Kusanya na kusanikisha nyongeza ya NRPE.

 ./configure
 make all

Kisha, sakinisha daemoni ya programu-jalizi ya NRPE, na sampuli ya faili ya usanidi ya daemon.

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

Sakinisha daemon ya NRPE chini ya xinetd kama huduma.

 make install-xinetd
OR
 make install-inetd

Sasa fungua faili /etc/xinetd.d/nrpe na uongeze localhost na anwani ya IP ya Seva ya Ufuatiliaji ya Nagios.

only_from = 127.0.0.1 localhost <nagios_ip_address>

Ifuatayo, fungua faili /etc/services ongeza ingizo lifuatalo la daemoni ya NRPE chini ya faili.

nrpe            5666/tcp                 NRPE

Anzisha tena huduma ya xinetd.

 service xinetd restart

Tekeleza amri ifuatayo ili kuthibitisha daemoni ya NRPE inafanya kazi kwa usahihi chini ya xinetd.

 netstat -at | grep nrpe

tcp        0      0 *:nrpe                      *:*                         LISTEN

Ikiwa utapata matokeo sawa na hapo juu, inamaanisha kuwa inafanya kazi kwa usahihi. Ikiwa sivyo, hakikisha kuangalia mambo yafuatayo.

  1. Angalia kuwa umeongeza ingizo la nrpe kwa usahihi katika faili ya /etc/services
  2. The only_from ina ingizo la “nagios_ip_address” katika faili ya /etc/xinetd.d/nrpe.
  3. xinetd imesakinishwa na kuanzishwa.
  4. Angalia hitilafu katika faili za kumbukumbu za mfumo kuhusu xinetd au nrpe na urekebishe matatizo hayo.

Kisha, thibitisha kuwa daemoni ya NRPE inafanya kazi vizuri. Tekeleza amri ya check_nrpe ambayo ilisakinishwa mapema kwa madhumuni ya majaribio.

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

Utapata kamba ifuatayo kwenye skrini, inakuonyesha ni toleo gani la NRPE limesakinishwa:

NRPE v3.2

Hakikisha kuwa Firewall kwenye mashine ya ndani itaruhusu daemoni ya NRPE kufikiwa kutoka kwa seva za mbali. Ili kufanya hivyo, endesha amri iptables ifuatayo.

-------------- 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

Tekeleza amri ifuatayo ili Hifadhi sheria mpya ya iptables ili iweze kuishi wakati wa kuwasha tena mfumo.

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

Faili ya usanidi chaguo-msingi ya NRPE ambayo imesakinishwa ina ufafanuzi kadhaa wa amri ambazo zitatumika kufuatilia mashine hii. Sampuli ya faili ya usanidi iliyoko.

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

Zifuatazo ni ufafanuzi wa amri chaguo-msingi ambazo ziko chini ya faili ya usanidi. Kwa wakati huu, tunadhania unatumia amri hizi. Unaweza kuziangalia kwa kutumia amri zifuatazo.

# /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

Unaweza kuhariri na kuongeza ufafanuzi mpya wa amri kwa kuhariri faili ya usanidi ya NRPE. Hatimaye, umefaulu kusakinisha na kusanidi wakala wa NRPE kwenye Kipangishi cha Remote Linux. Sasa ni wakati wa kusakinisha kijenzi cha NRPE na kuongeza baadhi ya huduma kwenye Seva yako ya Ufuatiliaji ya Nagios...

Sasa ingia kwenye Seva yako ya Ufuatiliaji ya Nagios. Hapa utahitaji kufanya mambo yafuatayo:

  1. Sakinisha programu-jalizi ya check_nrpe.
  2. Unda ufafanuzi wa amri ya Nagios ukitumia programu-jalizi ya check_nrpe.
  3. Unda seva pangishi ya Nagios na uongeze ufafanuzi wa huduma kwa ajili ya ufuatiliaji wa seva pangishi ya mbali ya Linux.

Nenda kwenye saraka ya upakuaji ya nagios na upakue programu-jalizi ya hivi karibuni ya NRPE na amri ya wget.

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

Fungua tarball ya msimbo wa chanzo cha NRPE.

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

Kusanya na kusanikisha nyongeza ya NRPE.

 ./configure
 make all
 make install-daemon

Hakikisha kuwa programu-jalizi ya check_nrpe inaweza kuwasiliana na daemoni ya NRPE kwenye seva pangishi ya mbali ya Linux. Ongeza anwani ya IP katika amri iliyo hapa chini na anwani ya IP ya seva pangishi yako ya Remote Linux.

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

Utapata kamba ambayo inakuonyesha ni toleo gani la NRPE limesakinishwa kwenye mwenyeji wa mbali, kama hii:

NRPE v3.2

Ikiwa utapokea hitilafu ya kuisha kwa programu-jalizi, basi angalia mambo yafuatayo.

  1. Hakikisha ngome yako haizuii mawasiliano kati ya seva pangishi ya mbali na seva pangishi inayofuatilia.
  2. Hakikisha kuwa daemoni ya NRPE imesakinishwa ipasavyo chini ya xinetd.
  3. Hakikisha kuwa sheria za ngome za mwenyeji wa Linux zinazozuia seva ya ufuatiliaji kuwasiliana na daemon ya NRPE.

Inaongeza Seva ya Mbali ya Linux kwa Seva ya Ufuatiliaji ya Nagios

Ili kuongeza seva pangishi ya mbali unahitaji kuunda faili mbili mpya hosts.cfg na services.cfg chini ya eneo la /usr/local/nagios/etc/.

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

Sasa ongeza faili hizi mbili kwenye faili kuu ya usanidi ya Nagios. Fungua faili ya nagios.cfg na kihariri chochote.

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

Sasa ongeza faili mbili mpya zilizoundwa kama inavyoonyeshwa hapa chini.

# 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

Sasa fungua faili ya hosts.cfg na uongeze jina la kiolezo cha mpangishi chaguomsingi na ubainishe seva pangishi za mbali kama inavyoonyeshwa hapa chini. Hakikisha umebadilisha jina_la_mpangishi, lakabu na anwani na maelezo ya seva mwenyeji wako wa mbali.

 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
}

Ifuatayo fungua faili ya services.cfg na uongeze huduma zifuatazo ili kufuatiliwa.

 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
        }

Sasa ufafanuzi wa amri ya NRPE unahitaji kuundwa katika faili ya commands.cfg.

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

Ongeza ufafanuzi wa amri ifuatayo ya NRPE chini ya faili.

###############################################################################
# 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$
        }

Hatimaye, thibitisha faili za Usanidi wa Nagios kwa hitilafu zozote.

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

Total Warnings: 0
Total Errors:   0

Anzisha tena Nagios:

 service nagios restart

Ndivyo ilivyo. Sasa nenda kwenye kiolesura cha Wavuti cha Nagios Monitoring katika \http://Your-server-IP-address/nagios au \http://FQDN/nagios na Upe jina la mtumiaji \nagiosadmin na nenosiri. Hakikisha kuwa Kidhibiti cha Mbali Linux Host iliongezwa na inafuatiliwa.

Ni hayo tu! kwa sasa, katika nakala yetu inayokuja nitakuonyesha jinsi ya kuongeza mwenyeji wa Windows kwenye Seva ya ufuatiliaji ya Nagios. Iwapo unakabiliwa na matatizo yoyote unapoongeza seva pangishi ya mbali kwa Nagios. Tafadhali toa maoni yako maswali au tatizo kupitia sehemu ya maoni, hadi hapo endelea kuwa karibu na linux-console.net kwa makala muhimu kama haya.