GNU/Linux >> Znalost Linux >  >> Debian

Jak nainstalovat Icinga 2 a Icinga Web 2 na Debian 9

Icinga 2 je open-source monitorovací systém, který je vysoce škálovatelný a rozšiřitelný. Dokáže monitorovat rozsáhlá a složitá prostředí na více místech. Kontroluje dostupnost vašich síťových zdrojů, upozorňuje uživatele na výpadky a generuje údaje o výkonu pro reportování. Jedná se o aplikaci pro monitorování sítě, kterou lze konfigurovat z webu a její funkčnost je založena především na programovacím jazyce PHP na straně serveru.

V podstatě monitoruje stav síťových protokolů, jako je HTTP, FTP, SMTP, IMAP nebo jiné síťové služby, hostuje zdroje, fyzické senzory, softwarové instalace, zátěž CPU, paměť, místo na disku a téměř všechna propojená síťová zařízení přes ICMP. nebo požadavky ping. Kromě toho jej lze snadno nakonfigurovat tak, aby upozorňoval správce systému nebo sítě prostřednictvím e-mailu, SMS, chatu nebo jiných typů upozornění na výpadek sítě, systémů, služeb nebo jiného souvisejícího síťového výpadku, a může také generovat grafiku o výpadcích sítě nebo výkonu.

V tomto článku vysvětlím, jak nainstalovat server Icinga2 s rozhraním Web 2 na náš nejnovější server Debian 9.3. Pojďme si projít pokyny krok za krokem, jak sestavit náš monitorovací systém.

Předpoklady

Než přistoupíme k instalaci, musíme se ujistit, že náš systém splňuje všechny softwarové požadavky pro kompilaci a instalaci aplikace. V prvním kroku aktualizujte svá systémová úložiště a softwarové balíčky vydáním níže uvedeného příkazu.

# apt update
# apt upgrade
# apt install bash-completion

Dále nastavte název hostitele pro váš server provedením následujícího příkazu. Přidal jsem icinga2 na můj název hostitele.

# hostnamectl set-hostname icinga2
# hostnamectl
Static hostname: icinga2
Icon name: computer-vm
Chassis: vm
Machine ID: 7f2b1120403449a3b27d2f40de770be2
Boot ID: 321481f419e94e6cb377ae804d9bab42
Virtualization: kvm
Operating System: Debian GNU/Linux 9 (stretch)
Kernel: Linux 4.9.0-4-amd64
Architecture: x86-64
# cat /etc/hostname
icinga2

Nakonec musíme restartovat náš server Debian, abychom mohli správně aplikovat aktualizace jádra a změnit název hostitele.

Instalovat zásobník LAMP

Jak již bylo zmíněno dříve, Icinga 2 je aplikace pro monitorování sítě napsaná v C++ a Icinga Web 2 je výkonný PHP framework pro webové aplikace, který přichází v čistém a redukovaném designu. Aby bylo možné spouštět jeho souborové skripty, musí být na serveru nainstalován a funkční webový server, jako je HTTP server Apache, a brána pro zpracování PHP. Nainstaloval jsem webový server Apache, MySQL a všechny požadované moduly PHP potřebné pro Icinga pomocí příkazu níže:

# apt install apache2 libapache2-mod-php7.0 php7.0-xml php7.0-opcache php7.0-xml php7.0-mbstring php7.0-json php7.0-curl php7.0-ldap php7.0-cli php7.0-gd php7.0-intl php7.0-readline php7.0-pgsql
# apt install mariadb-server mariadb-client php7.0-mysql

Spusťte/povolte službu Apache/MySQL.

# systemctl enable apache2 mariadb
# systemctl start apache2 mariadb
# systemctl status apache2 mariadb

Po instalaci Apache, MySQL a PHP můžete otestovat, zda je webový server v provozu, procházením IP serveru nebo můžete dokonce potvrdit testováním síťových připojení naslouchajícím na příslušných portech nebo službou pomocí příkazu netstat z konzoly. s právy root, jak je uvedeno níže:

# netstat -plan | grep :80
tcp6 0 0 :::80 :::* LISTEN 19097/apache2
tcp6 0 0 127.0.0.1:80 127.0.0.1:40780 TIME_WAIT -
# netstat -plan | grep mysql
tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN 14240/mysqld 
unix 2 [ ACC ] STREAM LISTENING 52783 14240/mysqld /var/run/mysqld/mysqld.sock

Vytvoření databáze MySQL pro Icinga2

Nejprve se musíme přihlásit do konzole MySQL a spustit následující příkaz k zabezpečení databáze MariaDB a nastavení hesla uživatele root:

# mysql_secure_installation

Nyní můžeme vytvořit dvě databáze, které může používat aplikace Icinga2 a uživatel s heslem pro správu těchto databází. Vytvořil jsem databázi konkrétně icingadb a icinga_users a udělená oprávnění pro uživatele icinga_user s heslem pro přístup k nim, jak je uvedeno níže:

~# mysql -u root -p
Enter password:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 12
Server version: 10.1.26-MariaDB-0+deb9u1 Debian 9.1

Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> create database icingadb;
Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> grant all privileges on icingadb.* to 'icinga_user'@'localhost' identified by 'password';
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> create database icinga_users;
Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> grant all privileges on icinga_users.* to 'icinga_user'@'localhost' identified by 'password';
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.01 sec)

Databáze icingadb je vytvořen pro webovou aplikaci icinga2 a databázi icinga_users je vytvořen pro ukládání uživatelských dat webového rozhraní Icinga2, skupin a dalších webových rozhraní.

Instalace Icinga2

Po dokončení instalace všech systémových požadavků můžeme přistoupit k instalaci aplikace Icinga2 spolu s modulem MySQL IDO. Jako externí databázi používáme MySQL. Potřebujeme tedy nainstalovat modul MySQL IDO, který se používá pro webové rozhraní Icinga2. Slouží k exportu všech konfiguračních a stavových informací do své databáze. Icinga 2 má předkompilované binární balíčky nabízené repozitáři Debianu 9.3. Instalaci lze tedy provést prostřednictvím jejich správce balíčků apt, jak je uvedeno níže:

# apt install icinga2 icinga2-ido-mysql

Během instalace se na obrazovce objeví řada výzev. Nejprve budete dotázáni, zda chcete nakonfigurovat a povolit Icinga 2 používat modul MySQL. Vyberte Yes z výzvy a stiskněte [enter] pokračujte podle obrázku níže.

V další výzvě budete dotázáni, zda chcete nakonfigurovat databázi pro icinga2-ido-mysql pomocí volby dbconfig-common. Zvolte No z výzvy a stiskněte [enter] klíč k dokončení instalace Icinga 2.

Po povolení tohoto modulu a vytvoření naší databáze musíme restartovat naši službu Icinga2.

# systemctl start icinga2.service
# systemctl status icinga2.service

Ujistěte se prosím, že konfigurační soubor IDO MySQL je správně nastaven se správnými přihlašovacími údaji DB.

# cat /etc/icinga2/features-enabled/ido-mysql.conf
/**
* The db_ido_mysql library implements IDO functionality
* for MySQL.
*/

library "db_ido_mysql"
object IdoMysqlConnection "ido-mysql" {
user = "icinga_user",
password = "password",
host = "localhost",
database = "icingadb"
}

Povolení seznamu funkcí

Ve výchozím nastavení Icinga2 umožňuje následující funkce. Spuštěním tohoto příkazu můžeme povolit jakoukoli další funkci v seznamu icinga2 feature enable <feature name> . Povolená nastavení můžeme potvrdit spuštěním tohoto příkazu, jak je uvedeno níže:

~# icinga2 feature list
Disabled features: api command compatlog debuglog gelf graphite influxdb livestatus opentsdb perfdata statusdata syslog
Enabled features: checker ido-mysql mainlog notification

The following features are enabled by default:

Checker: This feature enables the execution of checks.

Mainlog: This feature enables the logging.

Notification: This feature enables notification mechanism.

IDO-mysql:  Provides IDO module for the database.

Instalace modulu Icinga Web2 Plugin

Naším dalším krokem je instalace webového rozhraní a balíčků nástrojů příkazového řádku Icinga 2 z úložiště Debian 9.3 pomocí správce balíčků.

#apt install icingaweb2 icingacli

Po instalaci můžete restartovat démona Icinga 2, abyste vyzvedli všechny změny a ověřili stav aplikace, než budete pokračovat v konfigurační části.

# systemctl restart icinga2.service
# systemctl status icinga2.service
# systemctl restart apache2

Nyní nainstalujte schéma MySQL pro databázi Icinga provedením následujícího příkazu. Schéma databáze MySQL se nachází v adresáři /usr/share/icinga2-ido-mysql/schema/.

mysql -u root icingadb -p < /usr/share/icinga2-ido-mysql/schema/mysql.sql

Nakonec můžeme vygenerovat instalační token pro dokončení instalace pluginu Icinga web 2 prostřednictvím webového rozhraní.

# icingacli setup token create
The newly generated setup token is: c25b22acfc9f9094
# icingacli setup token show
The current setup token is: c25b22acfc9f9094

Konfigurace pluginu Icinga Web 2

Po vygenerování tokenu můžeme začít konfigurovat plugin Icinga Web 2 otevřením této adresy URL>> http://IP//icingaweb2/setup  ve vašem prohlížeči. Můžete procházet těmito snímky obrazovky, abyste v tom měli větší přehled.

Krok 1:Nastavení tokenu

Jako první krok vás požádá o poskytnutí tokenu vygenerovaného před zahájením fáze instalace. Pokud jste token nevygenerovali, můžete vygenerovat token podle pokynů na výše uvedeném snímku obrazovky a přejít k dalšímu kroku.

Krok 2:Výběr modulů Icinga Web2

Po poskytnutí tokenu se přesune do další sekce pro výběr modulů. Můžeme vybrat preferované moduly a přejít k dalšímu kroku.

Krok 3:Ověření nastavení PHP

Abychom mohli pokračovat dále, musíme nainstalovat chybějící moduly PHP a nastavit správné časové pásmo. Nainstaloval jsem chybějící modul PHP pomocí tohoto příkazu "apt install php7.0-pgsql" a restartoval Apache, aby se tyto změny projevily. Kromě toho můžete nastavit správné časové pásmo v konfiguračním souboru PHP /etc/php/7.0/apache2/php.ini . Po splnění požadovaných nastavení můžete přejít k další fázi.

Krok 5:Metody ověření

Abychom mohli pokračovat v instalaci, musíme zvolit preferovaný způsob ověřování. Jak jsem uvedl dříve, upřednostnil jsem pro to výběr typu databáze.

Krok 6:Zadejte podrobnosti o databázi

V této fázi přidejte název databáze Icinga 2 Web MySQL a přístupové údaje pro tuto databázi. Tato databáze bude sloužit pro ukládání uživatelů a skupin webového rozhraní Icinga 2. Použijte informace o databázi pro druhou databázi vytvořenou dříve. Přidejte icingaweb_db jako název tohoto zdroje a ponechte proměnné Host, Port a Character set jako výchozí. Nezaškrtávejte možnost Trvalé a SSL. Klepnutím na tlačítko Ověřit konfiguraci ověřte připojení k databázi, jak je znázorněno na obrázku níže. Po dokončení stiskněte tlačítko Další pro přesun do další sekce instalačního programu.

Krok 7:Vytvoření přihlašovacích údajů pro webovou administraci Icinga

Po úspěšné autentizaci našich databázových zdrojů potřebujeme vytvořit administrátorský účet pro správu webového rozhraní Icinga2. Zvolte silné heslo pro tento účet. Po dokončení stiskněte tlačítko Další pro přechod na další instalační obrazovku.

Krok 8:Výběr možností konfigurace aplikace

Dále musíme nakonfigurovat aplikaci Icinga a konfiguraci protokolování s následujícím nastavením stejně jako na snímku obrazovky.

  • Zaškrtněte možnost Zobrazit Stacktraces
  • Typ úložiště =Databáze
  • Typ protokolování =Soubor
  • Úroveň protokolování =chyba
  • Cesta k souboru =/var/log/icingaweb2/icingaweb2.log

Musíme vytvořit tento soubor protokolu z backendu serveru a nastavit správná oprávnění/vlastnictví, abychom zajistili správné fungování protokolů Icinga Web 2.

Krok 9:Kontrola všech vybraných nastavení.

Tato obrazovka vás informuje, že Icinga Web2 byla úspěšně nakonfigurována a podrobná zpráva zobrazí všechny dosud provedené konfigurace. Zkontrolujte zprávu a stiskněte tlačítko Další pro pokračování do další sekce instalace.

Krok 10:Konfigurace monitorovacího modulu

Nyní jsme dokončili autentizační část a následuje konfigurace monitorovacího modulu.

Jak jsme již diskutovali dříve, modul Icinga IDO exportuje všechny stavové informace a konfigurační části do hlavní databáze Icinga. Proto musíme vybrat tento modul a správně jej nakonfigurovat, aby se databáze aktualizovala informacemi.

Zde musíme poskytnout informace o hlavní databázi, abychom mohli pokračovat. Zde vyplňte údaje o databázi. Ujistěte se, že máte nastavena správná oprávnění pro uživatele databáze pro jakékoli úpravy.

Nakonfigurujte Icinga Command Transport pomocí následujících nastavení a pokračujte stisknutím tlačítka Další.

  • Název přepravy =icinga2
  • Typ dopravy =Místní soubor příkazu
  • Příkazový soubor =/var/run/icinga2/cmd/icinga2.cmd

V této fázi zabezpečení nemusíme provádět žádné úpravy. Můžeme pokračovat s výchozím nastavením kliknutím na 'Next".

Krok 11:Kontrola možností konfigurace modulu monitorování

Tato fáze vás seznámí se všemi částmi konfigurace monitorovacího modulu, které jste vybrali. Můžete pouze potvrdit nastavení a pokračovat k dokončení nastavení.

Poslední krok:Přihlaste se do webového rozhraní

Po úspěšném dokončení procesu instalace vás bude zpráva s blahopřáním informovat, že Icinga Web 2 byla úspěšně nainstalována. Klikněte na Login link za účelem přesměrování na přihlašovací stránku Icinga2.

Přihlaste se do Icinga Web 2 pomocí přihlašovacích údajů nakonfigurovaných během procesu instalace a budete přesměrováni na Icinga Web 2 Dashboard,

Náš hlavní uzel je standardně přidán do tohoto systému. Zde můžeme vidět servisní upozornění pro náš hlavní server Icinga. Nebo můžete jednoduše procházet tuto adresu URL http://IP/icingaweb2/ pro přístup k webovému rozhraní.

Do tohoto monitorovacího systému můžeme přidat libovolný počet uzlů.

Koneckonců

Úspěšně jsme nainstalovali a nakonfigurovali aplikaci pro monitorování sítě Icinga 2 na serveru Debian 9.3. Další podrobnosti o vlastní konfiguraci naleznete v této dokumentaci Icinga. Doufám, že tento článek je pro vás užitečný. Uveřejněte prosím své cenné komentáře a návrhy.


Debian
  1. Jak nainstalovat a používat Debian Backports

  2. Jak nainstalovat R na Debian 9

  3. Jak nainstalovat Icinga 2 na Debian 9

  1. Jak nainstalovat a nakonfigurovat Redis na Debian 9

  2. Jak nainstalovat a používat FFmpeg na Debianu 9

  3. Jak nainstalovat a nakonfigurovat Redmine na Debian 9

  1. Jak nainstalovat a používat FFmpeg na Debianu 10

  2. Jak nainstalovat R na Debian 10

  3. Jak nainstalovat webovou konzoli Cockpit na Debian 10