Kako namestiti orodje za spremljanje Icinga2 na Ubuntu 20.04/22.04


Icinga2 je zmogljivo brezplačno in odprtokodno orodje za spremljanje, ki spremlja vaše omrežne vire in pošilja opozorila ali obvestila v primeru okvare ali izpadov. Prav tako zbira meritve iz omrežnih virov, ki vam lahko pomagajo pri ustvarjanju podatkov o uspešnosti in ustvarjanju poročil.

Icinga2 je razširljiv in lahko spremlja majhna do velika in zapletena omrežja na različnih lokacijah. V tem priročniku se boste naučili, kako namestiti orodje za spremljanje Icinga2 na Ubuntu 20.04 in Ubuntu 22.04.

1. korak: Namestite Apache, MariaDB in PHP

Začnemo z namestitvijo Apache, MariaDB in PHP z dodatnimi moduli PHP, ki so potrebni med končno nastavitvijo Icinga2 v spletnem brskalniku.

$ sudo apt install apache2 mariadb-server mariadb-client mariadb-common php php-gd php-mbstring php-mysqlnd php-curl php-xml php-cli php-soap php-intl php-xmlrpc php-zip  php-common php-opcache php-gmp php-imagick php-pgsql -y

Ko so nameščene, se prepričajte, da se vse storitve izvajajo. Če je tako, zaženite naslednje ukaze.

$ sudo systemctl start {apache2,mariadb}
$ sudo systemctl enable {apache2,mariadb}
$ sudo systemctl status {apache2,mariadb}

Nato morate uporabiti skript mysql_secure_installation, da nastavite geslo za korenski račun baze podatkov, odstranite anonimne uporabnike, onemogočite root prijavo na daljavo in odstranite testno bazo podatkov.

$ sudo mysql_secure_installation

Ko so moduli PHP nameščeni, morate spremeniti datoteko php.ini, ki je privzeta konfiguracijska datoteka za aplikacije, ki se izvajajo v PHP.

Z želenim urejevalnikom odprite datoteko. tukaj. uporabljamo urejevalnik ukazne vrstice nano.

$ sudo nano /etc/php/7.4/apache2/php.ini

Naredite naslednje spremembe naslednjih parametrov.

memory_limit = 256M 
post_max_size = 64M
upload_max_filesize = 100M	
max_execution_time = 300
default_charset = "UTF-8"
date.timezone = "Asia/Kolkata"
cgi.fix_pathinfo=0

Za parameter date.timezone se prepričajte, da ga nastavite tako, da odraža vaš trenutni časovni pas. Tukaj je seznam podprtih časovnih pasov s strani PHP.

Če želite uporabiti izvedene spremembe, preprosto znova zaženite spletni strežnik Apache.

$ sudo systemctl restart apache2

2. korak: Namestite Icinga2 na Ubuntu

Ko bo konfiguracija PHP odstranjena, bomo nadaljevali in namestili Icinga2. Vendar skladišča Icinga2 ne zagotavljajo skladišča Ubuntu 20.04. Zato moramo v vaš sistem ročno dodati repozitorij.

Zato začnite z dodajanjem ključa GPG z ukazom curl.

$ curl https://packages.icinga.com/icinga.key | apt-key add -

Nato ustvarite datoteko repozitorija za Icinga2.

$ sudo vim /etc/apt/sources.list.d/icinga-focal.list

Dodajte naslednje vnose.

deb http://packages.icinga.com/ubuntu icinga-focal main
deb-src http://packages.icinga.com/ubuntu icinga-focal main

Shranite in zaprite datoteko.

Če želite začeti uporabljati repozitorij, posodobite sezname paketov, kot sledi.

$ sudo apt update

Nato namestite Icinga2 in vtičnike za spremljanje.

$ sudo apt install icinga2 monitoring-plugins

Ko je namestitev končana, omogočite in zaženite storitev Icinga2.

$ sudo systemctl enable icinga2
$ sudo systemctl start icinga2

Če želite potrditi, da se storitev Icinga2 izvaja, izvedite:

$ sudo systemctl status icinga2

Izhod kaže, da demon Icinga2 deluje in da smo pripravljeni.

