Kako namestiti Zabbix na Rocky Linux in AlmaLinux


Ustrezno spremljanje je bistvena sestavina za učinkovito upravljanje vaše celotne IT infrastrukture. Robustna rešitev za spremljanje v realnem času zagotavlja podrobno vidljivost vašega omrežja in zmogljivosti aplikacij.

Pomaga pri prepoznavanju dejanskih trenutkov, ko se pojavijo napake in incidenti, ter pošilja opozorila. S tem lahko operativne ekipe pravočasno sprejmejo intervencijske ukrepe in zagotovijo neprekinjenost poslovanja v najkrajšem možnem času.

To vam pomaga kar najbolje izkoristiti svoje vire IT in posledično povečati svoj prihodek. Kot tako ne moremo spodkopati pomena vlaganja v učinkovito in zanesljivo orodje za spremljanje.

Zabbix je brezplačno in odprtokodno orodje za spremljanje podjetja, ki se uporablja za spremljanje vaše celotne IT infrastrukture. Nadzira lahko vse, vključno z omrežnimi napravami, strežniki (v oblaku in na mestu uporabe), aplikacijami, bazami podatkov in celo vsebniki Docker. Prav tako zazna napake in pošilja opozorila, da omogoči hitro ukrepanje ekip IT za rešitev težave.

V tem priročniku se bomo osredotočili na namestitev orodja za spremljanje Zabbix na Rocky Linux/AlmaLinux. V času pisanja tega priročnika je bila najnovejša različica Zabbixa Zabbix 6.0 predizdajna.

Za ta vodnik morate imeti tole:

  • Primerek Rocky Linuxa z dostopom SSH.
  • Primerek Alma Linuxa z dostopom SSH.
  • Uporabnik sudo, konfiguriran za izvajanje privilegiranih nalog.

1. korak: Namestite LAMP v Rocky/Alma Linux

Zabbix je aplikacija za spremljanje, ki jo poganja PHP na sprednjem delu in Java & C v ozadju. Za zbiranje in shranjevanje podatkov potrebuje tudi relacijsko bazo podatkov. Kot tak moramo namestiti sklad gostovanja, na katerega bomo namestili Zabbix.

LAMP, okrajšava za Linux, Apache, MariaDB/MySQL in PHP, je veliko domače ime v krogih razvijalcev. Vključuje spletni strežnik Apache, MariaDB ali MySQL (relacijske baze podatkov) in PHP, ki je skriptni mehanizem na strani strežnika.

Začeli bomo z namestitvijo spletnega strežnika Apache. Če želite to narediti, izvedite ukaz:

$ sudo dnf install @httpd

Ko je nameščen, zaženite Apache in mu omogočite, da se zažene ob zagonu sistema.

$ sudo systemctl start httpd
$ sudo systemctl enable httpd

Če želite preveriti, ali se Apache izvaja, izvedite ukaz:

$ sudo systemctl status httpd

Izhod potrjuje, da je Apache nameščen in deluje po pričakovanjih.

Kot smo že omenili, Zabbix zahteva relacijsko bazo podatkov za shranjevanje vseh svojih podatkov. Odločili smo se za namestitev MariaDB glede na njegovo zanesljivost in številne izboljšave varnosti in zmogljivosti, ki jih ponuja.

Najnovejša različica Zabbixa zahteva, da MariaDB različica 10.5 deluje po pričakovanjih. Če želite začeti, morate omogočiti skladišče MariaDB YUM.

Torej ustvarite datoteko repozitorija:

$ sudo vim  /etc/yum.repos.d/mariadb.repo

Prilepite naslednje vrstice.

