Jak přidat vzdálený Linux na server Nagios pomocí pluginu NRPE
V první části článku série Nagios jsme podrobně vysvětlili, jak nainstalovat a nakonfigurovat nejnovější verzi Nagios Core a Nagios Plugins v distribucích založených na RHEL, jako je např. jako CentOS Stream, Rocky Linux, AlmaLinux a Fedora.
V tomto článku vám ukážeme, jak přidat počítač Remote Linux a jeho služby k hostiteli Nagios Core Monitoring pomocí NRPE (Nagios Remote Plugin Executor).
Doufáme, že již máte Nagios Core nainstalované a běží správně. Pokud ne, použijte k instalaci do systému následující instalační průvodce.
Pokud plánujete přidat vzdáleného hostitele Windows na monitorovací server Nagios, použijte následující průvodce:
Jakmile jej nainstalujete, můžete pokračovat v instalaci agenta NRPE na hostitele Remote Linux. Než se vydáte dále, dovolte nám, abychom vám poskytli krátký popis NRPE.
Co je NRPE?
Plugin NRPE (Nagios Remote Plugin Executor) vám umožňuje sledovat jakékoli vzdálené služby Linux/Unix, síťová zařízení nebo zdroje jako Zatížení CPU, Swap, Využití paměti, Online uživatelé atd. v místním/vzdáleném systému Linux stroje.
Koneckonců, tyto místní zdroje nejsou většinou vystaveny externím počítačům, na vzdálených počítačích musí být nainstalován a konfigurován agent NRPE.
Poznámka: Doplněk NRPE vyžaduje, aby byly na vzdáleném počítači se systémem Linux nainstalovány Nagios Plugins. Bez nich nebude démon NRPE fungovat a nebude nic monitorovat.
Instalace pluginu NRPE na serveru Nagios a vzdáleném hostiteli Linuxu
Chcete-li použít NRPE, budete muset provést některé další úkoly na Nagios Monitoring Server a Remote Linux Host, kde je NRPE nainstalován. na. Obě části instalace pokryjeme samostatně.
Instalace pluginů Nagios a NRPE na vzdáleném hostiteli Linuxu
Pomocí níže uvedených pokynů nainstalujte Nagios Plugins a démona NRPE na Remote Linux Host.
Krok 1: Nainstalujte požadované závislosti
Potřebujeme nainstalovat požadované knihovny jako gcc, glibc, glibc-common a GD a jejich vývojové knihovny pomocí správce yum balíčků.
yum install -y gcc glibc glibc-common gd gd-devel make net-snmp openssl-devel tar wget
Krok 2: Vytvořte uživatele Nagios
Vytvořte nový uživatelský účet nagios a nastavte heslo.
useradd nagios
passwd nagios
Krok 3: Nainstalujte pluginy Nagios
Vytvořte adresář pro instalaci pluginu nagios a všechna jeho budoucí stahování.
mkdir /root/nagios
cd /root/nagios
Nyní si stáhněte nejnovější balíček Nagios Plugins pomocí příkazu wget.
wget https://nagios-plugins.org/download/nagios-plugins-2.3.3.tar.gz
Krok 4: Extrahujte pluginy Nagios
Spusťte následující příkaz tar a extrahujte zdrojový kód tarball.
tar -xvf nagios-plugins-2.3.3.tar.gz
Poté se v tomto adresáři objeví extrahování jedné nové složky.
ls -l
total 2724
drwxr-xr-x. 15 root root 4096 Mar 11 2020 nagios-plugins-2.3.3
-rw-r--r--. 1 root root 2782610 Mar 11 2020 nagios-plugins-2.3.3.tar.gz
Krok 5: Zkompilujte a nainstalujte pluginy Nagios
Dále zkompilujte a nainstalujte nagios pluginy pomocí následujících příkazů
cd nagios-plugins-2.3.3
./configure
make
make install
Nastavte oprávnění pro adresář zásuvných modulů pomocí příkazu chown.
chown nagios.nagios /usr/local/nagios
chown -R nagios.nagios /usr/local/nagios/libexec
Krok 6: Instalace pluginu NRPE
Chcete-li nainstalovat plugin nrpe, nejprve si stáhněte nejnovější plugin NRPE nebo použijte následující příkaz wget.
cd /root/nagios
wget https://github.com/NagiosEnterprises/nrpe/releases/download/nrpe-4.0.2/nrpe-4.0.2.tar.gz
Rozbalte tarball zdrojového kódu NRPE.
tar xzf nrpe-4.0.2.tar.gz
cd nrpe-4.0.2
Zkompilujte a nainstalujte doplněk NRPE.
./configure
make all
Poznámka: Pokud se při spuštění příkazu „vytvořit vše“ zobrazí následující chyba:
In file included from ../include/common.h:34,
from ./nrpe.c:38:
/usr/include/openssl/err.h:413:15: note: declared here
413 | unsigned long ERR_get_error_line_data(const char **file, int *line,
| ^~~~~~~~~~~~~~~~~~~~~~~
/usr/bin/ld: /tmp/ccWQBjHb.o: in function `init_ssl':
/root/nagios/nrpe-4.0.2/src/./nrpe.c:474: undefined reference to `get_dh2048'
collect2: error: ld returned 1 exit status
make[1]: *** [Makefile:48: nrpe] Error 1
Poté musíte deaktivovat SSL pro konfiguraci nrpe pomocí parametru ./configure --disable-ssl
, jak je znázorněno.
./configure --disable-ssl
make all
Dále nainstalujte démona pluginu NRPE a ukázkové konfigurační soubory.
make install-plugin
make install-daemon
make install-config
Nainstalujte démona NRPE pod systemd jako službu.
make install-init
Krok 7: Konfigurace pluginu NRPE
Nyní otevřete soubor /usr/local/nagios/etc/nrpe.cfg a přidejte místního hostitele a IP adresu Nagios Monitorovací server.
allowed_hosts=127.0.0.1,192.168.102
Dále povolte a restartujte službu nrpe.
systemctl enable nrpe
systemctl restart nrpe
Krok 8: Otevřete port NRPE ve Firewallu
Ujistěte se, že Firewall na místním počítači umožní démonovi NRPE přístup ze vzdálených serverů. Chcete-li to provést, spusťte následující příkaz iptables.
firewall-cmd --zone=public --add-port=5666/tcp
firewall-cmd --zone=public --add-port=5666/tcp --permanent
Krok 8: Lokálně ověřte démona NRPE
Spuštěním následujícího příkazu netstat ověřte, že démon NRPE funguje správně pod systemd.
# netstat -at | grep nrpe
OR
netstat -na | grep "5666"
tcp 0 0 0.0.0.0:nrpe 0.0.0.0:* LISTEN
tcp6 0 0 [::]:nrpe [::]:* LISTEN
Pokud získáte výstup podobný výše uvedenému, znamená to, že funguje správně. Pokud ne, zkontrolujte následující věci.
- Ujistěte se, že je položka nrpe správně přidána do souboru/etc/services.
- allowed_hosts obsahuje záznam pro „nagios_ip_address“ v souboru /usr/local/nagios/etc/nrpe.cfg.
- Zkontrolujte chyby v souborech systémového protokolu o nrpe a opravte tyto problémy.
Dále ověřte, zda démon NRPE funguje správně, spuštěním příkazu „check_nrpe“, který byl dříve nainstalován pro účely testování.
/usr/local/nagios/libexec/check_nrpe -H 127.0.0.1
Na obrazovce se zobrazí následující řetězec, který vám ukáže, jaká verze NRPE je nainstalována:
NRPE v4.0.2
Krok 9: Přizpůsobte příkazy NRPE
Výchozí konfigurační soubor NRPE, který byl nainstalován, má několik definic příkazů, které budou použity k monitorování tohoto počítače. Ukázkový konfigurační soubor se nachází na adrese.
vi /usr/local/nagios/etc/nrpe.cfg
Níže jsou uvedeny výchozí definice příkazů, které jsou umístěny ve spodní části konfiguračního souboru. Prozatím předpokládáme, že používáte tyto příkazy. Můžete je zkontrolovat pomocí následujících příkazů.
/usr/local/nagios/libexec/check_nrpe -H 127.0.0.1 -c check_users
USERS OK - 1 users currently logged in |users=1;5;10;0
/usr/local/nagios/libexec/check_nrpe -H 127.0.0.1 -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 127.0.0.1 -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 127.0.0.1 -c check_total_procs
PROCS CRITICAL: 297 processes
/usr/local/nagios/libexec/check_nrpe -H 127.0.0.1 -c check_zombie_procs
PROCS OK: 0 processes with STATE = Z
Můžete upravit a přidat nové definice příkazů úpravou konfiguračního souboru NRPE. Nakonec jste úspěšně nainstalovali a nakonfigurovali agenta NRPE na Vzdáleném hostiteli Linuxu.
Nyní je čas nainstalovat komponentu NRPE a přidat nějaké služby na váš Nagios Monitoring Server…
Instalace NRPE na Nagios Monitoring Server
Nyní se přihlaste ke svému Nagios Monitoring Server. Zde budete muset provést následující věci:
- Nainstalujte plugin check_nrpe.
- Vytvořte definici příkazu Nagios pomocí pluginu check_nrpe.
- Vytvořte hostitel Nagios a přidejte definice služeb pro monitorování vzdáleného hostitele Linux.
Krok 1: Nainstalujte NRPE Plugin do Nagios
Přejděte do adresáře pro stahování nagios a stáhněte si nejnovější NRPE Plugin nebo použijte následující příkaz wget.
cd /root/nagios
wget https://github.com/NagiosEnterprises/nrpe/releases/download/nrpe-4.0.2/nrpe-4.0.2.tar.gz
Rozbalte tarball zdrojového kódu NRPE.
tar xzf nrpe-4.0.2.tar.gz
cd nrpe-4.0.2
Zkompilujte a nainstalujte doplněk NRPE.
./configure
make all
make install-plugin
make install-daemon
make install-init
Krok 2: Vzdáleně ověřte démona NRPE
Ujistěte se, že plugin check_nrpe může komunikovat s démonem NRPE na vzdáleném hostiteli Linuxu. Přidejte IP adresu do příkazu níže s IP adresou svého hostitele Vzdáleného Linuxu.
/usr/local/nagios/libexec/check_nrpe -H <remote_linux_ip_address>
Získáte zpět řetězec, který vám ukáže, jaká verze NRPE je nainstalována na vzdáleném hostiteli, takto:
NRPE v4.0.2
Pokud se zobrazí chyba vypršení časového limitu pluginu, zkontrolujte následující věci.
- Ujistěte se, že váš firewall neblokuje komunikaci mezi vzdáleným hostitelem a sledovacím hostitelem.
- Ujistěte se, že je démon NRPE správně nainstalován pod systemd.
- Ujistěte se, že pravidla brány firewall hostitele vzdáleného Linuxu blokují monitorovací server v komunikaci s démonem NRPE.
Přidání vzdáleného hostitele Linuxu na server Nagios Monitoring Server
Chcete-li přidat vzdáleného hostitele, musíte vytvořit dva nové soubory „hosts.cfg“ a „services.cfg“ pod „/usr/local/nagios/ atd/” umístění.
Krok 1: Vytvoření souboru hostitele a služeb Nagios
cd /usr/local/nagios/etc/
touch hosts.cfg
touch services.cfg
Nyní přidejte tyto dva soubory do hlavního konfiguračního souboru Nagios. Otevřete soubor nagios.cfg v libovolném editoru.
vi /usr/local/nagios/etc/nagios.cfg
Nyní přidejte dva nově vytvořené soubory, jak je znázorněno níže.
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
Krok 2: Konfigurace souboru hostitele a služeb Nagios
Nyní otevřete soubor hosts.cfg a přidejte výchozí název šablony hostitele a definujte vzdálené hostitele, jak je uvedeno níže. Nezapomeňte nahradit název_hostitele, alias a adresu podrobnostmi o vzdáleném hostitelském serveru.
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
}
Dále otevřete soubor services.cfg a přidejte následující služby, které chcete monitorovat.
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
}
Krok 3: Konfigurace definice příkazu NRPE
Nyní je potřeba vytvořit definici příkazu NRPE v souboru commands.cfg.
vi /usr/local/nagios/etc/objects/commands.cfg
Přidejte následující definici příkazu NRPE na konec souboru.
###############################################################################
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$
}
Nakonec zkontrolujte konfigurační soubory Nagios, zda neobsahují chyby.
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
Total Warnings: 0
Total Errors: 0
Nakonec restartujte Nagios, abyste použili nedávné změny konfigurace:
systemctl restart nagios
Krok 4: Monitorování vzdáleného Linuxu v Nagios
Nyní přejděte do rozhraní Nagios Monitoring Web na adrese „http://IP-adresa-vašeho-serveru/nagios“ nebo „http://FQDN/nagios ” a zadejte uživatelské jméno „nagiosadmin “ a heslo. Zkontrolujte, zda byl přidán Vzdálený hostitel Linux a zda je monitorován.
Závěr
A je to! prozatím vám ve svém nadcházejícím článku ukážu, jak přidat hostitele Windows na Nagios monitorovací server. Pokud při přidávání vzdáleného hostitele do Nagios narazíte na nějaké potíže.
Vyjádřete se ke svým dotazům nebo problémům prostřednictvím sekce komentářů a do té doby zůstaňte naladěni na linux-console.net, kde najdete více takových cenných článků.