3. korak: Namestite modul Icinga2 IDO

Icinga2 Data Output (IDO) izvozi vse informacije o konfiguraciji in stanju v bazo podatkov. Bazo podatkov IDO nato Icinga Web 2 uporablja kot podatkovno ozadje.

Za namestitev modula zaženite ukaz

$ sudo apt install icinga2-ido-mysql -y

Na poti se bo na terminalu prikazalo pojavno okno. Če želite omogočiti funkcijo ido-mysql Icinga2, izberite »Da« in pritisnite ENTER.

Paket icinga2-ido-mysql zahteva nameščeno in konfigurirano bazo podatkov. To je mogoče rešiti z dbconfig-common, vendar bomo bazo podatkov ustvarili sami. Zato izberite »Ne« in zavrnite to možnost.

Nato se prijavite v strežnik baze podatkov MariaDB.

$ sudo mysql -u root -p

Nato ustvarite bazo podatkov in uporabnika baze podatkov za paket icinga2-ido-mysql in uporabniku dodelite vse privilegije v bazi podatkov.

> CREATE DATABASE icinga_ido_db;
> GRANT ALL ON icinga_ido_db.* TO 'icinga_ido_user'@'localhost' IDENTIFIED BY 'Password321';
> FLUSH PRIVILEGES;
> EXIT;

Ko je baza podatkov nameščena, nadaljujte in uvozite Icinga2 IDO shemo z ukazom. Navesti boste morali korensko geslo strežnika baz podatkov.

$ sudo mysql -u root -p icinga_ido_db < /usr/share/icinga2-ido-mysql/schema/mysql.sql

4. korak: Omogočite modul Icinga2 IDO

Da omogočimo komunikacijo baze podatkov icinga2-ido-mysql z Icinga Web 2, moramo iti korak dlje in spremeniti privzeto konfiguracijsko datoteko.

Odprite konfiguracijsko datoteko icinga2-ido-mysql.

$ sudo vim /etc/icinga2/features-available/ido-mysql.conf

Uredite naslednje vnose in jih nastavite tako, da se ujemajo s podrobnostmi baze podatkov icinga2-ido-mysql, kot je navedeno v 3. koraku.

Shranite spremembe in zapustite.

Nato omogočite funkcijo icinga2-ido-mysql.

$ sudo icinga2 feature enable ido-mysql

Da bodo spremembe začele veljati, znova zaženite Icinga2.

$ sudo systemctl restart icinga2 

5. korak: Namestite in nastavite IcingaWeb2

Zadnja komponenta za namestitev in konfiguracijo je IcingaWeb 2, ki je hiter, zmogljiv in razširljiv okvir PHP, ki deluje kot sprednji del Icinga2.

Torej namestite IcingaWeb2 in Icinga CLI, zaženite ukaz.

$ sudo apt install icingaweb2 icingacli -y

Ustvariti moramo drugo shemo baze podatkov, ki bo določena za Icinga Web 2.

Še enkrat se prijavite v strežnik baze podatkov.

$ sudo mysql -u root -p

Nato ustvarite bazo podatkov in uporabnika baze podatkov za Icingaweb2 in dodelite vsa dovoljenja uporabniku baze podatkov v bazi podatkov.

> CREATE DATABASE icingaweb2;
> GRANT ALL ON icingaweb2.* TO 'icingaweb2user'@'localhost' IDENTIFIED BY '[email ';
> FLUSH PRIVILEGES;
> EXIT;

Nato ustvarite žeton za nastavitev z naslednjim ukazom. Nastavitveni žeton bo uporabljen med preverjanjem pristnosti pri nastavitvi Icinga2 v brskalniku.

$ sudo icingacli setup token create

V primeru, da izgubite ali pozabite žeton, si ga lahko ogledate z ukazom:

$ sudo icingacli setup token show

6. korak: Dokončajte namestitev IcingaWeb2 v Ubuntu

Ko so vse konfiguracije na mestu, bomo zdaj dokončali nastavitev Icinga2 v spletnem brskalniku. Zato zaženite brskalnik in pojdite na prikazani URL.