[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.5/rhel8-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
module_hotfixes=1

Shranite spremembe in zapustite konfiguracijsko datoteko.

Nato uvozite podpisni ključ MariaDB GPG:

$ sudo --import https://yum.mariadb.org/RPM-GPG-KEY-MariaDB

Končno, če želite namestiti strežnik in odjemalca MariaDB, zaženite ukaz:

$ sudo dnf install MariaDB-server MariaDB-client

Ko je namestitev končana, zaženite strežnik MariaDB in ga omogočite, da se samodejno zažene ob zagonu.

$ sudo systemctl start mariadb
$ sudo systemctl enable mariadb

Potrdite, da se strežnik baze podatkov izvaja:

$ sudo systemctl status mariadb

Če želite potrditi nameščeno različico MariaDB, zaženite ukaz:

$ mysql -V

Lahko pa se prijavite v strežnik baz podatkov na naslednji način.

$ sudo mysql -u root -p

Različica MariaDB bo natisnjena na pozdravnem sporočilu.

Običajno nastavitve MariaDB niso konfigurirane v skladu z zahtevanimi varnostnimi priporočili. Na srečo MariaDB ponuja skript mysql_secure_installation za izboljšanje varnosti strežnika baze podatkov.

Torej, izvedite skript, kot je prikazano.

$ sudo mysql_secure_installation

Izvesti boste morali seznam nalog. Najprej preklopite na vtičnik za preverjanje pristnosti vtičnice UNIX.

Za preostale pozive vnesite Y in pritisnite ENTER. To vam omogoča, da odstranite anonimne uporabnike, onemogočite oddaljenim uporabnikom, da se prijavijo kot root, in odstranite testno bazo podatkov, ki jo lahko izkoristijo hekerji. Nato končno znova naložite tabele privilegijev, da shranite spremembe.

Vtičnik za preverjanje pristnosti UNIX_socket omogoča uporabniku root, da se prijavi v strežnik baze podatkov brez gesla. Če želite omogočiti preverjanje pristnosti gesla MariaDB, se prijavite v MariaDB:

$ sudo mysql -u root -p

Nato nastavite root geslo, kot sledi.

set password = password("yourpassword");

Če želite preklopiti s preverjanja pristnosti vtičnice UNIX na preverjanje pristnosti mysql_native_password, zaženite ukaz

ALTER USER [email  IDENTIFIED VIA mysql_native_password USING PASSWORD("yourpassword");

Zdaj, ko se boste znova prijavili, boste morali vnesti geslo.

Zadnja komponenta sklada LAMP za namestitev je PHP. To je na voljo v privzetih repozitorijih AppStream. To lahko preverite na naslednji način:

$ sudo dnf module list PHP

PHP 7.2 je privzeto omogočen. To moramo spremeniti v PHP 7.4.

$ sudo dnf module reset php
$ sudo dnf module install php:7.4

Nato namestite potrebne module PHP za namestitev Zabbixa.

$ sudo dnf install php php-curl php-fpm php-mysqlnd

Če želite preveriti različico PHP, zaženite.

$ php -v

Namestili smo storitev PHP-FPM (FastCGI Process Manager), ki je priljubljena alternativna implementacija PHP FastCGI.

Zaženite in ga omogočite ob zagonu.

$ sudo systemctl start php-fpm
$ sudo systemctl enable php-fpm

Nato preverite njegovo stanje.

$ sudo systemctl status php-fpm

Na tej točki smo uspešno namestili sklad LAMP. V naslednjih korakih se bomo poglobili v namestitev Zabbixa.

2. korak: Namestite Zabbix v Rocky/Alma Linux

Ko je sklad LAMP nameščen, zdaj namestimo Zabbix tako, da namestimo repozitorij Zabbix.

$ sudo rpm -Uvh https://repo.zabbix.com/zabbix/5.5/rhel/8/x86_64/zabbix-release-5.5-1.el8.noarch.rpm

Ko je repozitorij nameščen, namestite strežnik Zabbix, agent Zabbix in povezane pakete Zabbix, kot sledi.

$ sudo dnf install zabbix-server-mysql zabbix-web-mysql zabbix-apache-conf zabbix-sql-scripts zabbix-selinux-policy zabbix-agent

Ko je namestitev končana, morate ustvariti bazo podatkov Zabbix in uporabnika baze podatkov, ki ga bo Zabbix uporabljal za dostop do baze podatkov.

$ sudo mysql -u root -p
CREATE USER [email  IDENTIFIED BY '[email ';

Nato uporabniku baze podatkov dodelite dovoljenja za izvajanje vseh nalog v bazi podatkov.

GRANT ALL PRIVILEGES ON zabbix_db.* TO [email ;

Nato izvedite spremembe in zapustite strežnik baz podatkov

FLUSH PRIVILEGES;
EXIT;

Nato uvozite shemo baze podatkov:

$ sudo zcat /usr/share/doc/zabbix-sql-scripts/mysql/create.sql.gz | mysql -u zabbix_user -p zabbix_db

Ko ste pozvani k vnosu gesla, navedite uporabniško geslo Zabbixa in ne gesla korenskega računa.

Poleg tega uredite konfiguracijsko datoteko Zabbix

$ sudo vim /etc/zabbix/zabbix_server.conf

Prepričajte se, da vrednosti DBName, DBUser, DBPassword odražajo vrednosti, ki ste jih navedli za svojo bazo podatkov

DBHost=localhost
DBName=zabbix_db
DBUser=zabbix_user
[email 

Shranite spremembe in zapustite konfiguracijsko datoteko.

3. korak: Konfigurirajte PHP-FPM v Rocky/Alma Linux

Nato je potrebna dodatna konfiguracija za storitev PHP-FPM. Uredite konfiguracijsko datoteko www.conf.

$ sudo vim /etc/php-fpm.d/www.conf 

Poskrbite, da bodo naslednje vrstice prikazane takšne, kot so.

listen = /run/php-fpm/www.sock
 
user = apache
group = apache

listen.allowed_clients = 0.0.0.0
listen.owner = apache
listen.group = apache
listen.mode = 0660
pm = dynamic

Shranite spremembe in zaprite datoteko.

Poleg tega določite nastavitev časovnega pasu v konfiguracijski datoteki Zabbix.conf.

$ sudo vim /etc/php-fpm.d/zabbix.conf

Dodajte prikazano vrstico.

php_value[date.timezone] = Africa/Nairobi

Shrani in zapusti.

Če želite uporabiti vse opravljene spremembe, znova zaženite vse storitve, kot je prikazano

$ sudo systemctl restart zabbix-server zabbix-agent httpd php-fpm

Poleg tega razmislite o njihovem omogočanju ob zagonu.

$ sudo systemctl enable zabbix-server zabbix-agent httpd php-fpm

4. korak: Konfigurirajte SELinux in požarni zid v Rocky/Alma Linux

Za dostop do sprednjega dela iz brskalnika morate SELinux nastaviti na dovoljeno. Če želite to narediti, zaženite ukaz:

$ sudo sed -i 's/SELINUX=enforcing/SELINUX=permissive/g' /etc/selinux/config

Nato pojdite na požarni zid in dovolite storitev HTTP skupaj s vrati 10050 in 10051, ki jih poslušata strežnik Zabbix in agent.

$ sudo firewall-cmd --add-port=80/tcp --permanent
$ sudo firewall-cmd --add-port={10050,10051}/tcp --permanent
$ sudo firewall-cmd --reload

5. korak: Dokončajte namestitev Zabbixa v Rocky/Alma Linux

Nazadnje zaženite brskalnik in pojdite na prikazani URL

http://server-ip/zabbix

Prva stran, ki vas pozdravi, je pozdravna stran Zabbixa, ki krepko prikaže različico, ki jo nameščate. Izberite jezik namestitve in kliknite gumb »Naslednji korak«.

Na seznamu predpogojev se pomaknite do konca in zagotovite, da bodo vsi predpogoji v zadnjem stolpcu dobili oznako »V redu«. Obvezno je, da so izpolnjene vse zahteve. Nato pritisnite gumb »Naslednji korak«.

Na strani »Konfiguriraj povezavo z DB«. Izpolnite podatke svoje baze podatkov. Za vrata baze podatkov pustite na 0. Pritisnite »Naslednji korak«.

Nato določite ime svojega strežnika, potrdite svoj časovni pas in izberite želeno temo. Nato pritisnite Naslednji korak.

Potrdite vse nastavitve in če je vse videti v redu, pritisnite »Naslednji korak«, da dokončate namestitev.

Če so vse nastavitve, ki ste jih navedli, pravilne, boste prejeli sporočilo s čestitko, ki vas obvešča o uspešni nastavitvi sprednjega dela Zabbixa. Pritisnite gumb Dokončaj.

To vas usmeri na stran za prijavo v Zabbix. Prijavite se z naslednjimi poverilnicami:

Admin:	Admin
Password:   zabbix

Nato kliknite »Prijava« za dostop do nadzorne plošče Zabbix. Geslo lahko pozneje spremenite zaradi dodatne varnosti, zato naj vas to ne skrbi.

Končno boste dobili dostop do Zabbixove nadzorne plošče.

In tukaj ga imate. Orodje za spremljanje Zabbix smo uspešno namestili na Rocky Linux/AlmaLinux.