V tomto článku si ukážeme, jak nainstalovat a nakonfigurovat Zabbix 6.0 s databází PostgreSQL 16 na Rocky Linux 9, a to během pěti minut.
Než začneme
Pro účely této ukázky si nejdříve přepneme SELinux do Permissive módu.
Pokud plánujete SELinux trvale deaktivovat, můžete tak učinit úpravou konfiguračního souboru. Nicméně, doporučujeme zvážit možnost naučit se s SELinuxem pracovat a využít jeho bezpečnostní výhody. Podrobné informace o správném nastavení a monitorování SELinuxu naleznete v našem samostatném článku.
setenforce 0
Instalace PostgreSQL
Nejprve si naistalujeme repozitáře pro PostgreSQL a zakážeme výchozí, systémové PostgreSQL repozitáře.
dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-9-x86_64/pgdg-redhat-repo-latest.noarch.rpm
dnf -qy module disable postgresql
A nyní se můžeme pustit do instalace PostgreSQL, v tomto případě to bude PostgreSQL 16
dnf install -y postgresql16-server
Teď už zbývá jen inicializovat databázi a nastavit automatické spouštění.
/usr/pgsql-16/bin/postgresql-16-setup initdb
systemctl enable postgresql-16 --now
Instalace Zabbix serveru a jeho součástí
Databázi máme nainstalovanou, pojďme tedy na instalaci Zabbix serveru a jeho součástí.
Nejprve si z repozitáře EPEL vyloučíme jakékoliv instalační balíčky týkající se Zabbixu. Za předpokladu, že je nainstalován.To provedeme tak, že na konec souboru /etc/yum.repos.d/epel.repo vložíme následující řádek:
[epel]
...
excludepkgs=zabbix*
Přidáme si repozitáře Zabbixu a vyčistíme instalační cache.
rpm -Uvh https://repo.zabbix.com/zabbix/6.0/rhel/9/x86_64/zabbix-release-latest.el9.noarch.rpm
dnf clean all
A naistalujeme všechny potřebné součásti Zabbixu.
dnf install zabbix-server-pgsql zabbix-web-pgsql zabbix-apache-conf zabbix-sql-scripts zabbix-agent zabbix-web-service
Inicializace databáze
V dalším kroku vytvoříme pro Zabbix uživatele v databázi a budeme vyzváni k zadání hesla.
cd /tmp
sudo -u postgres createuser --pwprompt zabbix
Založíme databázi a importujeme výchozí schéma a data. Opět budeme vyzváni k zadání hesla.
Zde použijeme heslo z předchozího kroku.
Pozor! V starších verzích Zabbix je tato cesta jiná, a to /usr/share/doc/zabbix-sql-scripts/postgresql/
!
sudo -u postgres createdb -O zabbix zabbix
zcat /usr/share/zabbix-sql-scripts/postgresql/server.sql.gz | sudo -u zabbix psql zabbix
Nastavení firewallu
Nakonec ještě povolíme porty potřebné pro běh Zabbix serveru na firewallu.
firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --add-port=10051/tcp
firewall-cmd --reload
Instalace TimescaleDB
Nyní se pustíme do instalace TimescaleDB.
Přidáme repozitář.
tee /etc/yum.repos.d/timescale_timescaledb.repo <<EOL
[timescale_timescaledb]
name=timescale_timescaledb
baseurl=https://packagecloud.io/timescale/timescaledb/el/$(rpm -E %{rhel})/\$basearch
repo_gpgcheck=1
gpgcheck=0
enabled=1
gpgkey=https://packagecloud.io/timescale/timescaledb/gpgkey
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300
EOL
Nainstalujme TimescaleDB.
dnf -y install timescaledb-2-postgresql-16-2.16.1 timescaledb-2-loader-postgresql-16-2.16.1
Spustíme utilitu timescaledb-tune
a jako parametr jí předáme vyšší hodnotu maximálního množství připojení (--max-conns
), které pro tyto testovací účely nastavíme na 125
.
Tato utilita slouží k přizpůsobení výchozího nastavení PostgreSQL vůčihledně výkonu a adekvátnímu nastavení parametrů PostgreSQL pro fungování s TimescaleDB.
Zároveň nám tato utilit pomocí instalačního průvodce pomůže vybrat aktuální a platný konfigurační soubor PostgreSQL a nastaví i automatické načítání knihoven TimescaleDB.
Prosím, odpovídejte „ano“ (y) na všechny otázky. Pozor, automatický tuner předpokládá, že PostgreSQL běží na samostatném serveru, a proto může být potřeba případně upravit parametry.
timescaledb-tune --pg-config /usr/pgsql-16/bin --max-conns=125

Následně restartujeme systémovou službu pro PostgreSQL:
systemctl restart postgresql-16.service
Zbývá již jen vytvořit a aktivovat TimescaleDB:
Pozor! V starších verzích Zabbix je tato cesta jiná, a to /usr/share/doc/zabbix-sql-scripts/
!
echo "CREATE EXTENSION IF NOT EXISTS timescaledb CASCADE;" | sudo -u postgres psql zabbix
cat /usr/share/zabbix-sql-scripts/postgresql/timescaledb.sql | sudo -u zabbix psql zabbix
Konfigurace Zabbix serveru
Otevřeme konfigurační soubor Zabbix serveru.
nano /etc/zabbix/zabbix_server.conf
Upravíme jednotlivé parametry podle následující předlohy.
DBPassword=<heslo_do_databaze>
StartReportWriters=1
WebServiceURL=http://localhost:10053/report
HANodeName=initMAX
Nakonec doinstalujeme jazykové balíčky pro češtinu a slovenštinu:
dnf install glibc-langpack-cs.x86_64 glibc-langpack-sk.x86_64
Na závěr restartujeme všechny související služby a nastavíme je tak, aby se spouštěly automaticky:
systemctl restart zabbix-server zabbix-web-service zabbix-agent httpd php-fpm
systemctl enable zabbix-server zabbix-web-service zabbix-agent httpd php-fpm
Pro ověření stavu, že nám Zabbix server nastartoval v pořádku můžeme kromě jiného zkontrolovat i jeho log soubor:
less /var/log/zabbix/zabbix_server.log
Konfigurace Zabbix frontendu
V okně prohlížeče si otevřeme url na které nám Zabbix běží. Například http://192.168.0.50/zabbix
a přivítá nás instalace.
Kliknutím na tlačítko Next step
se posuneme na stránku s kontrolou minimálních požadavků.

Vše je v pořádku, můžeme tedy kliknout na Next step
a posunout se na další stránku s nastavením připojení do databáze.

Na této stránce vyplníme pouze políčko Password, nic dalšího není třeba měnit, a klikneme na Next step
.

Zde vyplníme základní nastavení, tedy název serveru a časové pásmo, a kliknutím na Next step
pokračujeme k souhrnu konfigurace.

Zkontrolujeme zadané hodnoty a kliknutím na Next step
dokončíme instalaci.

Kliknutím na Finish
již přejdeme na přihlašovací obrazovku.

Přihlásíme se a můžeme Zabbix 6.0 začít používat. (Admin/zabbix
)

Po přihlášení na Vás čeká nový Zabbix 6.0.

Konfigurace Zabbix reportingu
Pro potřeby funkcí reportingu je nejprve nutné nainstalovat Google Chrome.
Nejprve stáhneme instalační balíček, který následně také nainstalujeme:
wget https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm
dnf localinstall google-chrome-stable_current_x86_64.rpm
Následně je nutné upravit v konfiguraci Zabbix frontendu parametr „Frontend URL“ na aktuálně platnou hodnotu, toto nastavení se nachází v následující cestě v menu:
Administration -> General -> Other
Příklad nastavení můžete vidět na obrázku níže.

Dejte nám Like, sdílejte nás nebo nás sledujte 😍
Ať vám nic neunikne: