Requisiti

Hardware

Memoria

Zabbix richiede sia memoria fisica che memoria su disco. La quantità di memoria su disco necessaria dipende ovviamente dal numero di host e di parametri che vengono monitorati. Se si prevede di conservare una lunga cronologia dei parametri monitorati, è opportuno considerare almeno un paio di gigabyte per avere spazio sufficiente a memorizzare la cronologia nel database. Ogni processo daemon di Zabbix richiede diverse connessioni a un server di database. La quantità di memoria allocata per la connessione dipende dalla configurazione del motore di database.

Maggiore è la memoria fisica disponibile, più velocemente funzionerà il database (e quindi Zabbix).

CPU

Zabbix e in particolare il database di Zabbix possono richiedere risorse CPU significative a seconda del numero di parametri monitorati e del motore di database scelto.

Altro hardware

Per utilizzare il supporto alle notifiche SMS in Zabbix sono necessari una porta di comunicazione seriale e un modem GSM seriale. Funzionerà anche un convertitore da USB a seriale.

Esempi di configurazione hardware

La tabella fornisce esempi di configurazione hardware, assumendo una piattaforma Linux/BSD/Unix.

Questi sono esempi di dimensionamento e configurazione hardware da cui iniziare. Ogni installazione di Zabbix è unica. Assicurarsi di eseguire benchmark delle prestazioni del sistema Zabbix in un ambiente di staging o di sviluppo, in modo da comprendere pienamente i requisiti prima di distribuire l'installazione di Zabbix nell'ambiente di produzione.

Dimensione dell'installazione Metriche monitorate1 Core CPU/vCPU Memoria
(GiB)
Database Amazon EC22
Piccola 1 000 2 8 MySQL Server,
Percona Server,
MariaDB Server,
PostgreSQL
m6i.large/m6g.large
Media 10 000 4 16 MySQL Server,
Percona Server,
MariaDB Server,
PostgreSQL
m6i.xlarge/m6g.xlarge
Grande 100 000 16 64 MySQL Server,
Percona Server,
MariaDB Server,
PostgreSQL
m6i.4xlarge/m6g.4xlarge
Molto grande 1 000 000 32 96 MySQL Server,
Percona Server,
MariaDB Server,
PostgreSQL
m6i.8xlarge/m6g.8xlarge

1 1 metrica = 1 item + 1 trigger + 1 grafico
2 Esempio con istanze Amazon EC2 per uso generico, che utilizzano architettura ARM64 o x86_64; durante la valutazione e i test dell'installazione di Zabbix, prima dell'installazione nell'ambiente di produzione, deve essere selezionato un tipo di istanza appropriato, ad esempio ottimizzato per calcolo/memoria/storage.

La configurazione effettiva dipende in larga misura dal numero di item attivi e dagli intervalli di aggiornamento (per i dettagli, vedere la sezione dimensione del database di questa pagina). Per installazioni di grandi dimensioni, è altamente consigliato eseguire il database su un server separato.

Piattaforme supportate

A causa dei requisiti di sicurezza e della natura mission-critical del server di monitoraggio, UNIX è l'unico sistema operativo in grado di garantire costantemente le prestazioni, la tolleranza ai guasti e la resilienza necessarie. Zabbix funziona sulle versioni leader di mercato.

I componenti di Zabbix sono disponibili e testati per le seguenti piattaforme:

Piattaforma Server Agent Agent 2 Commenti
Linux x x x
Windows - x x Zabbix agent è supportato su tutte le versioni desktop e server a partire da Windows XP (64-bit)/Server 2003.

Zabbix agent 2 è supportato su tutte le versioni desktop e server a partire da Windows 10 (32-bit)/Server 2016, poiché è compilato solo con una versione Go supportata per prevenire vulnerabilità critiche di sicurezza. Da Go 1.21, le versioni minime richieste di Windows sono state innalzate, rendendo Windows 10/Server 2016 la versione minima per Zabbix agent 2.
macOS x x -
IBM AIX x x - Zabbix agent non funziona sulle piattaforme AIX con versioni inferiori a 6.1 TL07 / 7.1 TL01.
FreeBSD x x -
OpenBSD x x -
Solaris x x -
NetBSD x x -
HP-UX x x -

Zabbix server/agent può funzionare anche su altri sistemi operativi di tipo Unix.

Zabbix disabilita i core dump se compilato con crittografia e non si avvia se il sistema non consente la disabilitazione dei core dump.

Software richiesto

Zabbix è basato su moderni server web, principali motori di database e sul linguaggio di scripting PHP.

Software esterno di terze parti

Se indicato come obbligatorio, il software/la libreria richiesta è strettamente necessaria. Quelli opzionali sono necessari per supportare alcune funzioni specifiche.

Software Stato obbligatorietà Versioni supportate Commenti
MySQL/Percona Uno tra 8.4.0-9.5.X Richiesto se MySQL (o Percona) viene utilizzato come database backend di Zabbix. È richiesto il motore InnoDB.

Raccomandiamo di utilizzare la libreria C API (libmysqlclient) per compilare server/proxy.
MariaDB 10.11.00-12.0.X È richiesto il motore InnoDB.

La versione raccomandata è 11.4.

Raccomandiamo di utilizzare la libreria MariaDB Connector/C per compilare server/proxy.

Vedi anche: Possibili deadlock con MariaDB e Accesso agli elementi dell'interfaccia utente con MariaDB 10.5.1–10.5.9.
PostgreSQL 15.0-18.X Richiesto se PostgreSQL viene utilizzato come database backend di Zabbix.
A seconda delle dimensioni dell'installazione, potrebbe essere necessario aumentare la proprietà di configurazione work_mem di PostgreSQL (4MB è il valore predefinito), in modo che la quantità di memoria utilizzata dal database per una particolare operazione sia sufficiente e l'esecuzione delle query non richieda troppo tempo.
TimescaleDB per PostgreSQL 2.20.X-2.25.X Richiesto se TimescaleDB viene utilizzato come estensione del database PostgreSQL. Assicurarsi di installare TimescaleDB Community Edition, che supporta la compressione.

Si noti che PostgreSQL 15 è supportato a partire da TimescaleDB 2.10.
Per dettagli sulla compatibilità delle versioni di PostgreSQL e TimescaleDB, è possibile fare riferimento anche alla documentazione di TimescaleDB.
SQLite Opzionale 3.3.5-3.34.X SQLite è supportato solo con i proxy Zabbix. Richiesto se SQLite viene utilizzato come database del proxy Zabbix.
Elasticsearch 7.X Elasticsearch è supportato solo con i server Zabbix, esclusivamente per l'archiviazione dei dati storici. Il supporto di Elasticsearch è attualmente sperimentale. Vedi anche il software richiesto per server/proxy.
smartmontools 7.1 o successiva Richiesto per Zabbix agent 2.
who Richiesto per il plugin del conteggio utenti.
dpkg Richiesto per il plugin system.sw.packages.
pkgtool Richiesto per il plugin system.sw.packages.
rpm Richiesto per il plugin system.sw.packages.
pacman Richiesto per il plugin system.sw.packages.
q applets qlist e qsize, come parte di q applets, sono richiesti per il plugin system.sw.packages su Gentoo Linux.

Sebbene Zabbix possa funzionare con database disponibili nei sistemi operativi, per ottenere la migliore esperienza consigliamo di utilizzare database installati dai repository ufficiali degli sviluppatori del database.

Frontend

La larghezza minima dello schermo supportata per il frontend di Zabbix è 1200px.

Se indicato come obbligatorio, il software/la libreria richiesta è strettamente necessaria. Quelli opzionali sono necessari per supportare alcune funzioni specifiche.

Software Stato obbligatorietà Versioni supportate Commenti
PHP 8.2.0 - 8.4.X
Apache Uno tra 2.4 o successiva
Nginx 1.20 o successiva
MySQL Uno tra Vedi Software esterno di terze parti dell'ambiente circostante
PostgreSQL
Estensioni PHP
mysqli Richiesta se MySQL è utilizzato come database backend di Zabbix.
pgsql Richiesta se PostgreSQL è utilizzato come database backend di Zabbix.
bcmath php-bcmath (--enable-bcmath)
mbstring php-mbstring (--enable-mbstring)
sockets php-net-socket (--enable-sockets); richiesta per il supporto degli script utente.
gd 2.0.28 o successiva php-gd (se fornita come pacchetto separato dal distributore); l'estensione PHP GD deve supportare immagini PNG (--with-png-dir), immagini JPEG (--with-jpeg-dir) e FreeType 2 (--with-freetype-dir). La versione 2.3.0 o successiva può essere richiesta per evitare possibili sovrapposizioni di testo nei grafici per alcune lingue del frontend.
libxml 2.6.15 o successiva php-xml (se fornita come pacchetto separato dal distributore)
xmlwriter php-xmlwriter (se fornita come pacchetto separato dal distributore)
xmlreader php-xmlreader (se fornita come pacchetto separato dal distributore)
ctype php-ctype (--enable-ctype)
session php-session (se fornita come pacchetto separato dal distributore)
ldap No php-ldap; richiesta per l'autenticazione LDAP.
openssl php-openssl; richiesta per l'autenticazione SAML.
gettext php-gettext (--with-gettext); richiesta per le traduzioni.
cURL 7.19.4 o successiva php-curl; richiesta per Duo Universal Prompt MFA e per l'autenticazione SMTP.

Librerie frontend di terze parti fornite con Zabbix:

Libreria Stato obbligatorietà Versione fornita Commenti
jQuery JavaScript Library 3.6.0 Libreria JavaScript che semplifica il processo di sviluppo cross-browser.
jQuery UI 1.12.1 Un insieme di interazioni dell'interfaccia utente, effetti, widget e temi costruiti su jQuery.
SAML PHP Toolkit 4.3.1 Un toolkit PHP che aggiunge il supporto per l'autenticazione SAML 2.0 per consentire l'accesso a Zabbix.
Symfony Yaml Component 5.1.0 Aggiunge il supporto per esportare e importare elementi di configurazione di Zabbix nel formato YAML.

Zabbix può funzionare anche con versioni precedenti di Apache, MySQL e PostgreSQL.

Per font diversi da DejaVu predefinito, potrebbe essere richiesta la funzione PHP imagerotate. Se manca, questi font potrebbero essere visualizzati in modo errato quando viene mostrato un grafico. Questa funzione è disponibile solo se PHP è compilato con GD integrato, cosa che non avviene in Debian e in altre distribuzioni.

Librerie di terze parti utilizzate per scrivere ed eseguire il debug del codice del frontend di Zabbix:

Libreria Stato obbligatorietà Versione minima Descrizione
Composer No 2.4.1 Un gestore di pacchetti a livello applicativo per PHP che fornisce un formato standard per la gestione delle dipendenze del software PHP e delle librerie richieste.
PHPUnit 8.5.29 Un framework di unit testing PHP per testare il frontend di Zabbix.
SASS 3.4.22 Un linguaggio di scripting preprocessor che viene interpretato e compilato in Cascading Style Sheets (CSS).
Browser web lato client

I cookie e JavaScript devono essere abilitati.

Sono supportate le versioni stabili più recenti di Google Chrome, Mozilla Firefox, Microsoft Edge, Apple Safari e Opera.

È implementata la policy same-origin per gli IFrame, il che significa che Zabbix non può essere inserito in frame su un dominio diverso.

Tuttavia, le pagine inserite in un frame di Zabbix avranno accesso al frontend di Zabbix (tramite JavaScript) se la pagina inserita nel frame e il frontend di Zabbix si trovano sullo stesso dominio. Una pagina come http://secure-zabbix.com/cms/page.html, se inserita nelle dashboard su http://secure-zabbix.com/zabbix/, avrà pieno accesso JS a Zabbix.

Server/proxy

Se indicato come obbligatorio, il software/la libreria richiesta è strettamente necessaria. Quelli opzionali sono necessari per supportare alcune funzioni specifiche.

Requirement Mandatory status Description
libpcre2 La libreria PCRE2 è richiesta per il supporto di Perl Compatible Regular Expression (PCRE).
È supportata PCRE2 v10.x.
libevent Richiesta per la comunicazione tra processi. Versione 2.0.10 o successiva.
libevent-pthreads Richiesta per la comunicazione tra processi.
libpthread Richiesta per il supporto di mutex e lock in lettura-scrittura (può far parte di libc).
libresolv Richiesta per la risoluzione DNS (può far parte di libc).
libiconv Richiesta per la codifica/convertizione del formato del testo (può far parte di libc). Obbligatoria per Zabbix server su Linux.
libz Richiesta per il supporto della compressione.
libm Libreria matematica. Richiesta solo da Zabbix server.
libmysqlclient Una delle Richiesta se viene utilizzato MySQL.
libmariadb Richiesta se viene utilizzato MariaDB.
libpq5 Richiesta se viene utilizzato PostgreSQL; la versione di libpq5 deve corrispondere o essere superiore alla versione del database PostgreSQL utilizzato.
libsqlite3 Richiesta se viene utilizzato SQLite. Richiesta solo per Zabbix proxy.
libOpenIPMI No Richiesta per il supporto IPMI. Richiesta solo da Zabbix server.
libssh2 or libssh Richiesta per i controlli SSH. Versione 1.8.0 o successiva (libssh2); 0.9.0 o successiva (libssh).
libcurl Richiesta per le seguenti funzionalità:
- item di monitoraggio web, monitoraggio VMware e HTTP agent (per tutti: versione 7.19.1 o successiva);
- item web.page.* di Zabbix agent (versione 7.19.1 o successiva; vedere anche i requisiti di agent);
- autenticazione SMTP (Basic: versione 7.20.0 o successiva; OAuth: versione 7.33 o successiva; vedere anche i requisiti di frontend);
- Elasticsearch (versione 7.28.0 o successiva).
Per tutte le funzionalità è consigliata la versione 7.28.0 o successiva.
Per utilizzare le funzionalità cURL aggiornate per gli item web.page.*, riavviare Zabbix server/proxy.
Per l'autenticazione SMTP, utilizzare il pacchetto libcurl-full in fase di esecuzione.
libxml2 Richiesta per il monitoraggio VMware e il preprocessing XML XPath.
net-snmp Richiesta per il supporto SNMP. Versione 5.3.0 o successiva.
Il supporto dei protocolli di crittografia avanzata (AES192/AES192C, AES256/AES256C) è disponibile a partire dalla libreria net-snmp 5.8; sui sistemi basati su RHEL 8+ si consiglia di utilizzare net-snmp 5.8.15 o successiva.
libunixodbc Richiesta per il monitoraggio del database.
libgnutls or libopenssl Richiesta quando si utilizza la crittografia.
Versioni minime: libgnutls - 3.1.18, libopenssl - 1.0.1
libldap Richiesta per il supporto LDAP.
fping Richiesto per gli item ICMP ping.
c-ares Richiesto per la risoluzione DNS asincrona se Zabbix è configurato con l'opzione --with-ares. In caso contrario, verrà utilizzato libevent.
Versione minima: 1.16.0. La cache delle query DNS (cache delle query abilitata per impostazione predefinita) richiede c-ares 1.26.0 o successiva.
Agent
Requisito Stato obbligatorio Descrizione
libpcre2 La libreria PCRE2 è richiesta per il supporto di Perl Compatible Regular Expression (PCRE).
PCRE2 v10.x è supportata.
Richiesta per il monitoraggio dei log. Richiesta anche su Windows.
libpthread Richiesta per il supporto di mutex e blocchi lettura-scrittura (può essere parte di libc). Non richiesta su Windows.
libresolv Richiesta per la risoluzione DNS (può essere parte di libc). Non richiesta su Windows.
libiconv Richiesta per la codifica del testo/la conversione del formato in UTF-8 negli item log, contenuto file, file regex e regmatch (può essere parte di libc). Non richiesta su Windows.
libgnutls or libopenssl No Richiesta se si utilizza la crittografia.
Versioni minime: libgnutls - 3.1.18, libopenssl - 1.0.1
Su Microsoft Windows è richiesto OpenSSL 1.1.1 o successivo.
libldap Richiesta se viene utilizzato LDAP. Non supportata su Windows.
libcurl Richiesta per il supporto esteso degli item web.page.* di Zabbix agent.
Senza libcurl, è disponibile la funzionalità di base (ad esempio, web.page.get[http://example.com]). Con libcurl, l'agent supporta funzionalità aggiuntive, come URL HTTP con credenziali (ad esempio, http://user:[email protected]) e URL HTTPS.
È richiesta la versione 7.19.1 o successiva (si raccomanda la 7.28.0 o successiva).
Per utilizzare le funzionalità cURL aggiornate, riavviare Zabbix agent.
libmodbus Richiesta solo se viene utilizzato il monitoraggio Modbus.
Versione 3.0 o successiva.
Agent 2
Requisito Obbligatorietà Descrizione
Go Richiesto per compilare Zabbix agent 2 e i relativi plugin dal codice sorgente.
È supportato Go 1.24.10 o successivo. Vedere go.dev per le istruzioni di installazione.
Le librerie Go utilizzate da Zabbix agent 2 e dai relativi plugin sono elencate nel repository Git di Zabbix (le librerie contrassegnate come indirect nel repository sono dipendenze di altre librerie richieste):
- Zabbix agent 2
- Supporto plugin
- PostgreSQL
- MongoDB
- MSSQL
- Ember+
- NVIDIA GPU
- Plugin di esempio
libpcre2 La libreria PCRE2 è richiesta per il supporto di Perl Compatible Regular Expression (PCRE).
È supportato PCRE2 v10.x.
Richiesta per il monitoraggio dei log. Richiesta anche su Windows.
libopenssl No Richiesto quando si utilizza la crittografia.
OpenSSL 1.0.1 o successivo è richiesto sulle piattaforme UNIX.
La libreria OpenSSL deve avere il supporto PSK abilitato. LibreSSL non è supportato.
Sui sistemi Microsoft Windows è richiesto OpenSSL 1.1.1 o successivo.
Servizio web

L'ultima versione stabile di Google Chrome è supportata per la generazione di report pianificati tramite il servizio web di Zabbix.

La versione di Go richiesta per compilare il servizio web corrisponde a quella utilizzata per Zabbix agent 2.

Java gateway

Se hai ottenuto Zabbix dal repository dei sorgenti o da un archivio, le dipendenze necessarie sono già incluse nell'albero dei sorgenti.

Se hai ottenuto Zabbix dal pacchetto della tua distribuzione, le dipendenze necessarie sono già fornite dal sistema di pacchettizzazione.

In entrambi i casi sopra indicati, il software è pronto per essere utilizzato e non sono necessari download aggiuntivi.

Se tuttavia desideri fornire le tue versioni di queste dipendenze (ad esempio, se stai preparando un pacchetto per una distribuzione Linux), di seguito è riportato l'elenco delle versioni delle librerie con cui Java gateway è noto per funzionare. Zabbix potrebbe funzionare anche con altre versioni di queste librerie.

La tabella seguente elenca i file JAR attualmente inclusi con Java gateway nel codice originale:

Library Mandatory status Bundled version Comments
android-json 4.3r1 JSON (JavaScript Object Notation) è un formato leggero per lo scambio di dati. Questa è l'implementazione Android compatibile con org.json estratta dall'SDK Android.
logback-classic 1.5.16
logback-core 1.5.16
slf4j-api 2.0.16

Java gateway può essere compilato utilizzando Oracle Java oppure OpenJDK open source (versione 1.6 o successiva). I pacchetti forniti da Zabbix sono compilati utilizzando OpenJDK. La tabella seguente elenca i pacchetti OpenJDK utilizzati per compilare i pacchetti Zabbix per distribuzione:

Distribution OpenJDK package
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 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 12 default-jdk-headless (amd64, arm64: 2:1.17-74)
Debian 11 default-jdk-headless (amd64: 2:1.11-72)
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 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 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 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 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 15 java-17-openjdk-devel (amd64: 17.0.5.0-150400.3.9.3; arm64: 17.0.8.0-150400.3.27.1)
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)

Numeri di porta predefiniti

Il seguente elenco delle porte aperte per componente è applicabile alla configurazione predefinita:

Componente Zabbix Numero di porta Protocollo Tipo di connessione
Zabbix agent 10050 TCP su richiesta
Zabbix agent 2 10050 TCP su richiesta
Zabbix server 10051 TCP su richiesta
Zabbix proxy 10051 TCP su richiesta
Zabbix Java gateway 10052 TCP su richiesta
Zabbix web service 10053 TCP su richiesta
Zabbix frontend 80 HTTP su richiesta
443 HTTPS su richiesta
Zabbix trapper 10051 TCP su richiesta

I numeri di porta devono essere aperti nel firewall per abilitare le comunicazioni di Zabbix. Le connessioni TCP in uscita di solito non richiedono impostazioni esplicite del firewall.

Dimensione del database

I dati di configurazione di Zabbix richiedono una quantità fissa di spazio su disco e non crescono molto.

La dimensione del database di Zabbix dipende principalmente da queste variabili, che definiscono la quantità di dati storici memorizzati:

  • Numero di valori elaborati al secondo

Questo è il numero medio di nuovi valori che Zabbix server riceve ogni secondo. Ad esempio, se abbiamo 3000 item da monitorare con un intervallo di aggiornamento di 60 secondi, il numero di valori al secondo viene calcolato come 3000/60 = 50.

Ciò significa che ogni secondo vengono aggiunti 50 nuovi valori al database di Zabbix.

  • Impostazioni di housekeeper per lo storico

Zabbix conserva i valori per un periodo di tempo fisso, normalmente diverse settimane o mesi. Ogni nuovo valore richiede una certa quantità di spazio su disco per i dati e l'indice.

Quindi, se volessimo conservare 30 giorni di storico e ricevessimo 50 valori al secondo, il numero totale di valori sarebbe circa (30*24*3600)* 50 = 129.600.000, ovvero circa 130M di valori.

A seconda del motore di database utilizzato e del tipo di valori ricevuti (float, interi, stringhe, file di log, ecc.), lo spazio su disco necessario per conservare un singolo valore può variare da 40 byte a centinaia di byte. Normalmente è di circa 90 byte per valore per gli item numerici2. Nel nostro caso, ciò significa che 130M di valori richiederanno 130M * 90 byte = 10.9GB di spazio su disco.

La dimensione dei valori degli item di testo/log è impossibile da prevedere con precisione, ma si possono stimare circa 500 byte per valore.

  • Impostazione di housekeeper per i trend

Zabbix conserva un insieme di valori max/min/avg/count su 1 ora per ciascun item nella tabella trends. Questi dati vengono utilizzati per i trend e per i grafici di lungo periodo. Il periodo di un'ora non può essere personalizzato.

Il database di Zabbix, a seconda del tipo di database, richiede circa 90 byte per ciascun totale. Supponiamo di voler conservare i dati di trend per 5 anni. I valori per 3000 item richiederanno 3000*24*365* 90 = 2.2GB all'anno, ovvero 11GB per 5 anni.

  • Impostazioni di housekeeper per gli eventi

Ogni evento di Zabbix richiede circa 250 byte di spazio su disco1. È difficile stimare il numero di eventi generati quotidianamente da Zabbix. Nello scenario peggiore, possiamo assumere che Zabbix generi un evento al secondo.

Per ogni evento ripristinato, viene creato un record event_recovery. Normalmente la maggior parte degli eventi verrà ripristinata, quindi possiamo assumere un record event_recovery per evento. Ciò significa ulteriori 80 byte per evento.

Facoltativamente, gli eventi possono avere tag; ogni record di tag richiede circa 100 byte di spazio su disco1. Il numero di tag per evento (#tags) dipende dalla configurazione. Quindi ciascun evento richiederà ulteriori #tags * 100 byte di spazio su disco.

Ciò significa che se vogliamo conservare 3 anni di eventi, saranno necessari 3*365*24*3600* (250+80+#tags*100) = \~30GB+#tags*100B di spazio su disco2.

1 Di più in presenza di nomi evento, tag e valori non ASCII.
2 Le stime delle dimensioni si basano su MySQL e potrebbero essere diverse per altri database.

La tabella contiene formule che possono essere utilizzate per calcolare lo spazio su disco richiesto per il sistema Zabbix:

Parameter Formula for required disk space (in bytes)
Configurazione di Zabbix Dimensione fissa. Normalmente 10MB o meno.
Storico days*(items/refresh rate)*24*3600*bytes
items : numero di item
days : numero di giorni per cui conservare lo storico
refresh rate : intervallo medio di aggiornamento degli item
bytes : numero di byte necessari per conservare un singolo valore, dipende dal motore di database, normalmente \~90 byte.
Trend days*(items/3600)*24*3600*bytes
items : numero di item
days : numero di giorni per cui conservare lo storico
bytes : numero di byte necessari per conservare un singolo trend, dipende dal motore di database, normalmente \~90 byte.
Eventi days*events*24*3600*bytes
events : numero di eventi al secondo. Un (1) evento al secondo nello scenario peggiore.
days : numero di giorni per cui conservare lo storico
bytes : numero di byte necessari per conservare un singolo evento, dipende dal motore di database, normalmente \~330 + numero medio di tag per evento * 100 byte.

Quindi, lo spazio totale su disco richiesto può essere calcolato come:

Configurazione + Storico + Trend + Eventi

Lo spazio su disco NON verrà utilizzato immediatamente dopo l'installazione di Zabbix. La dimensione del database crescerà e poi smetterà di crescere a un certo punto, che dipende dalle impostazioni di housekeeper.

Sincronizzazione dell'ora

È molto importante avere un'ora di sistema precisa sul server su cui è in esecuzione Zabbix. ntpd è il demone più diffuso che sincronizza l'ora del host con quella di altre macchine. Si raccomanda vivamente di mantenere sincronizzata l'ora di sistema su tutti i sistemi su cui sono in esecuzione i componenti di Zabbix.

Requisiti di rete

Il seguente elenco delle porte aperte per componente è applicabile alla configurazione predefinita.

Componenti Porta
Frontend http sulla 80, https sulla 443
Server 10051 (per l'uso con proxy/agent attivi)
Proxy attivo 10051
Proxy passivo 10051
Agent2 10050
Trapper
Java gateway 10052
WebService 10053

I numeri di porta devono essere aperti nel firewall per abilitare le comunicazioni esterne con Zabbix. Le connessioni TCP in uscita di solito non richiedono impostazioni esplicite del firewall.