Prasības

Aparatūra

Atmiņa

Zabbix nepieciešama gan fiziskā, gan diska atmiņa. Nepieciešamais diska atmiņas apjoms acīmredzami ir atkarīgs no uzraugāmo hostu un parametru skaita. Ja plānojat ilgstoši glabāt uzraudzīto parametru vēsturi, jums vajadzētu rēķināties vismaz ar dažiem gigabaitiem, lai datubāzē pietiktu vietas vēstures glabāšanai. Katram Zabbix dēmona procesam ir nepieciešami vairāki savienojumi ar datubāzes serveri. Savienojumam piešķirtais atmiņas apjoms ir atkarīgs no datubāzes dzinēja konfigurācijas.

Jo vairāk fiziskās atmiņas jums ir, jo ātrāk darbojas datubāze (un līdz ar to arī Zabbix).

CPU

Zabbix un jo īpaši Zabbix datubāzei var būt nepieciešami ievērojami CPU resursi atkarībā no uzraudzīto parametru skaita un izvēlētā datubāzes dzinēja.

Cita aparatūra

Lai izmantotu SMS paziņojumu atbalstu Zabbix, ir nepieciešams seriālās komunikācijas ports un seriālais GSM modems. Derēs arī USB-uz-seriālo pārveidotājs.

Aparatūras konfigurācijas piemēri

Tabulā sniegti aparatūras konfigurācijas piemēri, pieņemot, ka tiek izmantota Linux/BSD/Unix platforma.

Šie ir izmēra un aparatūras konfigurācijas piemēri darba sākšanai. Katra Zabbix instalācija ir unikāla. Noteikti veiciet savas Zabbix sistēmas veiktspējas etalonmērījumus sagatavošanas vai izstrādes vidē, lai pirms Zabbix instalācijas izvietošanas produkcijas vidē pilnībā izprastu savas prasības.

Instalācijas izmērs Pārraudzītie rādītāji1 CPU/vCPU kodoli Atmiņa
(GiB)
Datu bāze Amazon EC22
Mazs 1 000 2 8 MySQL Server,
Percona Server,
MariaDB Server,
PostgreSQL
m6i.large/m6g.large
Vidējs 10 000 4 16 MySQL Server,
Percona Server,
MariaDB Server,
PostgreSQL
m6i.xlarge/m6g.xlarge
Liels 100 000 16 64 MySQL Server,
Percona Server,
MariaDB Server,
PostgreSQL
m6i.4xlarge/m6g.4xlarge
Ļoti liels 1 000 000 32 96 MySQL Server,
Percona Server,
MariaDB Server,
PostgreSQL
m6i.8xlarge/m6g.8xlarge

1 Izmēra noteikšanas nolūkos 1 pārraudzītais rādītājs aptuveni tiek attēlots ar formulu: 1 rādītājs = 1 vienums + 1 trigeris + 1 grafiks. Šis ir tikai aptuvens novērtēšanas noteikums, nevis formula pārraudzīto rādītāju aprēķināšanai.
2 Piemērs ar Amazon vispārēja lietojuma EC2 instancēm, izmantojot ARM64 vai x86_64 arhitektūru. Pirms instalēšanas produkcijas vidē, Zabbix instalācijas novērtēšanas un testēšanas laikā jāizvēlas atbilstošs instances tips, piemēram, optimizēts skaitļošanai, atmiņai vai krātuvei.

Faktiskā konfigurācija lielā mērā ir atkarīga no aktīvo vienumu skaita un atsvaidzināšanas biežuma (detalizētu informāciju skatiet šīs lapas sadaļā datu bāzes izmērs). Lielām instalācijām ir ļoti ieteicams datu bāzi darbināt atsevišķā serverī.

Atbalstītās platformas

Drošības prasību un monitoringa servera kritiski svarīgā rakstura dēļ UNIX ir vienīgā operētājsistēma, kas var konsekventi nodrošināt nepieciešamo veiktspēju, kļūdu noturību un darbības nepārtrauktību. Zabbix darbojas tirgū vadošajās versijās.

Zabbix komponenti ir pieejami un testēti šādām platformām:

Platforma Serveris Aģents Aģents 2 Komentāri
Linux x x x
Windows - x x Zabbix aģents tiek atbalstīts visās darbvirsmas un serveru versijās, sākot no Windows XP (64 bitu)/Server 2003.

Zabbix aģents 2 tiek atbalstīts visās darbvirsmas un serveru versijās, sākot no Windows 10 (32 bitu)/Server 2016, jo tas tiek kompilēts tikai ar atbalstītu Go versiju, lai novērstu kritiskas drošības ievainojamības. Kopš Go 1.21 minimālās prasītās Windows versijas ir paaugstinātas, tādēļ Windows 10/Server 2016 ir minimālā versija Zabbix aģentam 2.
macOS x x -
IBM AIX x x - Zabbix aģents nedarbojas AIX platformās ar versijām zemākām par 6.1 TL07 / 7.1 TL01.
FreeBSD x x -
OpenBSD x x -
Solaris x x -
NetBSD x x -
HP-UX x x -

Zabbix serveris/aģents var darboties arī citās Unix tipa operētājsistēmās.

Zabbix atspējo core dump failu izveidi, ja tas ir kompilēts ar šifrēšanu, un nestartējas, ja sistēma neļauj atspējot core dump failu izveidi.

Nepieciešamā programmatūra

Zabbix ir veidots, izmantojot mūsdienīgus tīmekļa serverus, vadošās datubāzu pārvaldības sistēmas un PHP skriptu valodu.

Trešās puses ārējā apkārtējā programmatūra

Ja programmatūra/bibliotēka ir norādīta kā obligāta, tā ir absolūti nepieciešama. Izvēles programmatūra ir nepieciešama dažu konkrētu funkciju atbalstam.

Programmatūra Obligātuma statuss Atbalstītās versijas Komentāri
MySQL/Percona Viena no 8.4.0-9.7.X Nepieciešama, ja MySQL (vai Percona) tiek izmantots kā Zabbix aizmugursistēmas datubāze. Nepieciešams InnoDB dzinis.

Servera/starpniekservera izveidei iesakām izmantot C API (libmysqlclient) bibliotēku.

Ražošanas vidēs stingri iesakām izmantot tikai LTS laidienus. Laidieni ar apzīmējumu "rolling release", "early access" vai līdzīgu apzīmējumu nav ieteicami.
MariaDB 10.11.00-12.3.X Nepieciešams InnoDB dzinis.

Servera/starpniekservera izveidei iesakām izmantot MariaDB Connector/C bibliotēku.

Skatiet arī: Iespējamās strupceļa situācijas ar MariaDB un Piekļuve lietotāja saskarnes elementiem ar MariaDB 10.5.1-10.5.9.

Ražošanas vidēs stingri iesakām izmantot tikai LTS laidienus. Laidieni ar apzīmējumu "rolling release", "early access" vai līdzīgu apzīmējumu nav ieteicami.
PostgreSQL 15.0-18.X Nepieciešams, ja PostgreSQL tiek izmantots kā Zabbix aizmugursistēmas datubāze.
Atkarībā no instalācijas lieluma var būt nepieciešams palielināt PostgreSQL konfigurācijas parametra work_mem vērtību (noklusējuma vērtība ir 4 MB), lai datubāze konkrētai darbībai izmantotu pietiekamu atmiņas apjomu un vaicājuma izpilde neaizņemtu pārāk daudz laika.
TimescaleDB for PostgreSQL 2.20.X-2.29.X Nepieciešams, ja TimescaleDB tiek izmantots kā PostgreSQL datubāzes paplašinājums. Noteikti instalējiet TimescaleDB Community Edition, kas atbalsta saspiešanu.

Detalizētu informāciju par PostgreSQL un TimescaleDB versiju saderību skatiet TimescaleDB dokumentācijā.
Elasticsearch 7.X Nepieciešams, ja Elasticsearch tiek izmantots kā Zabbix aizmugursistēmas datubāze.
Elasticsearch var izmantot tikai vēstures datu glabāšanai, un tas tiek atbalstīts tikai ar Zabbix serveriem. Elasticsearch atbalsts pašlaik ir eksperimentāls. Skatiet arī nepieciešamo programmatūru serverim/starpniekserverim.
ClickHouse 25.8.22.X-26.4.X Nepieciešams, ja ClickHouse tiek izmantots kā Zabbix aizmugursistēmas datubāze vēstures datu glabāšanai (atbalstīts tikai ar Zabbix serveriem).

Atbalstītās versijas attiecas tikai uz vēstures datu glabāšanu; lai ClickHouse izmantotu kā telemetrijas datu avotu, nepieciešama ClickHouse versija 26.8.17.4 vai jaunāka.

Sistēmas laikam Zabbix serverī un ClickHouse serverī jābūt sinhronizētam; pretējā gadījumā telemetrijas vaicājumi var neiekļaut datus vai atgriezt vienus un tos pašus datus divreiz.
SQLite Izvēles 3.3.5-3.53.X SQLite tiek atbalstīts tikai ar Zabbix starpniekserveriem. Nepieciešams, ja SQLite tiek izmantots kā Zabbix starpniekservera datubāze.
smartmontools 7.1 vai jaunāka Nepieciešams Zabbix aģentam 2.
who Nepieciešams lietotāju skaita spraudnim.
dpkg Nepieciešams system.sw.packages spraudnim.
pkgtool Nepieciešams system.sw.packages spraudnim.
rpm Nepieciešams system.sw.packages spraudnim.
pacman Nepieciešams system.sw.packages spraudnim.
q applets qlist un qsize kā q applets sastāvdaļas ir nepieciešamas system.sw.packages spraudnim operētājsistēmā Gentoo Linux.

Lai gan Zabbix var darboties ar operētājsistēmās pieejamām datubāzēm, vislabākajai lietošanas pieredzei iesakām izmantot datubāzes, kas instalētas no oficiālajām datubāzu izstrādātāju krātuvēm.

Lietotāja saskarne

Zabbix lietotāja saskarnes minimālais atbalstītais ekrāna platums ir 1200 px.

Ja programmatūra/bibliotēka ir norādīta kā obligāta, tā ir noteikti nepieciešama. Neobligātā programmatūra ir nepieciešama dažu konkrētu funkciju atbalstam.

Programmatūra Obligātuma statuss Atbalstītās versijas Komentāri
PHP Jā 8.2.0 - 8.5.X
Apache Viena no 2.4 vai jaunāka
Nginx 1.20 vai jaunāka
MySQL Viena no Skatiet Trešās puses ārējo apkārtējo programmatūru
PostgreSQL
PHP paplašinājumi
mysqli Jā Nepieciešams, ja MySQL tiek izmantots kā Zabbix aizmugursistēmas datubāze.
pgsql Nepieciešams, ja PostgreSQL tiek izmantots kā Zabbix aizmugursistēmas datubāze.
bcmath php-bcmath (--enable-bcmath)
mbstring php-mbstring (--enable-mbstring)
sockets php-net-socket (--enable-sockets); nepieciešams lietotāja skriptu atbalstam.
gd 2.0.28 vai jaunāka php-gd (ja izplatītājs to nodrošina kā atsevišķu pakotni); PHP GD paplašinājumam jāatbalsta PNG attēli (--with-png-dir), JPEG attēli (--with-jpeg-dir) un FreeType 2 (--with-freetype-dir). Dažām lietotāja saskarnes valodām var būt nepieciešama versija 2.3.0 vai jaunāka, lai novērstu iespējamu teksta pārklāšanos grafikos.
libxml 2.6.15 vai jaunāka php-xml (ja izplatītājs to nodrošina kā atsevišķu pakotni)
xmlwriter php-xmlwriter (ja izplatītājs to nodrošina kā atsevišķu pakotni)
xmlreader php-xmlreader (ja izplatītājs to nodrošina kā atsevišķu pakotni)
ctype php-ctype (--enable-ctype)
session php-session (ja izplatītājs to nodrošina kā atsevišķu pakotni)
ldap Nē php-ldap; nepieciešams LDAP autentifikācijai.
openssl php-openssl; nepieciešams SAML autentifikācijai.
gettext php-gettext (--with-gettext); nepieciešams tulkojumiem.
cURL 7.19.4 vai jaunāka php-curl; nepieciešams Duo Universal Prompt MFA, SMTP autentifikācijai un telemetrijas datu avota testēšanai.

Trešās puses lietotāja saskarnes bibliotēkas, kas tiek piegādātas kopā ar Zabbix:

Bibliotēka Obligātuma statuss Piegādātā versija Komentāri
jQuery JavaScript Library Jā 3.6.0 JavaScript bibliotēka, kas vienkāršo starppārlūkprogrammu izstrādes procesu.
jQuery UI 1.12.1 Lietotāja saskarnes mijiedarbību, efektu, logrīku un motīvu kopa, kas izveidota uz jQuery bāzes.
SAML PHP Toolkit 4.3.1 PHP rīkkopa, kas nodrošina SAML 2.0 autentifikācijas atbalstu, lai varētu pierakstīties Zabbix.
Duo Universal PHP library 1.1.2 PHP bibliotēka, kas nodrošina Duo Universal Prompt daudzfaktoru autentifikācijas atbalstu Zabbix.
Symfony Yaml Component 5.1.0 Nodrošina Zabbix konfigurācijas elementu eksportēšanu un importēšanu YAML formātā.

Zabbix var darboties arī ar iepriekšējām Apache, MySQL un PostgreSQL versijām.

Fontiem, kas nav noklusējuma DejaVu fonts, var būt nepieciešama PHP funkcija imagerotate. Ja tās trūkst, šie fonti, attēlojot grafiku, var tikt renderēti nepareizi. Šī funkcija ir pieejama tikai tad, ja PHP ir kompilēts ar komplektācijā iekļauto GD, kas nav Debian un citu izplatījumu gadījumā.

Trešās puses bibliotēkas, ko izmanto Zabbix lietotāja saskarnes koda rakstīšanai un atkļūdošanai:

Bibliotēka Obligātuma statuss Minimālā versija Apraksts
Composer Nē 2.4.1 Lietojumprogrammu līmeņa PHP pakotņu pārvaldnieks, kas nodrošina standarta formātu PHP programmatūras un nepieciešamo bibliotēku atkarību pārvaldībai.
PHPUnit 8.5.29 PHP vienību testēšanas ietvars Zabbix lietotāja saskarnes testēšanai.
SASS 3.4.22 Priekšprocesora skriptu valoda, kas tiek interpretēta un kompilēta kaskādes stilu lapās (CSS).
Tīmekļa pārlūks klienta pusē

