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.
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: