Geheugen
Zabbix vereist zowel fysiek als schijfgeheugen. De benodigde hoeveelheid schijfgeheugen hangt natuurlijk af van het aantal gehoste systemen en parameters dat wordt gemonitord. Als je van plan bent om een lange geschiedenis van gemonitorde parameters te bewaren, moet je denken aan minstens een paar gigabytes om voldoende ruimte te hebben om de geschiedenis in de database op te slaan. Elk Zabbix-daemonproces vereist verschillende verbindingen met een databaseserver. De hoeveelheid geheugen die wordt toegewezen voor de verbinding is afhankelijk van de configuratie van de database-engine.
Hoe meer fysiek geheugen je hebt, hoe sneller de database (en dus Zabbix) werkt.
CPU
Zabbix en vooral de Zabbix-database kunnen aanzienlijke CPU-bronnen vereisen, afhankelijk van het aantal gemonitorde parameters en de gekozen database-engine.
Andere hardware
Een seriële communicatiepoort en een seriële GSM-modem zijn vereist voor het gebruik van SMS-meldingsondersteuning in Zabbix. Een USB-naar-seriële converter werkt ook.
De onderstaande tabel geeft voorbeelden van hardwareconfiguratie weer, uitgaande van een Linux/BSD/Unix platform.
Dit zijn voorbeelden van grootte en hardwareconfiguratie om mee te beginnen. Elke Zabbix-installatie is uniek. Zorg ervoor dat je de prestaties van je Zabbix-systeem benchmarkt in een staging- of ontwikkelingsomgeving, zodat je je vereisten volledig begrijpt voordat je de Zabbix-installatie implementeert in de productieomgeving.
Installatiegrootte | Bewaakte metingen1 | CPU/vCPU-kernen | Geheugen (GiB) |
Database | Amazon EC22 |
---|---|---|---|---|---|
Klein | 1 000 | 2 | 8 | MySQL Server, Percona Server, MariaDB Server, PostgreSQL |
m6i.large/m6g.large |
Middelgroot | 10 000 | 4 | 16 | MySQL Server, Percona Server, MariaDB Server, PostgreSQL |
m6i.xlarge/m6g.xlarge |
Groot | 100 000 | 16 | 64 | MySQL Server, Percona Server, MariaDB Server, PostgreSQL, Oracle |
m6i.4xlarge/m6g.4xlarge |
Zeer groot | 1 000 000 | 32 | 96 | MySQL Server, Percona Server, MariaDB Server, PostgreSQL, Oracle |
m6i.8xlarge/m6g.8xlarge |
1 1 meting = 1 item + 1 trigger + 1 grafiek
2 Voorbeeld met Amazon general purpose EC2-instanties, gebruikmakend van ARM64- of x86_64-architectuur, een geschikt instantietype zoals Compute/Memory/Storage geoptimaliseerd moet worden geselecteerd tijdens de evaluatie en testen van de Zabbix-installatie voordat deze in de productieomgeving wordt geïnstalleerd.
De daadwerkelijke configuratie hangt sterk af van het aantal actieve items en verversingssnelheden (zie het gedeelte databasegrootte op deze pagina voor details). Het wordt sterk aanbevolen om de database op een aparte server te draaien voor grote installaties.
Vanwege de beveiligingseisen en de missiekritieke aard van de monitoringserver is UNIX het enige besturingssysteem dat consistent de benodigde prestaties, fouttolerantie en veerkracht kan bieden. Zabbix werkt op toonaangevende versies.
Zabbix-componenten zijn beschikbaar en getest voor de volgende platforms:
Platform | Server | Agent | Agent2 |
---|---|---|---|
Linux | x | x | x |
IBM AIX | x | x | - |
FreeBSD | x | x | - |
NetBSD | x | x | - |
OpenBSD | x | x | - |
HP-UX | x | x | - |
Mac OS X | x | x | - |
Solaris | x | x | - |
Windows | - | x | x |
Zabbix server/agent kan ook werken op andere Unix-achtige besturingssystemen. Zabbix-agent wordt ondersteund op alle Windows-desktop- en serverversies sinds XP.
Zabbix schakelt kern-dumps uit als het is gecompileerd met versleuteling en start niet als het systeem het uitschakelen van kern-dumps niet toestaat.
Zabbix is gebaseerd op moderne webservers, toonaangevende database-engines en de PHP-scripttaal.
Indien aangegeven als verplicht, is de benodigde software/bibliotheek absoluut noodzakelijk. Optionele software is nodig ter ondersteuning van specifieke functies.
Software | Verplichte status | Ondersteunde versies | Opmerkingen |
---|---|---|---|
MySQL/Percona | Eén van | 8.0.30-8.1.X | Vereist als MySQL (of Percona) wordt gebruikt als backend-database voor Zabbix. InnoDB-engine is vereist. MySQL 8.1 wordt ondersteund vanaf Zabbix 6.0.21. We raden aan om de C API (libmysqlclient) bibliotheek te gebruiken voor het bouwen van de server/proxy. Voor MySQL-versies 8.0.0-8.0.28, zie ook: Mogelijke deadlocks. |
MariaDB | 10.5.00-11.0.X | InnoDB-engine is vereist. De aanbevolen versie is 10.5. We raden aan om de MariaDB Connector/C bibliotheek te gebruiken voor het bouwen van de server/proxy. Ondersteuning toegevoegd voor MariaDB-versies: - 10.7.X vanaf Zabbix 6.0.6; - 10.8.X vanaf Zabbix 6.0.7; - 10.9.X en 10.10.X vanaf Zabbix 6.0.13; - 10.11.X vanaf Zabbix 6.0.15; - 11.0.X vanaf Zabbix 6.0.21. Zie ook: Mogelijke deadlocks. |
|
Oracle | 19c - 21c | Vereist als Oracle wordt gebruikt als backend-database voor Zabbix. | |
PostgreSQL | 13.0-15.X | Vereist als PostgreSQL wordt gebruikt als backend-database voor Zabbix. Afhankelijk van de installatieomvang is het mogelijk dat u de configuratie-eigenschap work_mem van PostgreSQL moet vergroten (standaardwaarde is 4 MB), zodat de hoeveelheid geheugen die door de database wordt gebruikt voor een bepaalde bewerking voldoende is en query-uitvoering niet te veel tijd in beslag neemt. Ondersteuning toegevoegd voor PostgreSQL-versies: - 15.X vanaf Zabbix 6.0.10. |
|
TimescaleDB voor PostgreSQL | 2.0.1-2.11 | Vereist als TimescaleDB wordt gebruikt als een PostgreSQL database-extensie. Zorg ervoor dat u de TimescaleDB Community Edition installeert, die compressie ondersteunt. Merk op dat PostgreSQL 15 wordt ondersteund vanaf TimescaleDB 2.10. U kunt ook de officiële documentatie raadplegen voor details over compatibiliteit tussen PostgreSQL en TimescaleDB-versies. Ondersteuning toegevoegd voor TimescaleDB-versies: - 2.6 vanaf Zabbix 6.0.7; - 2.7 vanaf Zabbix 6.0.8; - 2.8 vanaf Zabbix 6.0.10; - 2.9 vanaf Zabbix 6.0.13; - 2.10 vanaf Zabbix 6.0.15; - 2.11 vanaf Zabbix 6.0.19. |
|
SQLite | Optioneel | 3.3.5-3.34.X | SQLite wordt alleen ondersteund bij Zabbix proxies. Vereist als SQLite wordt gebruikt als Zabbix proxy-database. |
smartmontools | 7.1 of hoger | Vereist voor Zabbix agent 2. | |
who | Vereist voor de gebruikersaantallen plugin. | ||
dpkg | Vereist voor de system.sw.packages plugin. | ||
pkgtool | Vereist voor de system.sw.packages plugin. | ||
rpm | Vereist voor de system.sw.packages plugin. | ||
pacman | Vereist voor de system.sw.packages plugin. |
Hoewel Zabbix kan werken met databases die beschikbaar zijn in het besturingssysteem, raden we aan voor de beste ervaring databases te gebruiken die zijn geïnstalleerd vanuit de officiële repositories van de databaseontwikkelaar.
Here is the information presented in Dutch:
De minimum ondersteunde scherm breedte voor de Zabbix frontend is 1200px.
Indien als verplicht aangegeven, is de vereiste software/bibliotheek strikt noodzakelijk. Optionele items zijn nodig om bepaalde specifieke functies te ondersteunen.
Software | Verplichte status | Versie | Opmerkingen |
---|---|---|---|
Apache | Eén van | 2.4 of later | |
Nginx | 1.20 of later | ||
PHP | Ja | 7.2.5 of later, 8.0-8.2 | Aanbevolen om PHP 7.4 of later te gebruiken. Ondersteuning toegevoegd voor PHP-versies: - 8.0 en 8.1 sinds Zabbix 6.0.6; - 8.2 sinds Zabbix 6.0.14. |
PHP-extensies: | |||
gd | Ja | 2.0.28 of later | PHP GD-extensie moet PNG-afbeeldingen ondersteunen (--with-png-dir), JPEG (--with-jpeg-dir) afbeeldingen en FreeType 2 (--with-freetype-dir). Versie 2.3.0 of later kan nodig zijn om mogelijke tekst overlapping in grafieken voor sommige frontend-talen te vermijden. |
bcmath | php-bcmath (--enable-bcmath) | ||
ctype | php-ctype (--enable-ctype) | ||
libXML | 2.6.15 of later | php-xml, indien apart aangeboden door de distributeur. | |
xmlreader | php-xmlreader, indien apart aangeboden door de distributeur. | ||
xmlwriter | php-xmlwriter, indien apart aangeboden door de distributeur. | ||
session | php-session, indien apart aangeboden door de distributeur. | ||
sockets | php-net-socket (--enable-sockets). Vereist voor ondersteuning van gebruikersscripts. | ||
mbstring | php-mbstring (--enable-mbstring) | ||
gettext | php-gettext (--with-gettext). Vereist voor vertalingen. | ||
ldap | Nee | php-ldap. Alleen vereist als LDAP-authenticatie in de frontend wordt gebruikt. | |
openssl | php-openssl. Alleen vereist als SAML-authenticatie in de frontend wordt gebruikt. | ||
mysqli | Vereist als MySQL wordt gebruikt als Zabbix backend database. | ||
oci8 | Vereist als Oracle wordt gebruikt als Zabbix backend database. | ||
pgsql | Vereist als PostgreSQL wordt gebruikt als Zabbix backend database. |
Externe frontend bibliotheken die met Zabbix worden geleverd:
Bibliotheek | Verplichte status | Minimale versie | Opmerkingen |
---|---|---|---|
jQuery JavaScript Library | Ja | 3.6.0 | JavaScript-bibliotheek die het proces van cross-browser ontwikkeling vereenvoudigt. |
jQuery UI | 1.12.1 | Een set van gebruikersinterface-interacties, effecten, widgets en thema's gebouwd bovenop jQuery. | |
OneLogin's SAML PHP Toolkit | 3.4.1 | Een PHP toolkit die SAML 2.0 authenticatie ondersteuning toevoegt om in te kunnen loggen op Zabbix. | |
Symfony Yaml Component | 5.1.0 | Voegt ondersteuning toe om Zabbix configuratie-elementen te exporteren en importeren in het YAML-formaat. |
Zabbix kan ook werken met eerdere versies van Apache, MySQL, Oracle en PostgreSQL.
Voor andere lettertypen dan het standaard DejaVu-lettertype kan de PHP functie imagerotate vereist zijn. Als dit ontbreekt, kunnen deze lettertypen mogelijk incorrect worden weergegeven wanneer een grafiek wordt getoond. Deze functie is alleen beschikbaar als PHP is gecompileerd met de gebundelde GD, wat niet het geval is in Debian en andere distributies.
Externe bibliotheken die worden gebruikt voor het schrijven en debuggen van Zabbix frontend-code:
Bibliotheek | Verplichte status | Minimale versie | Beschrijving |
---|---|---|---|
Composer | Nee | 2.4.1 | Een op toepassingsniveau pakketmanager voor PHP die een standaard formaat biedt voor het beheren van afhankelijkheden van PHP-software en vereiste bibliotheken. |
PHPUnit | 8.5.29 | Een PHP-unit testframework voor het testen van de Zabbix frontend. | |
SASS | 3.4.22 | Een preprocessor scripttaal die wordt geïnterpreteerd en gecompileerd naar Cascading Style Sheets (CSS). |
Cookies en JavaScript moeten zijn ingeschakeld.
De nieuwste stabiele versies van Google Chrome, Mozilla Firefox, Microsoft Edge, Apple Safari en Opera worden ondersteund.
Hetzelfde-oorsprongbeleid voor IFrames is geïmplementeerd, wat betekent dat Zabbix niet in frames op een ander domein kan worden geplaatst.
Niettemin hebben pagina's die in een Zabbix-frame worden geplaatst, toegang tot de Zabbix-frontend (via JavaScript) als de pagina die in het frame wordt geplaatst en de Zabbix-frontend zich op hetzelfde domein bevinden. Een pagina zoals http://secure-zabbix.com/cms/pagina.html
, indien geplaatst in dashboards op http://secure-zabbix.com/zabbix/
, krijgt volledige JS-toegang tot Zabbix.
Indien aangeduid als verplicht, is de vereiste software/bibliotheek absoluut noodzakelijk. Optionele zijn nodig om bepaalde specifieke functies te ondersteunen.
Vereiste | Mandatory status | Omschrijving |
---|---|---|
libpcre/libpcre2 | Eén van | PCRE/PCRE2-bibliotheek is vereist voor ondersteuning van Perl Compatible Regular Expression (PCRE). De naamgeving kan verschillen afhankelijk van de GNU/Linux-distributie, bijvoorbeeld 'libpcre3' of 'libpcre1'. PCRE v8.x en PCRE2 v10.x (vanaf Zabbix 6.0.0) worden ondersteund. |
libevent | Ja | Vereist voor interprocescommunicatie. Versie 1.4 of hoger. |
libpthread | Vereist voor ondersteuning van mutex en read-write locks (kan deel uitmaken van libc). | |
libresolv | Vereist voor DNS-resolutie (kan deel uitmaken van libc). | |
libiconv | Vereist voor conversie van tekstcodering/-indeling (kan deel uitmaken van libc). Verplicht voor Zabbix-server op Linux. | |
libz | Vereist voor compressieondersteuning. | |
libm | Wiskundige bibliotheek. Alleen vereist door de Zabbix-server. | |
libmysqlclient | Eén van | Vereist indien MySQL wordt gebruikt. |
libmariadb | Vereist indien MariaDB wordt gebruikt. | |
libclntsh | Vereist indien Oracle wordt gebruikt; versie van libclntsh moet overeenkomen met of hoger zijn dan de versie van de gebruikte Oracle-database. | |
libpq5 | Vereist indien PostgreSQL wordt gebruikt; versie van libpq5 moet overeenkomen met of hoger zijn dan de versie van de gebruikte PostgreSQL-database. | |
libsqlite3 | Vereist indien Sqlite wordt gebruikt. Alleen vereist door Zabbix-proxy. | |
libOpenIPMI | Nee | Vereist voor IPMI-ondersteuning. Alleen vereist door de Zabbix-server. |
libssh2 of libssh | Vereist voor SSH-controles. Versie 1.0 of hoger (libssh2); 0.6.0 of hoger (libssh). libssh wordt ondersteund vanaf Zabbix 4.4.6. |
|
libcurl | Vereist voor webmonitoring, VMware-monitoring, SMTP-authenticatie, web.page.* Zabbix-agent items, HTTP-agent-items en Elasticsearch (indien gebruikt). Versie 7.28.0 of hoger wordt aanbevolen.Vereisten voor libcurl-versies: - SMTP-authenticatie: versie 7.20.0 of hoger - Elasticsearch: versie 7.28.0 of hoger |
|
libxml2 | Vereist voor VMware-monitoring en XML XPath-voorverwerking. | |
net-snmp | Vereist voor SNMP-ondersteuning. Versie 5.3.0 of hoger. Ondersteuning van sterke versleutelingsprotocollen (AES192/AES192C, AES256/AES256C) is beschikbaar vanaf net-snmp-bibliotheek 5.8; op RHEL 8+-gebaseerde systemen wordt aanbevolen om net-snmp 5.8.15 of later te gebruiken. |
|
libunixodbc | Vereist voor database-monitoring. | |
libgnutls of libopenssl | Vereist bij gebruik van versleuteling. Minimale versies: libgnutls - 3.1.18, libopenssl - 1.0.1 |
|
libldap | Vereist voor LDAP-ondersteuning. | |
fping | Vereist voor ICMP ping-items. |
Requirement | Mandatory status | Description |
---|---|---|
libpcre/libpcre2 | Eén van | PCRE/PCRE2-bibliotheek is vereist voor ondersteuning van Perl Compatible Regular Expression (PCRE). De naamgeving kan verschillen afhankelijk van de GNU/Linux-distributie, bijvoorbeeld 'libpcre3' of 'libpcre1'. PCRE v8.x en PCRE2 v10.x (vanaf Zabbix 6.0.0) worden ondersteund. Vereist voor logmonitoring. Ook vereist op Windows. |
libpthread | Ja | Vereist voor ondersteuning van mutex en read-write locks (kan deel uitmaken van libc). Niet vereist op Windows. |
libresolv | Vereist voor DNS-resolutie (kan deel uitmaken van libc). Niet vereist op Windows. | |
libiconv | Vereist voor conversie van tekstcodering/-indeling naar UTF-8 bij log-items, bestandsinhoud, bestandsregex en regmatch-items (kan deel uitmaken van libc). Niet vereist op Windows. | |
libgnutls of libopenssl | Nee | Vereist bij gebruik van versleuteling. Minimale versies: libgnutls - 3.1.18, libopenssl - 1.0.1 Op Microsoft Windows is OpenSSL 1.1.1 of later vereist. |
libldap | Vereist bij gebruik van LDAP. Niet ondersteund op Windows. | |
libcurl | Vereist voor web.page.* Zabbix agent items. Niet ondersteund op Windows.Versie 7.28.0 of hoger wordt aanbevolen. |
|
libmodbus | Alleen vereist bij gebruik van Modbus-monitoring. Versie 3.0 of hoger. |
Vanaf versie 5.0.3 zal de Zabbix-agent niet werken op AIX-platforms met versies lager dan 6.1 TL07 / AIX 7.1 TL01.
Vereiste | Verplichte status | Beschrijving |
---|---|---|
libpcre/libpcre2 | Een van | De PCRE/PCRE2-bibliotheek is vereist voor Perl Compatible Regular Expression (PCRE) ondersteuning. De naamgeving kan verschillen afhankelijk van de GNU/Linux distributie, bijvoorbeeld 'libpcre3' of 'libpcre1'. PCRE v8.x en PCRE2 v10.x (vanaf Zabbix 6.0.0) worden ondersteund. Vereist voor logmonitoring. Ook vereist op Windows. |
libopenssl | Nee | Vereist bij gebruik van versleuteling. OpenSSL 1.0.1 of later is vereist op UNIX-platforms. De OpenSSL-bibliotheek moet PSK-ondersteuning ingeschakeld hebben. LibreSSL wordt niet ondersteund. Op Microsoft Windows-systemen is OpenSSL 1.1.1 of later vereist. |
Go-bibliotheken
Vereiste | Verplichte status | Minimum versie | Beschrijving |
---|---|---|---|
git.zabbix.com/ap/plugin-support | Ja | 1.X.X | Zabbix eigen ondersteuningsbibliotheek. Voornamelijk voor plugins. |
github.com/BurntSushi/locker | 0.0.0 | Genoemde lees/schrijfvergrendelingen, toegangssynchronisatie. | |
github.com/chromedp/cdproto | 0.0.0 | Gegenereerde commando's, typen en gebeurtenissen voor de Chrome DevTools Protocol-domeinen. | |
github.com/chromedp/chromedp | 0.6.0 | Ondersteuning voor Chrome DevTools Protocol (rapportgeneratie). | |
github.com/dustin/gomemcached | 0.0.0 | Een toolkit voor het binair memcached-protocol voor Go. | |
github.com/eclipse/paho.mqtt.golang | 1.2.0 | Een bibliotheek om MQTT-verbindingen te beheren. | |
github.com/fsnotify/fsnotify | 1.4.9 | Cross-platform bestandssysteemnotificaties voor Go. | |
github.com/go-ldap/ldap | 3.0.3 | Basisfunctionaliteit voor LDAP v3 voor de Go-programmeertaal. | |
github.com/go-ole/go-ole | 1.2.4 | Win32 ole-implementatie voor Go. | |
github.com/godbus/dbus | 4.1.0 | Natte Go-bindings voor D-Bus. | |
github.com/go-sql-driver/mysql | 1.5.0 | MySQL-stuurprogramma. | |
github.com/godror/godror | 0.20.1 | Oracle DB-stuurprogramma. | |
github.com/mattn/go-sqlite3 | 2.0.3 | Sqlite3-stuurprogramma. | |
github.com/mediocregopher/radix/v3 | 3.5.0 | Redis-client. | |
github.com/memcachier/mc/v3 | 3.0.1 | Binaire Memcached-client. | |
github.com/miekg/dns | 1.1.43 | DNS-bibliotheek. | |
github.com/omeid/go-yarn | 0.0.1 | In te sluiten bestandssysteem gekoppelde sleutel-tekenreeksopslag. | |
github.com/goburrow/modbus | 0.1.0 | Fouttolerante implementatie van Modbus. | |
golang.org/x/sys | 0.0.0 | Go-pakketten voor lage-niveau interacties met het besturingssysteem. Ook gebruikt in ondersteuningsbibliotheek voor plugins. Gebruikt in MongoDB en PostgreSQL-plugins. |
|
github.com/Microsoft/go-winio | Op Windows. Ja, indirect1 |
0.6.0 | Implementatie van Windows genoemd pijp. Ook gebruikt in ondersteuningsbibliotheek voor plugins. Gebruikt in MongoDB en PostgreSQL-plugins. |
github.com/goburrow/serial | Ja, indirect1 | 0.1.0 | Seriële bibliotheek voor Modbus. |
golang.org/x/xerrors | 0.0.0 | Functies om fouten te manipuleren. | |
gopkg.in/asn1-ber.v1 | 1.0.0 | Coderings-/decoderingsbibliotheek voor ASN1 BER. | |
github.com/go-stack/stack | Nee, indirect1 | 1.8.0 | |
github.com/golang/snappy | 0.0.1 | ||
github.com/klauspost/compress | 1.13.6 | ||
github.com/xdg-go/pbkdf2 | 1.0.0 | ||
github.com/xdg-go/scram | 1.0.2 | ||
github.com/xdg-go/stringprep | 1.0.2 | ||
github.com/youmark/pkcs8 | 0.0.0 |
1 "Indirect" betekent dat het wordt gebruikt in een van de bibliotheken die de agent gebruikt. Het is vereist omdat Zabbix de bibliotheek gebruikt die het pakket gebruikt.
Zie ook afhankelijkheden voor laadbare plugins:
Indien u Zabbix heeft verkregen uit de bronrepository of een archief, dan zijn de benodigde afhankelijkheden al inbegrepen in de bronboom.
Indien u Zabbix heeft verkregen via het pakket van uw distributie, dan zijn de benodigde afhankelijkheden al voorzien door het verpakkingssysteem.
In beide hierboven genoemde gevallen is de software klaar voor gebruik en zijn er geen extra downloads nodig.
Als u echter uw eigen versies van deze afhankelijkheden wilt verstrekken (bijvoorbeeld als u een pakket voor een Linux-distributie voorbereidt), dan volgt hier de lijst met bibliotheekversies waarvan bekend is dat de Java-gateway hiermee werkt. Zabbix kan ook werken met andere versies van deze bibliotheken.
De volgende tabel bevat JAR-bestanden die momenteel gebundeld zijn met de Java-gateway in de oorspronkelijke code:
Bibliotheek | Verplichte status | Opmerkingen |
---|---|---|
android-json | Ja | Versie 4.3r1 of hoger. JSON (JavaScript Object Notation) is een lichtgewicht gegevensuitwisselingsformaat. Dit is de Android-implementatie die compatibel is met org.json en is geëxtraheerd uit de Android SDK. |
logback-classic | Versie 1.2.9 of hoger. | |
logback-core | Versie 1.2.9 of hoger. | |
slf4j-api | Versie 1.7.32 of hoger. |
De Java-gateway kan worden gebouwd met zowel Oracle Java als de open-source OpenJDK (versie 1.6 of nieuwer). De pakketten die door Zabbix worden geleverd, zijn gecompileerd met behulp van OpenJDK. De onderstaande tabel geeft informatie over de OpenJDK versies die worden gebruikt voor het bouwen van Zabbix-pakketten per distributie:
Distributie | OpenJDK-versie |
---|---|
RHEL 8 | 1.8.0 |
RHEL 7 | 1.8.0 |
SLES 15 | 11.0.4 |
SLES 12 | 1.8.0 |
Debian 10 | 11.0.8 |
Ubuntu 20.04 | 11.0.8 |
Ubuntu 18.04 | 11.0.8 |
De volgende lijst met open poorten per component is van toepassing op de standaardconfiguratie:
Zabbix-component | Poortnummer | Protocol | Soort verbinding |
---|---|---|---|
Zabbix-agent | 10050 | TCP | op aanvraag |
Zabbix-agent 2 | 10050 | TCP | op aanvraag |
Zabbix-server | 10051 | TCP | op aanvraag |
Zabbix-proxy | 10051 | TCP | op aanvraag |
Zabbix Java-gateway | 10052 | TCP | op aanvraag |
Zabbix webdienst | 10053 | TCP | op aanvraag |
Zabbix frontend | 80 | HTTP | op aanvraag |
443 | HTTPS | op aanvraag | |
Zabbix trapper | 10051 | TCP | op aanvraag |
De poortnummers moeten open zijn in de firewall om Zabbix-communicatie mogelijk te maken. Uitgaande TCP-verbindingen vereisen meestal geen expliciete firewall-instellingen.
Zabbix configuratiegegevens vereisen een vaste hoeveelheid schijfruimte en groeien niet veel.
De grootte van de Zabbix-database is voornamelijk afhankelijk van deze variabelen, die de hoeveelheid opgeslagen historische gegevens definiëren:
Dit is het gemiddelde aantal nieuwe waarden dat de Zabbix-server elke seconde ontvangt. Bijvoorbeeld, als je 3000 items hebt voor monitoring met een vernieuwingsinterval van 60 seconden, wordt het aantal waarden per seconde berekend als 3000/60 = 50. Dit betekent dat er elke seconde 50 nieuwe waarden aan de Zabbix-database worden toegevoegd.
Zabbix bewaart waarden gedurende een vastgestelde periode, normaal gesproken enkele weken of maanden. Elke nieuwe waarde vereist een bepaalde hoeveelheid schijfruimte voor gegevens en index.
Dus, als je 30 dagen geschiedenis wilt bewaren en je ontvangt 50 waarden per seconde, dan zal het totale aantal waarden ongeveer (30*24*3600)* 50 = 129.600.000 zijn, of ongeveer 130M waarden.
Afhankelijk van het gebruikte database-engine, het type ontvangen waarden (getallen, integers, strings, logbestanden, etc.), kan de schijfruimte voor het bewaren van één waarde variëren van 40 bytes tot honderden bytes. Normaal gesproken is dit ongeveer 90 bytes per waarde voor numerieke items2.
In dit geval betekent dit dat 130M waarden 130M * 90 bytes = 10,9 GB schijfruimte vereisen.
De grootte van tekst/log item waarden is onmogelijk exact te voorspellen, maar je kunt rekenen op ongeveer 500 bytes per waarde.
Zabbix bewaart een set van max/min/gem/aantal waarden per uur voor elk item in de tabel trends. Deze gegevens worden gebruikt voor trendanalyses en grafieken over een lange periode. De periode van één uur kan niet worden aangepast.
Afhankelijk van het type database vereist Zabbix ongeveer 90 bytes per totaal.
Stel dat je trendgegevens 5 jaar wilt bewaren. Waarden voor 3000 items vereisen 3000*24*365* 90 = 2,2 GB per jaar, of 11 GB voor 5 jaar.
Elke Zabbix-gebeurtenis vereist ongeveer 250 bytes schijfruimte1.
Het is moeilijk om het aantal gebeurtenissen dat Zabbix dagelijks genereert exact te schatten. In het slechtste geval kun je aannemen dat Zabbix één gebeurtenis per seconde genereert. Voor elke herstelde gebeurtenis wordt een event_recovery
-record gemaakt. Normaal gesproken zullen de meeste gebeurtenissen worden hersteld. Dus, je kunt één event_recovery
-record per gebeurtenis aannemen. Dat betekent extra 80 bytes per gebeurtenis.
Optioneel kunnen gebeurtenissen tags hebben, waarbij elke tag ongeveer 100 bytes schijfruimte vereist1. Het aantal tags per gebeurtenis (#tags) is afhankelijk van de configuratie.
Elke gebeurtenis heeft dus een extra #tags * 100 bytes schijfruimte nodig.
Dit betekent dat als je 3 jaar aan gebeurtenissen wilt bewaren, dit ongeveer 3*365*24*3600* (250+80+#tags*100) = ~30 GB+#tags*100B schijfruimte vereist2.
1 Meer bij niet-ASCII gebeurtenisnamen, tags en waarden.
2 De groottebenaderingen zijn gebaseerd op MySQL en kunnen verschillen voor andere databases.
De tabel bevat formules die kunnen worden gebruikt om de benodigde schijfruimte voor het Zabbix-systeem te berekenen:
Parameter | Formule voor benodigde schijfruimte (in bytes) |
---|---|
Zabbix-configuratie | Vaste grootte. Normaal gesproken 10MB of minder. |
Geschiedenis | dagen*(items/vernieuwingsinterval)*24*3600*bytes items : aantal items dagen : aantal dagen om de geschiedenis te bewaren vernieuwingsinterval : gemiddelde vernieuwingsinterval van items bytes : aantal bytes vereist om één waarde te bewaren, afhankelijk van de database-engine, normaal gesproken ~90 bytes. |
Trends | dagen*(items/3600)*24*3600*bytes items : aantal items dagen : aantal dagen om de geschiedenis te bewaren bytes : aantal bytes vereist om één trend te bewaren, afhankelijk van de database-engine, normaal gesproken ~90 bytes. |
Gebeurtenissen | dagen*gebeurtenissen*24*3600*bytes gebeurtenissen : aantal gebeurtenissen per seconde. Eén (1) gebeurtenis per seconde in het ergste geval. dagen : aantal dagen om de geschiedenis te bewaren bytes : aantal bytes vereist om één trend te bewaren, afhankelijk van de database-engine, normaal gesproken ~330 + gemiddeld aantal tags per gebeurtenis * 100 bytes. |
Dus, de totale benodigde schijfruimte kan worden berekend als:
Configuratie + Geschiedenis + Trends + Gebeurtenissen
De schijfruimte wordt NIET onmiddellijk na de installatie van Zabbix gebruikt. De grootte van de database zal groeien en op een bepaald moment stoppen met groeien, afhankelijk van de instellingen van de housekeeper.
Het is erg belangrijk om een nauwkeurige systeemtijd op de server te hebben waarop Zabbix wordt uitgevoerd. ntpd is de meest populaire daemon die de tijd van de host synchroniseert met de tijd van andere machines. Het wordt ten zeerste aanbevolen om gesynchroniseerde systeemtijd te handhaven op alle systemen waarop Zabbix-componenten worden uitgevoerd.