Nagios je bezplatný monitorovací nástroj s otevřeným zdrojovým kódem, který nám pomáhá monitorovat služby a aplikace běžící na Windows, Linuxu, routerech a dalších síťových zařízeních.
Pomocí grafického rozhraní Nagios můžete sledovat základní služby (FTP, HTTP, SSH atd..) a atributy (zatížení systému, paměť, využití CPU atd.).
V tomto příspěvku uvidíme, jak nainstalovat Nagios na CentOS 8 / RHEL 8 a jak monitorovat aplikační služby pomocí pluginů Nagios.
Předpoklady
Nagios vyžaduje Web Server (httpd), PHP, kompilátory a vývojové knihovny.
Nainstalujte všechny balíčky jediným příkazem.
yum -y install httpd php gcc glibc glibc-common wget perl gd gd-devel unzip zip tar
Vytvořte uživatele a skupinu pro umožnění provádění externích příkazů prostřednictvím webového rozhraní. Přidejte uživatele a uživatele Apache, aby byli součástí vytvořené skupiny.
useradd nagios groupadd nagcmd usermod -a -G nagcmd nagios usermod -a -G nagcmd apache
Nainstalovat Nagios
Stáhněte si Nagios Core z oficiálních stránek pomocí terminálu.
cd /tmp/ wget https://assets.nagios.com/downloads/nagioscore/releases/nagios-4.4.5.tar.gz tar -zxvf nagios-4.4.5.tar.gz cd /tmp/nagios-4.4.5/
Zkompilujte a nainstalujte jádro Nagios na váš systém.
./configure --with-nagios-group=nagios --with-command-group=nagcmd make all make install make install-init make install-config make install-commandmode
Instalace webového rozhraní Nagios
Nainstalujte webové rozhraní Nagios pomocí následujícího příkazu.
make install-webconf
Vytvořte si uživatelský účet (nagiosadmin) pro webové rozhraní Nagios. Zapamatujte si heslo, které jste tomuto uživateli nastavili – budete ho potřebovat později.
htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
Restartujte webový server Apache.
systemctl restart httpd systemctl enable httpd
Konfigurovat Nagios
Nagios umístí konfigurační soubory do adresáře /usr/local/nagios/etc. Výchozí konfigurace by měla pro Nagios fungovat dobře.
Než budeme pokračovat, provedeme pouze jednu změnu.
Upravte konfigurační soubor /usr/local/nagios/etc/objects/contacts.cfg a změňte e-mailovou adresu spojenou s definicí kontaktu nagiosadmin na svou e-mailovou adresu pro příjem upozornění.
vi /usr/local/nagios/etc/objects/contacts.cfg
Chcete-li dostávat oznámení, nahraďte pole e-mailové adresy.
define contact { contact_name nagiosadmin ; Short name of user use generic-contact ; Inherit default values from generic-contact template (defined above) alias Nagios Admin ; Full name of user email [email protected] ; <<***** CHANGE THIS TO YOUR EMAIL ADDRESS ****** }
Nainstalujte pluginy Nagios
Stáhněte si pluginy Nagios do adresáře /tmp a rozbalte jej.
cd /tmp wget https://nagios-plugins.org/download/nagios-plugins-2.2.1.tar.gz tar -zxvf nagios-plugins-2.2.1.tar.gz cd /tmp/nagios-plugins-2.2.1/
Zkompilujte a nainstalujte pluginy Nagios.
./configure --with-nagios-user=nagios --with-nagios-group=nagios make make install
Spustit Nagios
Ověřte ukázkové konfigurační soubory Nagios.
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
Výstup:
Nagios Core 4.4.5 Copyright (c) 2009-present Nagios Core Development Team and Community Contributors Copyright (c) 1999-2009 Ethan Galstad Last Modified: 2019-08-20 License: GPL Website: https://www.nagios.org Reading configuration data... Read main config file okay... Read object config files okay... Running pre-flight check on configuration data... Checking objects... Checked 8 services. Checked 1 hosts. Checked 1 host groups. Checked 0 service groups. Checked 1 contacts. Checked 1 contact groups. Checked 24 commands. Checked 5 time periods. Checked 0 host escalations. Checked 0 service escalations. Checking for circular paths... Checked 1 hosts Checked 0 service dependencies Checked 0 host dependencies Checked 5 timeperiods Checking global event handlers... Checking obsessive compulsive processor commands... Checking misc settings... Total Warnings: 0 Total Errors: 0 Things look okay - No serious problems were detected during the pre-flight check
Pokud nejsou žádné chyby, spusťte službu Nagios.
systemctl start nagios
Povolte Nagios při spuštění systému.
systemctl enable nagios
Zkontrolujte stav služby Nagios pomocí níže uvedeného příkazu.
systemctl status nagios
SELinux
Podívejte se, zda je SELinux v režimu vynucování.
getenforce
Změňte režim SELinux na Permisivní nebo jej zakažte.
setenforce 0
Chcete-li, aby byl tento režim SELinux trvalý, upravte /etc/selinux/config a restartujte systém.
Firewall
Vytvořte pravidlo brány firewall pro povolení přístupu webového serveru přes bránu firewall.
firewall-cmd --permanent --add-service=http firewall-cmd --reload
Přístup k webovému rozhraní Nagios
Přejděte na webové rozhraní Nagios pomocí níže uvedené adresy URL.
http://ip-add-re-ss/nagios/Pro přístup k webovému rozhraní Nagios budete muset použít uživatelské jméno (nagiosadmin) a heslo, které jste zadali dříve.
Konzole Nagios bude vypadat níže.
Po přihlášení do webového rozhraní Nagios klikněte na Hosts v levém podokně a zobrazí se seznam systémů monitorovaných systémem Nagios.
Protože jsme do Nagios nepřidali žádného hostitele, monitoruje pouze samotného localhost.
Kliknutím na Služby v levém podokně zkontrolujte stav všech služeb, které jsou monitorovány pomocí Nagios.
Závěr
V tomto příspěvku jste se naučili, jak nainstalovat Nagios na CentOS 8 / RHEL 8 a nakonfigurovat Nagios tak, aby monitoroval služby pomocí zásuvných modulů Nagios. V tuto chvíli Nagios monitoruje samotný server. Vzdálený systém Linux můžete také monitorovat pomocí Nagios s doplňkem NRPE.