Zabbix monitoring
Instalace Zabbix 5 na CentOS 8 s PostgreSQL a TimescaleDB
- Zveřejněno: 24. červen 2020
- Zobrazeno: 1381
Tento návod vás provede instalací monitorovacího nástroje Zabbix 5 na CentOS 8 s použitím databázového serveru PostgreSQL a Timescale DB.
Nastavení SElinux (vypnutí)
Vzhledem ke skutečnosti, že se tento návod nazaobírá nastavením SElinux provedeme jeho vypnutí, abychom předešli problémům při samotné instalaci a konfiguraci.
Provedeme vypnutí SElinux příkazem:
setenforce 0
Upravíme konfigurační soubor, tak aby se SElinux nespustil při rebootu systému:
vi /etc/selinux/config
Parametr SELINUX nastavíme na disabled:
SELINUX=disabled
Instalace HTTP server (Apache)
K frontendové (GUI) části Zabbix je zapotřebí webový server, kdy byl při instalaci zvolen Apache.
Instalace Apache:
yum install httpd
Start služby a enable:
systemctl enable --now httpd
Pokud na vašem serveru ještě nemáte provedenou instalaci PHP je rovněž nutno doinstalovat.
Instalace PostgreSQL
Instalace databázového serveru PostgreSQL:
yum install postgresql postgresql-server
Inicializace databáze:
/usr/pgsql-12/bin/postgresql-12-setup initdb
Start služby a enable:
systemctl start postgresql-12
systemctl enable postgresql-12
Provedeme kontrolu, zda je zlužba nastartována:
systemctl status postgresql-12
Instalace TimescaleDB
Instalace TimescaleDB:
yum install timescaledb_12.x86_64
Instalace GITu:
yum install git
Instalace timescaledb-tune:
go get github.com/timescale/timescaledb-tune/cmd/timescaledb-tune
Konfigurace použitím timescaledb-tune:
/root/go/bin/timescaledb-tune --pg-config=/usr/pgsql-12/bin/pg_config --conf-path=/var/lib/pgsql/12/data/postgresql.conf
Instalace ZABBIX (server, web, agent)
Nejprve provedeme instalaci fping, kterou Zabbix vyžaduje:
wget https://repo.zabbix.com/non-supported/rhel/8/x86_64/fping-3.16-1.el8.x86_64.rpm
yum localinstall fping-3.16-1.el8.x86_64.rpm
Instalace Zabbix server, web, agent
Provedeme instalaci Zabbix PorstgreSQL sever:
yum install --skip-broken --nobest zabbix-server-pgsql
Provedeme instaci Zabbix webového rozhraní a Zabbix agenta:
yum install zabbix-web-pgsql zabbix-agent zabbix-get
Instalace databáze
Vytvoříme databázového uživatele:
sudo -u postgres createuser --pwprompt zabbixdbusr
Vytvoříme databázi pro Zabbix:
sudo -u postgres createdb -O zabbixdbusr -E Unicode -T template0 zabbix
Import výchozího schématu databáze:
zcat /usr/share/doc/zabbix-server-pgsql*/create.sql.gz | sudo -u zabbix psql zabbix
Rozšíření TimescaleDB musí být také povoleno spuštěním:
echo "CREATE EXTENSION IF NOT EXISTS timescaledb CASCADE;" | sudo -u postgres psql zabbix
Import schématu pro TimescaleDB (pro nové instalace musí být spuštěno až po vytvoření výchozího schématu):
zcat /usr/share/doc/zabbix-server-pgsql*/timescaledb.sql.gz | sudo -u zabbix psql zabbix
Nastavíme heslo pro uživatele postgres:
\password postgres
Upravíme konfiguraci pro přístup k PostgreSQL
vi /var/lib/pgsql/12/data/pg_hba.conf
a změníme:
local all all peer
host all all 127.0.0.1/32 ident
na:
local all all md5
host all all 127.0.0.1/32 md5
a ještě přidáme řádek:
host zabbix zabbixdbusr 127.0.0.1/32 password
Konfigurace Zabbix Serveru
Konfigurace Zabbix Serveru pro přístup do databáze:
vi /etc/zabbix/zabbix_server.conf
DBHost=127.0.0.1
DBName=zabbix
DBUser=zabbixdbusr
DBPassword=<password>
Provedeme restart PostgreSQL po úpravě konfigurace:
systemctl restart postgresql-12
Spustíme Zabbix server a provedeme enable služby
systemctl enable zabbix-server
systemctl start zabbix-server
Instalace jazykových balíčků
Provedeme instalaci jazykových balíčků do OS ze kterého Zabbix čerpá:
dnf install langpacks-en glibc-all-langpacks
Konfigurace firewall
Povolení portů na firewall pro Apache, Zabbix:
firewall-cmd --list-all
firewall-cmd --zone=public --permanent --add-port=80/tcp
firewall-cmd --zone=public --permanent --add-port=443/tcp
firewall-cmd --zone=public --permanent --add-port=10050/tcp
firewall-cmd --zone=public --permanent --add-port=10051/tcp
firewall-cmd --complete-reload
firewall-cmd --list-all
Instalace fontendu (web) Zabbix
Pokračujeme instalací/inicializací frontendu:
Přistoupíme pomocí prohlížeče na URL, kde se nechází vaš frontend pro zabbix:
https://mojedomena.cz/
https://mojedomena.cz/zabbix/setup.php
K instalaci je potřeba mít správně nakonfigurované PHP.
Nastavíme [date.timezone = Europe/Prague].
vi /etc/php.ini
a upravíme všechny potřebné parametry, tak aby instalátor akceptoval konfiguraci dovolil další krok.
Congratulations! You have successfully installed Zabbix frontend.
Configuration file "/etc/zabbix/web/zabbix.conf.php" created.
Přihlášení do webového rozhraní Zabbix:
https://mojedomena.cz/zabbix/index.php
Výchozí jméno "Admin", heslo "zabbix".