http://server-ip/icingaweb2/setup

To vas pripelje na stran dobrodošlice, kot je prikazano. Se spomnite nastavitvenega žetona, ki ste ga ustvarili? Kopirajte in prilepite v besedilno polje ter kliknite »Naprej«.

Na strani »Moduli« je modul »Monitoring« privzeto omogočen. Vendar pa lahko omogočite želene module.

Nato se pomaknite navzdol in kliknite »Naprej«.

V naslednjem koraku se prepričajte, da so vsi moduli in knjižnice PHP nameščeni in da so dovoljenja imenika pravilna.

Nato se pomaknite navzdol in kliknite »Naprej«.

Na strani »Preverjanje pristnosti« izberite »Baza podatkov« kot vrsto preverjanja pristnosti in kliknite »Naprej«.

V razdelku »Vir zbirke podatkov« izpolnite podrobnosti baze podatkov za IcingaWeb2, kot je navedeno v 5. koraku.

Nato se pomaknite navzdol in kliknite »Preveri konfiguracijo«, da preverite podrobnosti baze podatkov.

Če je šlo vse v redu, bo konfiguracija baze podatkov uspešno potrjena. Ko je preverjanje uspešno, se pomaknite navzdol in kliknite »Naprej«.

V naslednjem koraku kliknite »Naprej«, da sprejmete privzete nastavitve.

V razdelku »Konfiguracija aplikacije« kliknite »Naprej«, da sprejmete privzete nastavitve.

V naslednjem koraku si vzemite nekaj časa in preglejte vse spremembe za Icinga Web 2. Prepričajte se, da so vse konfiguracije pravilne in se lahko vrnete in naredite potrebne popravke.

Če je vse videti dobro, se pomaknite navzdol in kliknite »Naprej«.

Zadnji razdelek v spletni nastavitvi Icinga2 vključuje konfiguracijo nadzornega modula. Torej, kliknite »Naprej«.

Nato izpolnite podrobnosti baze podatkov za modul Icinga2 IDO, kot je navedeno v 3. koraku.

Nato se pomaknite navzdol in kliknite »Preveri konfiguracijo«.

Ponovno bi morala biti potrditev podrobnosti baze podatkov uspešna. Če dobite napako, se vrnite in se prepričajte, da so vse podrobnosti pravilne.

Če želite preiti na naslednji korak, se pomaknite navzdol in kliknite »Naprej«.

V razdelku »Ukazni transport« izberite »Lokalna ukazna datoteka« kot vrsto prenosa in kliknite »Naprej«.

V razdelku »Spremljanje varnosti« preprosto kliknite »Naprej«, da nadaljujete s privzetimi nastavitvami.

Preglejte vse spremembe za nadzorni modul. Če je kaj videti na mestu, se vrnite in naredite potrebne popravke.

Nato se pomaknite navzdol in kliknite »Dokončaj«.

Na tej točki je bil Icinga Web 2 uspešno nastavljen in bi morali videti obvestilo o tem, kot je prikazano spodaj. Če se želite prijaviti na nadzorno ploščo Icinga2, kliknite »Prijava v Icinga Web 2«.

To vas pripelje na stran za prijavo, kot je prikazano. Vnesite podatke svojega skrbniškega računa in pritisnite ENTER za prijavo.

In na pogled bo prišla armaturna plošča Icinga2. Vse obstoječe težave bodo prikazane z njihovo stopnjo resnosti. Na primer, nadzorna plošča nas obvesti o 28 paketih s pripravljenimi nadgradnjami.

Da bi to preverili, se bomo vrnili na terminal in zagnali ukaz:

$ sudo apt list --upgradable

Za nadgradnjo paketov bomo preprosto zagnali:

$ sudo apt upgrade -y

In to rešuje problem. Na nadzorni plošči lahko vidite, da ni več prikazanih težav.

V tem priročniku smo pokazali, kako namestiti orodje za spremljanje Icinga2 na Ubuntu. Res je, da je namestitev precej dolga in zahteva pozornost do detajlov. Kljub temu, če ste sledili korakom do slednjega, bi moralo vse delovati v redu.