Zabbix je navržen tak, aby monitoroval výkon serveru, dostupnost serveru, síťová zařízení a další síťové komponenty. Pomocí tohoto můžeme snadno sledovat stav všech aplikací, systémů a síťových zařízení.
V tomto článku vysvětlím, jak nainstalovat Zabbix 3.4, nástroj pro monitorování s otevřeným zdrojovým kódem na náš nejnovější server Ubuntu 18.04, a ukážu vám, jak přidat vzdálené servery pro monitorování.
Jádro Zabbixu je zabudováno v Javě a C, ale přichází s uživatelsky přívětivým frontend rozhraním postaveným v PHP, které usnadňuje sledování a monitorování systémů.
Předpoklady
- Čerstvě nainstalovaný server Ubuntu 18.04 s oprávněními uživatele root.
- Dobře nakonfigurovaný server LAMP.
Instalace serveru LAMP
Před instalací serveru Zabbix musíme správně nakonfigurovat server LAMP. Nejprve můžeme nainstalovat Apache a PHP spolu s některými požadovanými moduly PHP pomocí tohoto příkazu níže:
#apt update -y
#apt install apache2 libapache2-mod-php7.2 php7.2 php7.2-xml php7.2-bcmath php7.2-mbstring -y
Jakmile jsou všechny součásti nainstalovány, musíme nainstalovat MariaDB. Zabbix používá k ukládání dat MySQL, Oracle a PostgreSQL. Zde nainstalujeme MariaDB k ukládání dat. Nejnovější verze tohoto softwaru je k dispozici v našem výchozím úložišti Ubuntu 18.04. Můžeme tedy jednoduše spustit tento příkaz a nainstalovat jej.
#apt install mariadb-server -y
Dále můžeme spustit a povolit spuštění všech služeb při startu:
#systemctl start apache2
#systemctl enable apache2
#systemctl start mysql
#systemctl enable mysql
Tím jsme skončili s naším LAMP serverem. Dále můžeme zahájit instalaci Zabbix.
Instalace a konfigurace serveru Zabbix
V závislosti na naší platformě OS a požadavcích musíme vybrat/nainstalovat nejnovější podpůrné úložiště Zabbix na náš server.
Krok 1:Stáhněte a nainstalujte úložiště Zabbix s MySQL
Můžeme si stáhnout a nainstalovat nejnovější úložiště Zabbix 3.4 pro náš server Ubuntu 18.04 pomocí příkazů níže:
# wget https://repo.zabbix.com/zabbix/3.4/ubuntu/pool/main/z/zabbix-release/zabbix-release_3.4-1+bionic_all.deb
# dpkg -i zabbix-release_3.4-1+bionic_all.deb
# apt update
Krok 2:Instalace serveru Zabbix, frontendu a agenta Zabbix
Za druhé, musíme nainstalovat náš server Zabbix, frontend a agenta Zabbix z úložiště Zabbix, které jsme nainstalovali. Spusťte tento příkaz a nainstalujte jej, jak je uvedeno níže:
# apt install zabbix-server-mysql zabbix-frontend-php zabbix-agent
Krok 3:Vytvořte počáteční databázi Zabbix
Jakmile jsou všechny výše uvedené komponenty nainstalovány, můžeme vytvořit databázi pro našeho uživatele Zabbix:
~# mysql -uroot -p
Enter password:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 41
Server version: 10.1.29-MariaDB-6 Ubuntu 18.04
Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]> CREATE DATABASE zabbix character set utf8 collate utf8_bin;
Query OK, 1 row affected (0.01 sec)
MariaDB [(none)]> grant all privileges on zabbix.* to zabbix@localhost identified by 'password';
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> quit
Nyní můžete importovat počáteční schéma a data do naší nově vytvořené databáze Zabbix. Během procesu importu budete vyzváni k zadání hesla uživatele DB.
# zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix
Krok 4:Konfigurace databáze pro server Zabbix
V této fázi musíte správně aktualizovat heslo databáze v konfiguračním souboru Zabbix na /etc/zabbix/zabbix_server.conf
jak je uvedeno níže:
# grep -i DBpassword /etc/zabbix/zabbix_server.conf
# For SQLite3 path to database file must be provided. DBUser and DBPassword are ignored.
### Option: DBPassword
DBPassword=password
Musíte odkomentovat možnost hesla DB a poskytnout jí přesné uživatelské heslo Zabbix DB podle potřeby.
Krok 5:Konfigurace PHP pro frontend Zabbix
Potřebujeme nakonfigurovat PHP a nastavit správné časové pásmo, abychom mohli hladce provést instalaci frontendu Zabbix. Nejprve můžete nastavit správné časové pásmo v konfiguračním souboru PHP na adrese /etc/php/7.2/apache2/php.ini
a upravte jej podle vašeho preferovaného časového pásma. Aktualizoval jsem jej následovně:
# grep -i timezone /etc/php/7.2/apache2/php.ini
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
date.timezone = Europe/Riga
Dále musíme aktualizovat konfigurační soubor Zabbix na /etc/zabbix/apache.conf
se stejným časovým pásmem jako níže:
# grep timezone /etc/zabbix/apache.conf
php_value date.timezone Europe/Riga
Odkomentovali byste php_value pro časové pásmo v sekci Modul PHP 7 ve zmíněném konfiguračním souboru a aktualizovali byste přesné časové pásmo jako dříve.
Krok 6:Spusťte procesy serveru a agenta Zabbix
Nakonec můžeme spustit a povolit všechny požadované služby Zabbix a Apache2 pomocí příkazů níže:
# systemctl restart zabbix-server zabbix-agent apache2
# systemctl enable zabbix-server zabbix-agent apache2
To je vše! Nyní bude náš server Zabbix v provozu. Funkčnost můžete zkontrolovat na adrese URL>>>http://Server-IP/zabbix
Instalace/konfigurace rozhraní Zabbix
Jakmile bude náš server Zabbix zprovozněn a spuštěn, můžeme přistupovat k našemu nově nainstalovanému rozhraní Zabbix pomocí adresy URL>> http://Server-IP or hostname/zabbix.
Tím se otevře průvodce instalací frontendu. Aby byla plně funkční, musíme dokončit proces instalace pro rozhraní Zabbix.
Pojďme si projít každý proces nastavení jeden po druhém. Můžete kliknout na Next Step
zkontrolovat předpoklady. V této fázi se musíme ujistit, že náš server splňuje všechny softwarové předpoklady uvedené níže. Po dokončení můžete kliknout na Další krok a pokračovat.
V této fázi se ujistěte, že aktualizujete podrobnosti pro připojení k naší databázi Zabbix, abyste zajistili správné připojení DB, a pokračujte v nastavení serveru Zabbix včetně hostitele a portu 10051, který je pro něj určen.
Nakonec můžeme znovu ověřit všechna nastavení provedená ve výše uvedených fázích v Souhrnu před instalací a kliknout na Next Step
k dokončení instalace.
Pokud vše půjde dobře, zobrazí se výše uvedená zpráva oznamující úspěšnou instalaci frontendu Zabbix. Nyní můžete klepnutím na kartu Dokončit průvodce instalací ukončit.
Přístup k řídicímu panelu Zabbix
Hurá! náš Zabbix Frontend je připraven. Můžete k němu přistupovat pomocí výchozích přihlašovacích údajů Zabbix s uživatelským jménem "Admin"
a heslo "zabbix"
v adrese URL>>>http://Server-IP/zabbix.
Změna hesla správce
Jakmile se úspěšně přihlásíte do Zabbix Frontend Panelu pomocí výchozích přihlašovacích údajů správce, je z bezpečnostních důvodů povinné upravit přihlašovací údaje správce. Své heslo správce můžete upravit procházením cesty:Administration > Users > Admin > Password > Change Password
jako na snímcích níže:
Přidání monitorovacího hostitele
Protože je náš server Zabbix připraven k použití, můžeme otestovat jeho fungování přidáním našeho prvního cílového monitorovacího hostitele, kterým je samotný náš server Zabbix. Můžete to provést procházením cesty:Configuration >> Hosts
jako na snímcích obrazovky.
Jak můžete vidět, náš stav hostitele je ve výchozím nastavení vypnutý. Musíme kliknout na deaktivované tlačítko, abychom umožnili agentovi Zabbix na tomto serveru sledovat hostitele. Jak je vidět na snímku obrazovky, Status
je přepnuto na enabled
a server je nyní monitorován.
Počkejte několik minut, než náš server Zabbix stáhne monitorovací data ze serveru a aktualizuje grafy. Nyní můžete zobrazit grafy hostitele procházením cesty:Monitoring > Screens > Server Name
jako na snímku.
Přidání vzdáleného hostitele
Nejprve musíme nainstalovat/povolit Zabbix Agent na našem vzdáleném hostiteli. Úkolem agenta Zabbix je shromažďovat data, jako je využití CPU, paměti, disku a síťového rozhraní ze zařízení. Agent Zabbix může provádět pasivní (polling) i aktivní kontroly (trapping). Tyto kontroly lze provádět v intervalech nebo na základě konkrétních časových plánů. Podívejme se, jak nainstalovat/povolit agenta Zabbix na uzlu Ubuntu 18.04.
Instalace agenta Zabbix
Zpočátku potřebujete SSH na náš nový hostitelský server a stáhněte si úložiště Zabbix 3.4 pro naše nastavení hostitele Ubuntu 18.04 a nainstalujte z něj agenta Zabbix.
#wget http://repo.zabbix.com/zabbix/3.4/ubuntu/pool/main/z/zabbix-release/zabbix-release_3.4-1+bionic_all.deb
#dpkg -i zabbix-release_3.4-1+bionic_all.deb
#apt install zabbix-agent
Konfigurace agenta Zabbix
Nyní můžete nakonfigurovat našeho agenta Zabbix tak, aby inicioval správné připojení k serveru Zabbix. K zabezpečení spojení mezi serverem a agentem používáme předsdílené klíče (PSK). Konfigurace agenta Zabbix se nachází na adrese /etc/zabbix/zabbix_agentd.conf
.
Krok 1:Generování klíče PSK a jeho konfigurace.
Nejprve musíme vygenerovat klíč PSK. To lze získat spuštěním příkazu:
#sh -c "openssl rand -hex 32 > /etc/zabbix/zabbix_agentd.psk"
Tento klíč si můžete uložit, který bude použit během konfigurace agenta.
# cat /etc/zabbix/zabbix_agentd.psk
abb6a14eace79044b9f3bab0c6cd26d50b4cfb3dc6fe2ef815b96216073b333b
Krok 2:Přidání serveru Zabbix do konfigurace agenta.
Nyní musíte otevřít konfigurační soubor Zabbix Agent /etc/zabbix/zabbix_agentd.conf
a nakonfigurujte jej pro nastavení zabezpečeného připojení mezi servery. Nejprve musíte upravit číslo řádku '95' a '136' pomocí adresy IP serveru Zabbix, jak je uvedeno níže. Zde 172.104.210.183 je adresa mého serveru Zabbix.
# sed -n '95 p' /etc/zabbix/zabbix_agentd.conf
Server=172.104.210.183
Dále musíme upravit řádek 136 s informacemi o serveru Zabbix.
# sed -n '136 p' /etc/zabbix/zabbix_agentd.conf
ServerActive=172.104.210.183
Krok 3:Konfigurace a povolení zabezpečeného připojení PSK
Aby bylo možné nakonfigurovat zabezpečené připojení mezi servery, povolujeme připojení TLS s podporou PSK. Aby to bylo možné, musíme odpovídajícím způsobem upravit následující řádky v konfiguraci agenta Zabbix.
Upravte následující řádky v /etc/zabbix/zabbix_agentd.conf z:
# sed -n -e 324p -e 335p -e 385p -e 392p /etc/zabbix/zabbix_agentd.conf
# TLSConnect=unencrypted
# TLSAccept=unencrypted
# TLSPSKIdentity=
# TLSPSKFile=
TO:
# sed -n -e 324p -e 335p -e 385p -e 392p /etc/zabbix/zabbix_agentd.conf
TLSConnect=psk
TLSAccept=psk
TLSPSKIdentity=PKI 001
TLSPSKFile=/etc/zabbix/zabbix_agentd.psk
Definování každé sekce:
TLSConnect=psk
*// Toto aktivuje podporu předsdíleného klíče //*TLSAccept=psk
*// Toto umožňuje přijímat všechna příchozí připojení pomocí podpory PSK//*TLSPSKIdentity=PKI 001
*// Pro identifikaci vašeho předsdíleného klíče Agenta je přidělen jedinečný název//*TLSPSKFile=/etc/zabbix/zabbix_agentd.psk
*// To pomáhá agentovi Zabbix identifikovat váš vytvořený soubor PSK. //*
Krok 4:Spusťte agenta Zabbix
Nyní můžete uložit tyto změny a spustit agenta Zabbix a nastavit jej tak, aby se spustil v době spouštění pomocí následujících příkazů:
~# systemctl start zabbix-agent
# systemctl enable zabbix-agent
Synchronizing state of zabbix-agent.service with SysV service script with /lib/systemd/systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install enable zabbix-agent
Náš agent Zabbix je nyní připraven odesílat data na server Zabbix. Abychom jej však mohli používat, musíme s ním tohoto Agenta propojit z webové konzole serveru Zabbix.
Krok 5:Přidání našeho nového hostitele na server Zabbix
Úspěšně jsme nainstalovali/nakonfigurovali Zabbix Agenta na našeho nového hostitele. Nyní musíme zaregistrovat tento nový uzel na náš server Zabbix prostřednictvím naší webové konzole. Můžete se přihlásit k webovému rozhraní našeho serveru Zabbix pomocí adresy URL>>http://Zabbix_ServerIP/zabbix/
s vytvořenými přihlašovacími údaji správce. Nyní můžeme procházet cestou:Configuration > Hosts > Create Host
Tím se otevře konfigurační stránka hostitele, kde můžete přidat název HOST a podrobnosti o IP nového hostitele. Dále si můžete vybrat skupinu, do které chcete tohoto nového hostitele přidat. Můžete buď vytvořit novou skupinu podle svých preferencí, nebo můžete přidat do již existujících skupin. Jeden hostitel může být zařazen do více skupin podle našich preferencí. Zde přidávám náš nový uzel k výchozím Linux Servers
skupina.
Po přidání našeho hostitele můžeme upravit jeho nastavení výběrem našeho přidaného uzlu ze seznamu hostitelů. Vybral jsem výchozí šablonu Template OS Linux
pro můj uzel. Ze seznamů šablon si můžete vybrat libovolnou šablonu.
Dále musíme přejít na kartu Šifrování. Jak jsme se rozhodli, musíme zvolit PSK pro připojení k hostiteli i připojení z hostitele. Poté nastavte PSK identity
na PSK 001
, což je hodnota TLSPSKIdentity
nastavení, které jsme na začátku nakonfigurovali v Zabbix Agent. Poté nastavte hodnotu PSK na klíč, který jste vygenerovali pro agenta Zabbix. Je to ten uložený v souboru /etc/zabbix/zabbix_agentd.psk
na počítači agenta.
To je vše! Nyní uvidíte svého nového hostitele se zelenými štítky, které označují, že vše funguje správně a připojení je šifrované.
Abyste zajistili, že věci fungují, můžete dokonce vypnout svého nového hostitele a zjistit, zda Zabbix na problém upozorňuje. V takovém případě ohlásí problém, jak je vidět na snímku obrazovky.
Podobně můžete na svůj server Zabbix přidat nové hostitele tak, že tam nainstalujete a nakonfigurujete agenta Zabbix a zaregistrujete ho na svůj server Zabbix. Doufám, že tento článek je užitečný a informativní. Zveřejněte prosím své cenné návrhy a komentáře k tomuto.