Jābūt iespējotiem sīkfailiem un JavaScript.

Tiek atbalstītas jaunākās stabilās Google Chrome, Mozilla Firefox, Microsoft Edge, Apple Safari un Opera versijas.

Tiek īstenota vienas izcelsmes politika IFrame elementiem, kas nozīmē, ka Zabbix nevar ievietot rāmjos citā domēnā.

Tomēr lapām, kas ievietotas Zabbix rāmī, būs piekļuve Zabbix lietotāja saskarnei (izmantojot JavaScript), ja rāmī ievietotā lapa un Zabbix lietotāja saskarne atrodas vienā un tajā pašā domēnā. Tādai lapai kā http://secure-zabbix.com/cms/page.html, ja tā ir ievietota paneļos vietnē http://secure-zabbix.com/zabbix/, būs pilna JS piekļuve Zabbix.

Serveris/starpniekserveris

Ja programmatūra/bibliotēka ir norādīta kā obligāta, tā ir absolūti nepieciešama. Neobligātā programmatūra/bibliotēkas ir nepieciešamas noteiktu funkciju atbalstam.

Prasība Obligātuma statuss Apraksts
libpcre2 Jā PCRE2 bibliotēka ir nepieciešama Perl saderīgo regulāro izteiksmju (PCRE) atbalstam.
Tiek atbalstīts PCRE2 v10.x.
libevent Nepieciešama starpprocesu saziņai. Versija 2.0.10 vai jaunāka.
libevent-pthreads Nepieciešama starpprocesu saziņai.
libpthread Nepieciešama mutex un lasīšanas-rakstīšanas bloķēšanas atbalstam (var būt libc sastāvdaļa).
libresolv Nepieciešama DNS izšķiršanai (var būt libc sastāvdaļa).
libiconv Nepieciešama teksta kodējuma/formāta konvertēšanai (var būt libc sastāvdaļa). Obligāta Zabbix serverim operētājsistēmā Linux.
libz Nepieciešama saspiešanas atbalstam.
libm Matemātikas bibliotēka. Nepieciešama tikai Zabbix serverim.
libmysqlclient Viena no Nepieciešama, ja tiek izmantots MySQL.
libmariadb Nepieciešama, ja tiek izmantots MariaDB.
libpq5 Nepieciešama, ja tiek izmantots PostgreSQL; libpq5 versijai jāatbilst izmantotās PostgreSQL datubāzes versijai vai jābūt jaunākai par to.
libsqlite3 Nepieciešama, ja tiek izmantots SQLite. Nepieciešama tikai Zabbix starpniekserverim.
libOpenIPMI Nē Nepieciešama IPMI atbalstam. Nepieciešama tikai Zabbix serverim.
libssh2 vai libssh Nepieciešama SSH pārbaudēm. Versija 1.8.0 vai jaunāka (libssh2); 0.9.0 vai jaunāka (libssh).
libcurl Nepieciešama šādām funkcijām:
- Tīmekļa uzraudzībai, VMware uzraudzībai un HTTP aģenta vienumiem (visiem: versija 7.19.1 vai jaunāka);
- Zabbix aģenta web.page.* vienumiem (versija 7.19.1 vai jaunāka; skatiet arī aģenta prasības);
- SMTP autentifikācijai (Basic: versija 7.20.0 vai jaunāka; OAuth: versija 7.33 vai jaunāka; skatiet arī lietotāja saskarnes prasības);
- Elasticsearch (versija 7.28.0 vai jaunāka);
- Telemetrijas vaicājuma vienumiem (versija 7.28.0 vai jaunāka).

Ieteicams izmantot versiju 7.28.0 vai jaunāku visām funkcijām.
Lai izmantotu uzlabotās cURL funkcijas web.page.* vienumiem, restartējiet Zabbix serveri/starpniekserveri.
SMTP autentifikācijai izpildes laikā izmantojiet pakotni libcurl-full.
libxml2 Nepieciešama VMware uzraudzībai un XML XPath priekšapstrādei.
net-snmp Nepieciešama SNMP atbalstam. Versija 5.3.0 vai jaunāka.
Spēcīgu šifrēšanas protokolu (AES192/AES192C, AES256/AES256C) atbalsts ir pieejams, sākot ar net-snmp bibliotēkas versiju 5.8; sistēmās, kuru pamatā ir RHEL 8+, ieteicams izmantot net-snmp 5.8.15 vai jaunāku versiju.
libunixodbc Nepieciešama datubāzu uzraudzībai.
libgnutls vai libopenssl Nepieciešama, izmantojot šifrēšanu.
Minimālās versijas: libgnutls - 3.1.18, libopenssl - 1.0.1
libldap Nepieciešama LDAP atbalstam.
fping Nepieciešama ICMP ping vienumiem.
c-ares Nepieciešama asinhronai DNS izšķiršanai, ja Zabbix ir konfigurēts ar opciju --with-ares. Pretējā gadījumā tiks izmantots libevent.
Minimālā versija: 1.16.0. DNS vaicājumu kešatmiņas un kļūmjpārejas funkcijai (vaicājumu kešatmiņa pēc noklusējuma ir iespējota) nepieciešama c-ares versija 1.26.0 vai jaunāka. Sistēmās, kur c-ares nodrošina operētājsistēmas pakotne, pārliecinieties, ka instalētā izpildlaika bibliotēka nodrošina DNS kešatmiņai un kļūmjpārejai nepieciešamās izšķīrēja funkcijas.
g++ C++ kompilators. Nepieciešams, lai kompilētu Zabbix starpniekserveri ar opciju --with-apm lietojumprogrammu veiktspējas uzraudzībai (APM) (/manual/concepts/proxy/distributed_monitoring#adding-proxies).
gRPC Nepieciešams APM Zabbix starpniekserverī, ja tas ir kompilēts ar opciju --with-apm.
Nepieciešamās bibliotēkas: grpc++, grpc, gpr.
Zabbix starpniekservera kompilēšanai nepieciešama arī utilīta grpc_cpp_plugin.

Nepieciešamā versija ir pieejama šo operētājsistēmu standarta pakotņu krātuvēs:
- Ubuntu 23.04 vai jaunāka versija;
- Debian 12 (Bookworm) vai jaunāka versija;
- Alpine Linux 3.15 vai jaunāka versija;
- RHEL, Rocky Linux, CentOS Stream 9 vai jaunāka versija (tikai no EPEL krātuves);
- Fedora X vai jaunāka versija.
Vecākās operētājsistēmu versijās gRPC jāizveido no pirmkoda.
protobuf Nepieciešama APM Zabbix starpniekserverī, ja tas ir kompilēts ar opciju --with-apm.
Zabbix starpniekservera kompilēšanai nepieciešams arī kompilators protoc.
Abseil Nepieciešama APM Zabbix starpniekserverī, ja tas ir kompilēts ar opciju --with-apm.
Nepieciešamās bibliotēkas: absl_synchronization, absl_base.
Parasti tiek instalēta kopā ar gRPC.
Aģents
Requirement Mandatory status Description
libpcre2 Yes PCRE2 bibliotēka ir nepieciešama Perl Compatible Regular Expression (PCRE) atbalstam.
Tiek atbalstīta PCRE2 v10.x.
Nepieciešama žurnālu monitorēšanai. Nepieciešama arī operētājsistēmā Windows.
libpthread Nepieciešama mutex un lasīšanas-rakstīšanas slēdžu atbalstam (var būt daļa no libc). Nav nepieciešama operētājsistēmā Windows.
libresolv Nepieciešama DNS atrisināšanai (var būt daļa no libc). Nav nepieciešama operētājsistēmā Windows.
libiconv Nepieciešama teksta kodējuma/formāta pārveidošanai uz UTF-8 žurnālu vienumos, faila saturā, faila regex un regmatch vienumos (var būt daļa no libc). Nav nepieciešama operētājsistēmā Windows.
libgnutls or libopenssl No Nepieciešama, ja tiek izmantota šifrēšana.
Minimālās versijas: libgnutls - 3.1.18, libopenssl - 1.0.1
Microsoft Windows vidē ir nepieciešams OpenSSL 1.1.1 vai jaunāks.
libldap Nepieciešama, ja tiek izmantots LDAP. Nav atbalstīta operētājsistēmā Windows.
libcurl Nepieciešama paplašinātam Zabbix aģents web.page.* vienumu atbalstam.
Bez libcurl ir pieejama pamata funkcionalitāte (piem., web.page.get[http://example.com]). Ar libcurl aģents atbalsta papildu iespējas, piemēram, HTTP URL ar akreditācijas datiem (piem., http://user:[email protected]) un HTTPS URL.
Nepieciešama versija 7.19.1 vai jaunāka (ieteicama 7.28.0 vai jaunāka).
Lai izmantotu atjauninātās cURL funkcijas, restartējiet Zabbix aģents.
libmodbus Nepieciešama tikai tad, ja tiek izmantota Modbus monitorēšana.
Versija 3.0 vai jaunāka.
Aģents 2
Requirement Mandatory status Description
Go Yes Nepieciešams, lai no avota izveidotu Zabbix aģents 2 un tā spraudņus.
Tiek atbalstīts Go 1.25 vai jaunāks. Instalēšanas norādījumus skatiet go.dev.
Zabbix aģents 2 un tā spraudņu izmantotās Go bibliotēkas ir uzskaitītas Zabbix Git repozitorijā (repozitorijā ar indirect atzīmētās bibliotēkas ir citu nepieciešamo bibliotēku atkarības):
- Zabbix aģents 2
- Spraudņu atbalsts
- PostgreSQL
- MongoDB
- MSSQL
- Ember+
- NVIDIA GPU
- Piemēra spraudnis
libpcre2 Yes PCRE2 bibliotēka ir nepieciešama Perl Compatible Regular Expression (PCRE) atbalstam.
Tiek atbalstīta PCRE2 v10.x.
Nepieciešama žurnālu uzraudzībai. Nepieciešama arī operētājsistēmā Windows.
libopenssl No Nepieciešama, izmantojot šifrēšanu.
UNIX platformās nepieciešama OpenSSL 1.0.1 vai jaunāka versija.
OpenSSL bibliotēkai jābūt ar iespējotu PSK atbalstu. LibreSSL netiek atbalstīta.
Microsoft Windows sistēmās nepieciešama OpenSSL 1.1.1 vai jaunāka versija.
Tīmekļa pakalpojums

Jaunākā stabilā Google Chrome versija tiek atbalstīta ieplānoto atskaišu ģenerēšanai, izmantojot Zabbix tīmekļa pakalpojumu.

Nepieciešamā Go versija tīmekļa pakalpojuma būvēšanai atbilst tai, kas tiek izmantota Zabbix aģents 2.

Java gateway

Ja Zabbix tika iegūts no pirmkoda repozitorija vai arhīva, nepieciešamās atkarības jau ir iekļautas pirmkoda kokā.

Ja Zabbix tika iegūts no jūsu distribūcijas pakotnes, nepieciešamās atkarības jau nodrošina pakotņu sistēma.

Abos iepriekš minētajos gadījumos programmatūra ir gatava lietošanai, un papildu lejupielādes nav nepieciešamas.

Tomēr, ja vēlaties nodrošināt savas šo atkarību versijas (piemēram, ja gatavojat pakotni kādai Linux distribūcijai), tālāk ir norādīts to bibliotēku versiju saraksts, ar kurām Java gateway darbība ir pārbaudīta. Zabbix var darboties arī ar citām šo bibliotēku versijām.

Tālāk esošajā tabulā ir uzskaitīti JAR faili, kas pašlaik ir iekļauti Java gateway sākotnējā kodā:

Bibliotēka Obligāta Iekļautā versija Komentāri
android-json Jā 4.3r1 JSON (JavaScript Object Notation) ir viegls datu apmaiņas formāts. Šī ir ar org.json saderīga Android implementācija, kas iegūta no Android SDK.
logback-classic 1.5.25
logback-core 1.5.25
slf4j-api 2.0.16

Java gateway var izveidot, izmantojot Oracle Java vai atvērtā pirmkoda OpenJDK (versiju 1.6 vai jaunāku). Zabbix nodrošinātās pakotnes tiek kompilētas, izmantojot OpenJDK. Tālāk esošajā tabulā ir uzskaitītas OpenJDK pakotnes, ko distribūcijas izmanto Zabbix pakotņu izveidei:

Distribūcija OpenJDK pakotne
AlmaLinux 10 java-21-openjdk-devel (amd64, arm64: 21.0.12.0.8-1.2)
AlmaLinux 9 java-11-openjdk-devel (amd64: 11.0.19.0.7-4; arm64: 11.0.20.0.8-3)
AlmaLinux 8 java-1.8.0-openjdk-devel (amd64: 1.8.0.332.b09-2; arm64: 1.8.0.382.b05-2)
Amazon Linux 2023 java-22-amazon-corretto-devel (amd64, arm64: 22.0.2+9-1)
CentOS Stream 10 java-21-openjdk-devel (amd64, arm64: 21.0.11.0.10-2)
CentOS Stream 9 java-11-openjdk-devel (amd64, arm64: 11.0.18.0.10-3)
CentOS Stream 8 java-1.8.0-openjdk-devel (amd64, arm64: 1.8.0.362.b08-3)
CentOS 7 java-1.8.0-openjdk-devel (amd64: 1.8.0.282.b08-1)
Debian 13 default-jdk-headless (amd64, arm64: 2:1.21-76)
Debian 12 default-jdk-headless (amd64, arm64: 2:1.17-74)
Debian 11 default-jdk-headless (amd64: 2:1.11-72)
OpenSUSE Leap 16 java-21-openjdk-devel (amd64, arm64: 21.0.11.0-160000.2.1)
OpenSUSE Leap 15 java-17-openjdk-devel (amd64: 17.0.5.0-150400.3.9.3; arm64: 17.0.8.0-150400.3.27.1)
Oracle Linux 10 java-21-openjdk-devel (amd64, arm64: 21.0.11.0.10-2.0.1)
Oracle Linux 9 java-11-openjdk-devel (amd64: 11.0.19.0.7-4.0.1; arm64: 11.0.20.0.8-2.0.1)
Oracle Linux 8 java-1.8.0-openjdk-devel (amd64: 1.8.0.372.b07-4.0.1); java-11-openjdk-devel (arm64: 11.0.20.0.8-3.0.1)
Oracle Linux 7 java-1.8.0-openjdk-devel (amd64: 1.8.0.282.b08-1)
Raspberry Pi OS 13 default-jdk-headless (arm64, armhf: 2:1.21-76)
Raspberry Pi OS 12 default-jdk-headless (arm64, armhf: 2:1.17-74)
Raspberry Pi OS 11 default-jdk-headless (arm64: 2:1.11-72; armhf: 2:1.11-72+b4)
RHEL 10 java-21-openjdk-devel (amd64, arm64: 21.0.12.0.8-1.2)
RHEL 9 java-11-openjdk-devel (amd64: 11.0.19.0.7-4; arm64: 11.0.20.0.8-3)
RHEL 8 java-1.8.0-openjdk-devel (amd64: 1.8.0.372.b07-4; arm64: 1.8.0.382.b05-2)
RHEL 7 java-1.8.0-openjdk-devel (amd64: 1.8.0.282.b08-1)
Rocky Linux 10 java-21-openjdk-devel (amd64, arm64: 21.0.12.0.8-1.2)
Rocky Linux 9 java-11-openjdk-devel (amd64: 11.0.19.0.7-4; arm64: 11.0.20.0.8-3)
Rocky Linux 8 java-1.8.0-openjdk-devel (amd64: 1.8.0.372.b07-4; arm64: 1.8.0.382.b05-2)
SLES 16 java-21-openjdk-devel (amd64, arm64: 21.0.11.0-160000.1.1)
SLES 15 java-17-openjdk-devel (amd64: 17.0.5.0-150400.3.9.3; arm64: 17.0.8.0-150400.3.27.1)
Ubuntu 26.04 default-jdk-headless (amd64, arm64: 2:1.25-77)
Ubuntu 24.04 default-jdk-headless (amd64, arm64: 2:1.21-75+exp1)
Ubuntu 22.04 default-jdk-headless (amd64, arm64: 2:1.11-72build2)
Ubuntu 20.04 default-jdk-headless (amd64, arm64: 2:1.11-72)
Tilta adapteris

Zabbix tilta adapterim nav īpašu prasību.

Noklusējuma portu numuri

Tālāk norādītais katra komponenta atvērto portu saraksts attiecas uz noklusējuma konfigurāciju:

Zabbix komponents Porta numurs Protokols Savienojuma veids
Zabbix aģents 10050 TCP pēc pieprasījuma
Zabbix aģents 2 10050 TCP pēc pieprasījuma
Zabbix serveris 10051 TCP pēc pieprasījuma
Zabbix starpniekserveris 10051 TCP pēc pieprasījuma
Zabbix Java gateway 10052 TCP pēc pieprasījuma
Zabbix tīmekļa pakalpojums 10053 TCP pēc pieprasījuma
Zabbix MCP serveris 8443 TCP pēc pieprasījuma
Zabbix lietotāja saskarne 80 HTTP pēc pieprasījuma
443 HTTPS pēc pieprasījuma
Zabbix trapper 10051 TCP pēc pieprasījuma
Zabbix tilta adapteris 10054 TCP pēc pieprasījuma

Lai nodrošinātu Zabbix sakarus, portiem jābūt atvērtiem ugunsmūrī. Izejošajiem TCP savienojumiem parasti nav nepieciešami īpaši ugunsmūra iestatījumi.

Datubāzes izmērs

Zabbix konfigurācijas dati aizņem fiksētu diska vietas apjomu un būtiski nepieaug.

Zabbix datubāzes izmērs galvenokārt ir atkarīgs no šiem mainīgajiem, kas nosaka glabāto vēsturisko datu apjomu:

  • Apstrādāto vērtību skaits sekundē

Tas ir vidējais jauno vērtību skaits, ko Zabbix serveris saņem katru sekundi. Piemēram, ja mums ir 3000 vienumi uzraudzībai ar atsvaidzināšanas intervālu 60 sekundes, vērtību skaits sekundē tiek aprēķināts kā 3000/60 = 50.

Tas nozīmē, ka katru sekundi Zabbix datubāzei tiek pievienotas 50 jaunas vērtības.

  • Housekeeper iestatījumi vēsturei

Zabbix glabā vērtības noteiktu laika periodu, parasti vairākas nedēļas vai mēnešus. Katrai jaunai vērtībai ir nepieciešams noteikts diska vietas apjoms datiem un indeksam.

Tātad, ja mēs vēlamies glabāt 30 dienu vēsturi un saņemam 50 vērtības sekundē, kopējais vērtību skaits būs aptuveni (30*24*3600)* 50 = 129.600.000 jeb apmēram 130M vērtību.

Atkarībā no izmantotā datubāzes dzinēja, saņemto vērtību tipa (peldošie skaitļi, veseli skaitļi, virknes, žurnālfaili utt.), diska vietas apjoms vienas vērtības glabāšanai var svārstīties no 40 baitiem līdz simtiem baitu. Parasti tas ir apmēram 90 baiti uz vienu vērtību skaitliskajiem vienumiem2. Mūsu gadījumā tas nozīmē, ka 130M vērtību prasīs 130M * 90 baiti = 10.9GB diska vietas.

Teksta/žurnāla vienumu vērtību izmēru nav iespējams precīzi paredzēt, taču var rēķināties ar aptuveni 500 baitiem uz vienu vērtību.

  • Housekeeper iestatījums tendencēm

Zabbix katram vienumam tabulā trends glabā 1 stundas max/min/avg/count vērtību kopu. Šie dati tiek izmantoti tendenču un ilgtermiņa grafiku veidošanai. Vienas stundas periods nav pielāgojams.

Zabbix datubāzei atkarībā no datubāzes tipa nepieciešami aptuveni 90 baiti uz katru ierakstu. Pieņemsim, ka mēs vēlamies glabāt tendenču datus 5 gadus. 3000 vienumu vērtībām būs nepieciešams 3000*24*365* 90 = 2.2GB gadā jeb 11GB 5 gadiem.

  • Housekeeper iestatījumi notikumiem

Katram Zabbix notikumam ir nepieciešami aptuveni 250 baiti diska vietas1. Ir grūti novērtēt, cik daudz notikumu Zabbix ģenerē dienā. Sliktākajā gadījumā var pieņemt, ka Zabbix ģenerē vienu notikumu sekundē.

Katram atjaunotajam notikumam tiek izveidots event_recovery ieraksts. Parasti lielākā daļa notikumu tiek atjaunoti, tāpēc var pieņemt vienu event_recovery ierakstu uz katru notikumu. Tas nozīmē papildu 80 baitus uz vienu notikumu.

Papildus notikumiem var būt tagi, un katram taga ierakstam nepieciešami aptuveni 100 baiti diska vietas1. Tagu skaits uz notikumu (#tags) ir atkarīgs no konfigurācijas. Tātad katram būs nepieciešami papildu #tags * 100 baiti diska vietas.

Tas nozīmē, ka, ja mēs vēlamies glabāt 3 gadu notikumus, tam būs nepieciešams 3*365*24*3600* (250+80+#tags*100) = ~30GB+#tags*100B diska vietas2.

1 Vairāk, ja notikumu nosaukumos, tagos un vērtībās ir ne-ASCII rakstzīmes.
2 Izmēra aplēses ir balstītas uz MySQL un var atšķirties citās datubāzēs.

Tabulā ir formulas, ko var izmantot, lai aprēķinātu Zabbix sistēmai nepieciešamo diska vietu:

Parameter Formula for required disk space (in bytes)
Zabbix configuration Fiksēts izmērs. Parasti 10MB vai mazāk.
History days*(items/refresh rate)*24*3600*bytes
items : vienumu skaits
days : dienu skaits, cik ilgi glabāt vēsturi
refresh rate : vienumu vidējais atsvaidzināšanas intervāls
bytes : baitu skaits, kas nepieciešams vienas vērtības glabāšanai; atkarīgs no datubāzes dzinēja, parasti ~90 baiti.
Trends days*(items/3600)*24*3600*bytes
items : vienumu skaits
days : dienu skaits, cik ilgi glabāt vēsturi
bytes : baitu skaits, kas nepieciešams vienas tendences glabāšanai; atkarīgs no datubāzes dzinēja, parasti ~90 baiti.
Events days*events*24*3600*bytes
events : notikumu skaits sekundē. Sliktākajā gadījumā viens (1) notikums sekundē.
days : dienu skaits, cik ilgi glabāt vēsturi
bytes : baitu skaits, kas nepieciešams viena notikuma glabāšanai; atkarīgs no datubāzes dzinēja, parasti ~330 + vidējais tagu skaits uz notikumu * 100 baiti.

Tātad kopējo nepieciešamo diska vietu var aprēķināt šādi:

Konfigurācija + Vēsture + Tendences + Notikumi

Diska vieta netiks izmantota uzreiz pēc Zabbix instalēšanas. Datubāzes izmērs pieaugs un pēc tam noteiktā brīdī pārtrauks pieaugt, kas ir atkarīgs no housekeeper iestatījumiem.

Laika sinhronizācija

Ir ļoti svarīgi nodrošināt precīzu sistēmas laiku serverī, kurā darbojas Zabbix. ntpd ir vispopulārākais dēmons, kas sinhronizē hosta laiku ar citu iekārtu laiku. Ir stingri ieteicams uzturēt sinhronizētu sistēmas laiku visās sistēmās, kurās darbojas Zabbix komponenti.