This is a translation of the original English documentation page. Help us make it better.

2 Pré-requis

Matériel

Mémoire

Zabbix nécessite à la fois de la mémoire physique et de la mémoire disque. 128 Mo de mémoire physique et 256 Mo d'espace disque libre pourraient être un bon point de départ. Cependant, la quantité de mémoire disque requise dépend évidemment du nombre d'hôtes et de paramètres surveillés. Si vous prévoyez de conserver un historique conséquent des paramètres surveillés, vous devriez penser à au moins quelques gigaoctets pour avoir assez d'espace pour stocker l'historique dans la base de données. Chaque processus démon Zabbix nécessite plusieurs connexions à un serveur de base de données. La quantité de mémoire allouée à la connexion dépend de la configuration du moteur de base de données.

Plus vous aurez de mémoire physique, plus la base de données (et donc Zabbix) fonctionnera rapidement.

CPU

Zabbix et en particulier la base de données Zabbix peuvent nécessiter des ressources CPU importantes en fonction du nombre de paramètres surveillés et du moteur de base de données choisi.

Autre materiel

Un port série et un modem GSM sont requis pour l'utilisation des notifications par SMS dans Zabbix. Un convertisseur USB vers série fonctionnera également.

Exemples de configuration matérielle

Le tableau fournit des exemples de configuration matérielle, en supposant une plate-forme Linux/BSD/Unix.

Ce sont des exemples de taille et de configuration matérielle pour commencer. Chaque installation Zabbix est unique. Assurez-vous de comparer les performances de votre système Zabbix dans un environnement de test ou de développement, afin de bien comprendre vos besoins avant de déployer l'installation de Zabbix dans son environnement de production.

Taille de l'installation Métriques surveillées1 Cœurs de CPU/vCPU Mémoire
(Gio)
Base de données Amazon EC22
Petite 1 000 2 8 MySQL Server,
Percona Server,
MariaDB Server,
PostgreSQL
m6i.large/m6g.large
Moyenne 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,
Oracle
m6i.4xlarge/m6g.4xlarge
Très grande 1 000 000 32 96 MySQL Server,
Percona Server,
MariaDB Server,
PostgreSQL,
Oracle
m6i.8xlarge/m6g.8xlarge

1 1 métrique = 1 élément + 1 déclencheur + 1 graphique
2 Exemple avec des instances EC2 à usage général d'Amazon, utilisant l'architecture ARM64 ou x86_64, un type d'instance approprié tel que Calcul/Mémoire/Storage optimisé doit être sélectionné lors de l'évaluation et des tests d'installation de Zabbix avant l'installation dans son environnement de production.

La configuration réelle dépend beaucoup du nombre d'éléments actifs et des taux de rafraîchissement (voir la section taille de la base de données de cette page pour plus de détails). Il est fortement recommandé d'exécuter la base de données sur un serveur séparé pour les grandes installations.

Plates-formes supportées

En raison des exigences de sécurité et de la nature critique du serveur de surveillance, UNIX est le seul système d'exploitation capable de fournir en permanence les performances, la tolérance aux pannes et la résilience nécessaires. Zabbix fonctionne sur des versions leaders du marché.

Les composants Zabbix sont disponibles et testés pour les plateformes suivantes :

Plateforme Serveur 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

Le serveur/agent Zabbix peut également fonctionner sur d'autres systèmes d'exploitation de type Unix. L'agent Zabbix est pris en charge sur toutes les versions de bureau et de serveur Windows depuis XP.

Zabbix désactive les core dumps s'il est compilé avec chiffrement et ne démarre pas si le système n'autorise pas la désactivation des core dumps.

Logiciels requis

Zabbix est construit autour de serveurs Web modernes, de moteurs de base de données de pointe et du langage de script PHP.

Logiciel d'environnement externe tiers

Les prérequis obligatoires sont toujours nécessaires. Des prérequis facultatifs sont nécessaires pour la prise en charge de la fonction spécifique.

Logiciel Statut obligatoire Versions prises en charge Commentaires
MySQL/Percona L'un des 8.0.X Requis si MySQL (ou Percona) est utilisé comme base de données backend Zabbix. Le moteur InnoDB est requis. Nous vous recommandons d'utiliser la bibliothèque MariaDB Connector/C pour créer un serveur/proxy.
MariaDB 10.5.00-10.8.X Le moteur InnoDB est requis. Nous vous recommandons d'utiliser la bibliothèque MariaDB Connector/C pour créer un serveur/proxy.
Oracle 19c - 21c Requis si Oracle est utilisé comme base de données backend Zabbix.
PostgreSQL 13.0-15.X Requis si PostgreSQL est utilisé comme base de données backend Zabbix.
PostgreSQL 15 est pris en charge depuis Zabbix 6.0.10.
TimescaleDB pour PostgreSQL 2.0.1-2.8 Requis si TimescaleDB est utilisé comme extension de base de données PostgreSQL. Assurez-vous d'installer TimescaleDB Community Edition, qui prend en charge la compression.
Notez que TimescaleDB ne prend pas encore en charge PostgreSQL 15.
SQLite Facultatif 3.3.5-3.34.X SQLite n'est pris en charge qu'avec les proxys Zabbix. Requis si SQLite est utilisé comme base de données proxy Zabbix.
smartmontools 7.1 ou version ultérieure Requis pour l'agent Zabbix 2.
qui Requis pour le plugin de comptage d'utilisateurs.
dpkg Requis pour le plugin system.sw.packages.
pkgtool Requis pour le plugin system.sw.packages.
tr/min Requis pour le plugin system.sw.packages.
pacman Requis pour le plugin system.sw.packages.

Bien que Zabbix puisse fonctionner avec les bases de données disponibles dans les systèmes d'exploitation, pour une expérience optimale, nous vous recommandons d'utiliser les bases de données installées à partir des référentiels officiels des développeurs de bases de données.

Interface Web

La largeur d'écran minimale prise en charge pour l'interface Zabbix est de 1200 pixels.

Les pré-requis obligatoires sont toujours nécessaires. Des pré-requis facultatives sont nécessaires pour la prise en charge de fonctions spécifiques.

Logiciel Obligatoire Version Commentaires
Apache Oui 1.3.12 ou version ultérieure
PHP 7.2.5 ou version ultérieure,
(depuis Zabbix 6.0.6) 8.0, 8.1
Recommandé d'utiliser PHP 7.4 ou version ultérieure.
Extensions PHP :
gd Oui 2.0.28 ou version ultérieure L'extension PHP GD doit prendre en charge les images PNG(--with-png-dir), JPEG (--with-jpeg-dir) et FreeType 2 (--with-freetype-dir).
bcmath php-bcmath (--enable-bcmath)
ctype php-ctype (--enable-ctype)
libXML 2.6.15 ou version ultérieure php-xml, s'il est fourni dans un package séparé par le distributeur.
xmlreader php-xmlreader, s'il est fourni dans un package séparé par le distributeur.
xmlwriter php-xmlwriter, s'il est fourni dans un package séparé par le distributeur.
session php-session, s'il est fourni dans un package séparé par le distributeur.
sockets php-net-socket (--enable-sockets). Requis pour la prise en charge des scripts utilisateur.
mbstring php-mbstring (--enable-mbstring)
gettext php-gettext (--with-gettext). Requis pour que les traductions fonctionnent.
ldap Non php-ldap. Requis uniquement si l'authentification LDAP est utilisée pour le frontend.
openssl php-openssl. Requis uniquement si l'authentification SAML est utilisée pour le frontend.
mysqli Requis si MySQL est utilisé comme base de données backend Zabbix.
oci8 Requis si Oracle est utilisé comme base de données backend Zabbix.
pgsql Requis si PostgreSQL est utilisé comme base de données backend Zabbix.

Librairies tierces fournies avec Zabbix :

Librairie Obligatoire Version minimale Commentaires
jQuery JavaScript Library Oui 3.6.0 Bibliothèque JavaScript qui simplifie le processus de développement multi-navigateur.
jQuery UI 1.12.1 Un ensemble d'interactions, d'effets, de widgets et de thèmes d'interface utilisateur construits sur jQuery.
OneLogin's SAML PHP Toolkit 3.4.1 Une boîte à outils PHP qui ajoute la prise en charge de l'authentification SAML 2.0 pour pouvoir se connecter à Zabbix.
Symfony Yaml Component 5.1.0 Ajoute la prise en charge de l'exportation et de l'importation des éléments de configuration Zabbix au format YAML.

Zabbix peut également fonctionner sur les versions précédentes d'Apache, MySQL, Oracle et PostgreSQL.

Pour d'autres polices que la DejaVu par défaut, la fonction PHP imagerotate peut être requise. Si elle est manquante, ces polices peuvent être rendues de manière incorrecte lors de l'affichage d'un graphique. Cette fonction n'est disponible que si PHP est compilé avec GD fourni, ce qui n'est pas le cas dans Debian et d'autres distributions.

Bibliothèques tierces utilisées pour écrire et déboguer le code frontal Zabbix :

Librairie Obligatoire Version minimale Commentaires
Composer Non 2.4.1 Un gestionnaire de packages au niveau de l'application pour PHP qui fournit un format standard pour la gestion des dépendances des logiciels PHP et des bibliothèques requises.
PHPUnit 8.5.29 Un framework de test unitaire PHP pour tester l'interface Zabbix.
SASS 3.4.22 Un langage de script de préprocesseur qui est interprété et compilé dans des feuilles de style en cascade (CSS).

Les cookies et JavaScript doivent être activés.

Les dernières versions stables de Google Chrome, Mozilla Firefox, Microsoft Edge, Apple Safari et Opera sont prises en charge.

La politique de same-origin pour les IFrames est implémentée, ce qui signifie que Zabbix ne peut pas être placé dans des cadres sur un domaine différent.

Néanmoins, les pages placées dans une frame Zabbix auront accès à l'interface Zabbix (via JavaScript) si la page placée dans le cadre et l'interface Zabbix se trouvent sur le même domaine. Une page comme http://secure-zabbix.com/cms/page.html, si elle est placée dans des tableaux de bord sur http://secure-zabbix.com/zabbix/, aura un accès JS complet à Zabbix.

Serveur

Les exigences obligatoires sont toujours nécessaires. Les exigences facultatives sont nécessaires à la prise en charge de la fonction spécifique.

Exigence Obligatoire Description
libpcre Oui La bibliothèque PCRE/PCRE2 est requise pour la prise en charge de Perl Compatible Regular Expression (PCRE).
La dénomination peut différer selon le GNU/Distribution Linux, par exemple 'libpcre3' ou 'libpcre1'. PCRE v8.x et PCRE2 v10.x (à partir de Zabbix 6.0.0) sont pris en charge.
libevent Requis pour la prise en charge des métriques en masse et la surveillance IPMI. Version 1.4 ou supérieure.
Notez que pour le proxy Zabbix, cette exigence est facultative ; il est nécessaire pour la prise en charge de la surveillance IPMI.
pthread Requis pour la prise en charge du mutex et du verrouillage en lecture-écriture.
zlib Requis pour la prise en charge de la compression.
resolv Requis pour la résolution DNS.
iconv Requis pour l'encodage de texte/la conversion de format. Obligatoire pour le serveur Zabbix sous Linux.
libmysqlclient Un des Obligatoire si MySQL est utilisé.
libmariadb Obligatoire si MariaDBest utilisé.
libclntsh Obligatoire si Oracle est utilisé. Version 10.0 ou supérieure.
libpq Obligatoire si PostgreSQL est utilisé. Version 9.2 ou supérieure.
libsqlite3 Obligatoire si SQLite est utilisé. Requis pour le proxy Zabbix uniquement.
openipmi Non Requis pour la prise en charge d'IPMI. Requis pour le serveur Zabbix uniquement.
libssh2 ou libssh Obligatoire pour les vérifications SSH. Version 1.0 ou supérieure (libssh2) ; 0.6.0 ou supérieur (libssh).
libssh est pris en charge depuis Zabbix 4.4.6.
fping Requis pour éléments de ping ICMP.
libcurl Requis pour la surveillance Web, la surveillance VMware, l'authentification SMTP, les éléments d'agent Zabbix web.page.*, les éléments de l'agent HTTP et Elasticsearch (le cas échéant). La version 7.28.0 ou supérieure est recommandée.
Configuration requise pour la version de Libcurl :
- Authentification SMTP : version 7.20.0 ou supérieure
- Elasticsearch : version 7.28.0 ou supérieure.
libxml2 Requis pour la surveillance VMware et le prétraitement XML XPath.
netsnmp Requis pour la prise en charge SNMP. Version 5.3.0 ou supérieure.
libunixodbc Requis pour la surveillance de la base de données. Requis pour le serveur Zabbix uniquement.
libgnutls ou libopenssl Requis lors de l'utilisation du cryptage.
Versions minimales : libgnutls - 3.1.18, libopenssl - 1.0.1
ldap Requis pour la prise en charge LDAP.
Agent
Pré-requis Obligation Description
libpcre/libpcre2 L'une des bibliothèques PCRE/PCRE2 est requise pour la prise en charge de Perl Compatible Regular Expression (PCRE).
La dénomination peut différer selon la distribution GNU/Linux , par exemple 'libpcre3' ou 'libpcre1'. PCRE v8.x et PCRE2 v10.x (à partir de Zabbix 6.0.0) sont pris en charge.
Requis pour la surveillance des journaux. Également requis sous Windows.
libpthread Oui Requis pour la prise en charge du mutex et du verrouillage en lecture-écriture (peut faire partie de la libc). Non requis sous Windows.
libresolv Requis pour la résolution DNS (peut faire partie de la libc). Non requis sous Windows.
libiconv Requis pour l'encodage de texte/la conversion de format en UTF-8 dans les éléments de journal, le contenu du fichier, l'expression régulière de fichier et les éléments de correspondance de règle (peut faire partie de la libc). Non requis sous Windows.
libgnutls or libopenssl Non Requis si vous utilisez l'encryptage.
Versions minimales : libgnutls - 3.1.18, libopenssl - 1.0.1
Sur Microsoft Windows, OpenSSL 1.1.1 ou version ultérieure est requis .
libldap Requis si LDAP est utilisé. Non pris en charge sous Windows.
libcurl Requis pour les éléments agent Zabbix web.page.*. Non pris en charge sur Windows.
La version 7.28.0 ou supérieure est recommandée.
libmodbus Nécessaire uniquement si la surveillance Modbus est utilisée.
Version 3.0 ou supérieure.

À partir de la version 5.0.3, l'agent Zabbix ne fonctionnera pas sur les plates-formes AIX inférieures aux versions 6.1 TL07 / AIX 7.1 TL01.

Agent 2
Pré-requis Obligatoire Description
libpcre/libpcre2 L'une des deux La bibliothèque PCRE/PCRE2 est requise pour la prise en charge de Perl Compatible Regular Expression (PCRE).
Le nom peut différer selon la distribution GNU/Linux, par exemple 'libpcre3' ou 'libpcre1'. PCRE v8.x et PCRE2 v10.x (à partir de Zabbix 6.0.0) sont pris en charge.
Requis pour la surveillance des journaux. Également requis sous Windows.
libopenssl Non Requis lors de l'utilisation du chiffrement.
OpenSSL 1.0.1 ou version ultérieure est requis sur les plates-formes UNIX.
La bibliothèque OpenSSL doit avoir la prise en charge PSK activée. LibreSSL n'est pas pris en charge.
Sur les systèmes Microsoft Windows, OpenSSL 1.1.1 ou version ultérieure est requis.

Bibliothèques Golang

Pré-requis Obligatoire Version minimale Description
git.zabbix.com/ap/plugin-support Oui 0.0.0 Zabbix possède sa propre bibliothèque de support. Principalement pour les plugins.
Également utilisé dans le plugin MongoDB.
github.com/BurntSushi/locker 0.0.0 Verrous de lecture/écriture nommés, synchronisation d'accès.
github.com/chromedp/cdproto 0.0.0 Commandes, types et événements générés pour les domaines du protocole Chrome DevTools.
github.com/chromedp/chromedp 0.6.0 Prise en charge du protocole Chrome DevTools (génération de rapports).
github.com/dustin/gomemcached 0.0.0 Une boîte à outils de protocole binaire memcached pour go.
github.com/eclipse/paho.mqtt.golang 1.2.0 Une bibliothèque pour gérer les connexions MQTT.
github.com/fsnotify/fsnotify 1.4.9 Notifications du système de fichiers multiplateforme pour Go.
github.com/go-ldap/ldap 3.0.3 Fonctionnalité LDAP v3 de base pour le langage de programmation GO.
github.com/go-ole/go-ole 1.2.4 Implémentation Win32 ole pour golang.
github.com/godbus/dbus 4.1.0 Fixations Go natives pour D-Bus.
github.com/go-sql-driver/mysql 1.5.0 Pilote MySQL.
github.com/godror/godror 0.20.1 Pilote Oracle DB.
github.com/jackc/pgx/v4 4.8.2 Pilote PostgreSQL.
github.com/mattn/go-sqlite3 2.0.3 Pilote Sqlite3.
github.com/mediocregopher/radix/v3 3.5.0 Client Redis.
github.com/memcachier/mc/v3 3.0.1 Client Binary Memcached.
github.com/miekg/dns 1.1.43 Bibliothèque DNS.
github.com/omeid/go-yarn 0.0.1 Magasin de chaînes de clés mappé par système de fichiers intégrable.
github.com/goburrow/modbus 0.1.0 Implémentation tolérante aux pannes de Modbus.
golang.org/x/sys 0.0.0 Packages Go pour les interactions de bas niveau avec le système d'exploitation.
Également utilisé dans la bibliothèque de support des plugins. Utilisé dans le plug-in MongoDB.
github.com/natefinch/npipe Sous Windows 0.0.0 Implémentation du canal nommé Windows.
Également utilisé dans la bibliothèque de prise en charge des plugins. Utilisé dans le plug-in MongoDB.
github.com/goburrow/serial Oui, indirect1 0.1.0 Bibliothèque série pour Modbus.
github.com/pkg/errors 0.9.1 Simples primitives de gestion des erreurs.
Utilisé dans le plugin MongoDB.
golang.org/x/xerrors 0.0.0 Fonctions pour manipuler les erreurs.
gopkg.in/asn1-ber.v1 1.0.0 Bibliothèque d'encodage/décodage pour ASN1 BER.
gopkg.in/yaml.v2 2.2.8 Go package pour encoder et décoder les valeurs YAML.
github.com/go-stack/stack Non, indirect1 1.8.0 Package requis pour le plug-in MongoDB mongo-driver lib.
github.com/golang/snappy 0.0.1 Package requis pour le plug-in MongoDB mongo-driver lib.
github.com/klauspost/compress 1.13.6 Package requis pour le plug-in MongoDB mongo-driver lib.
github.com/xdg-go/pbkdf2 1.0.0 Package requis pour le plug-in MongoDB mongo-driver lib.
github.com/xdg-go/scram 1.0.2 Package requis pour le plug-in MongoDB mongo-driver lib.
github.com/xdg-go/stringprep 1.0.2 Package requis pour le plug-in MongoDB mongo-driver lib.
github.com/youmark/pkcs8 0.0.0 Package requis pour le plug-in MongoDB mongo-driver lib.
golang.org/x/crypto 0.0.0 Package requis pour le plug-in MongoDB mongo-driver lib.
golang.org/x/text 0.3.5 Package requis pour le plug-in MongoDB mongo-driver lib.
golang.org/x/sys 0.0.0 Package requis pour le plug-in MongoDB mongo-driver lib.
github.com/natefinch/npipe 0.0.0 Package requis pour le plug-in MongoDB mongo-driver lib.

1 "Indirect" signifie qu'il est utilisé dans l'une des bibliothèques utilisées par l'agent. Nécessaire car Zabbix utilise la bibliothèque qui utilise le package.

Passerelle Java

Si vous avez obtenu Zabbix à partir du référentiel source ou d'une archive, alors les dépendances nécessaires sont déjà incluses dans l'arborescence des sources.

Si vous avez obtenu Zabbix à partir du package de votre distribution, alors les dépendances nécessaires sont déjà fournies par le système de packaging.

Dans les deux cas ci-dessus, le logiciel est prêt à être utilisé et aucun téléchargement n'est nécessaire.

Si toutefois vous souhaitez fournir vos versions de ces dépendances (par exemple, si vous préparez un paquet pour certaines distributions Linux), ci-dessous se trouve la liste des versions de librairie avec lesquelles la passerelle Java est réputée pouvoir fonctionner. Zabbix peut fonctionner avec d'autres versions de ces librairies aussi.

Le tableau suivant répertorie les fichiers JAR actuellement fournis avec la passerelle Java dans le code d'origine :

Librairie Obligatoire Commentaires
android-json Oui Version 4.3r1 ou supérieure.
JSON (JavaScript Object Notation) est un format d'échange de données léger. Il s'agit de l'implémentation Android compatible org.json extraite du SDK Android.
logback-classic Version 1.2.9 ou supérieure.
logback-core Version 1.2.9 ou supérieure.
slf4j-api Version 1.7.32 ou supérieure.

La passerelle Java peut être construite à l'aide d'Oracle Java ou de OpenJDK open-source (version 1.6 ou plus récente). Les packages fournis par Zabbix sont compilés en utilisant OpenJDK. Le tableau ci-dessous fournit des informations sur les versions OpenJDK utilisées pour créer des packages Zabbix par distribution :

Distribution Version OpenJDK
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

Numéros de port par défaut

La liste suivante de ports ouverts par composant s'applique à la configuration par défaut :

Composant Zabbix Numéro de port Protocole Type de connexion
Agent Zabbix 10050 TCP à la demande
Agent Zabbix 2 10050 TCP à la demande
Serveur Zabbix 10051 TCP à la demande
Proxy Zabbix 10051 TCP à la demande
Passerelle Java Zabbix 10052 TCP à la demande
Service web Zabbix 10053 TCP sur demande
Interface Zabbix 80 HTTP à la demande
443 HTTPS à la demande
Trapper Zabbix 10051 TCP à la demande

Les numéros de port doivent être ouverts dans le pare-feu pour permettre les communications Zabbix. Les connexions TCP sortantes ne nécessitent généralement pas de paramètres de pare-feu explicites.

Taille de la base de données

Les données de configuration de Zabbix nécessitent une quantité fixe d'espace disque et qui ne grandit pas beaucoup.

La taille de la base de données Zabbix dépend principalement de ces variables, qui définissent la quantité de données historiques stockées :

  • Nombre de valeurs traitées par seconde

Il s'agit du nombre moyen de nouvelles valeurs que le serveur Zabbix reçoit chaque seconde. Par exemple, si nous avons 3000 éléments à surveiller avec une cadence de rafraîchissementde à 60 secondes, le nombre de valeurs par seconde est calculé comme 3000/60 = 50.

Cela signifie que 50 nouvelles valeurs sont ajoutées à la base de données Zabbix chaque seconde.

  • Paramètres de Nettoyage de l'historique

Zabbix conserve les valeurs pendant une période de temps fixe, normalement plusieurs semaines ou mois. Chaque nouvelle valeur nécessite une certaine quantité d'espace disque pour les données et l'index.

Donc, si nous souhaitons conserver 30 jours d'historique et que nous recevons 50 valeurs par seconde, le nombre total de valeurs sera d'environ (30*24*3600)* 50 = 129 600 000, soit environ 130 millions de valeurs.

Selon le moteur de base de données utilisé, le type de valeurs reçues (flottants, entiers, chaînes, fichiers journaux, etc.), l'espace disque pour conserver une seule valeur peut varier de 40 octets à des centaines d'octets. Normalement c'est autour 90 octets par valeur pour les éléments numériques 2. Dans notre cas, cela signifie que 130 M de valeurs nécessiteront 130 M * 90 octets = 10,9 Go d'espace disque.

La taille des valeurs des éléments de texte/journal est impossible à prévoir exactement, mais vous pouvez vous attendre à environ 500 octets par valeur.

  • Paramètres de Nettoyage des tendances

Zabbix conserve un ensemble de valeurs max/min/moy/count d'une heure pour chaque élément dans le tableau tendances. Les données sont utilisées pour les tendances et les graphiques de longues périodes. La période d'une heure ne peut pas être personnalisée.

La base de données Zabbix, selon le type de base de données, nécessite environ 90 octets pour chaque total. Supposons que nous souhaitions conserver les données de tendance pendant 5 ans. Les valeurs pour 3 000 éléments nécessiteront 3 000*24*365* 90 = 2,2 Go par an, ou 11 Go pendant 5 ans.

  • Paramètres de Nettoyage des évènements

Chaque événement Zabbix nécessite environ 250 octets d'espace disque 1. Il est difficile d'estimer le nombre d'événements générés quotidiennement par Zabbix. Dans le pire des cas, nous pouvons supposer que Zabbix génère un événement par seconde.

Pour chaque événement récupéré, un enregistrement event_recovery est créé. Normalement la plupart des événements seront récupérés afin que nous puissions en supposer un enregistrement event_recovery par événement. Cela signifie 80 octets supplémentaires par événement.

Eventuellement, les événements peuvent avoir des tags, chaque enregistrement de tag nécessitant environ 100 octets d'espace disque 1. Le nombre de tags par événement (#tags) dépend de la configuration. Donc, chaque évènement aura besoin de #tags * 100 octets supplémentaires d'espace disque.

Cela signifie que si l'on veut conserver 3 ans d'événements, cela nécessiterait un espace disque de 3*365*24*3600* (250+80+#tags*100) = ~30GB+#tags*100B2.

1 Plus avec des noms d'événements, des balises et des valeurs.

2 Les approximations de taille sont basées sur MySQL et peuvent être différent pour les autres bases de données.

Le tableau contient des formules qui peuvent être utilisées pour calculer l'espace disque requis pour le système Zabbix :

|Paramètre|Formule pour l'espace disque requis (en octets)| |---------|---------------------------------------------------- ---| |Configuration Zabbix|Taille fixe. Normalement 10 Mo ou moins.| |Historique|jours*(éléments/taux de rafraîchissement)*24*3600*octets
éléments : nombre d'éléments
jours : nombre de jours pour conserver l'historique
taux de rafraîchissement : rafraîchissement moyen taux d'éléments
octets : nombre d'octets requis pour conserver une valeur unique, dépend du moteur de base de données, normalement ~90 octets.| |Tendances|jours*(éléments/3600)*24*3600*octets
éléments: nombre d'éléments
jours : nombre de jours pour conserver l'historique
octets : nombre d'octets requis pour conserver une seule tendance, dépend du moteur de base de données, normalement ~90 octets.| |Events|days*events*24*3600*bytes
events : nombre d'événements par seconde. Un (1) événement par seconde dans le pire des cas.
jours : nombre de jours pour conserver l'historique
octets : nombre d'octets requis pour conserver une seule tendance, dépend du moteur de base de données, normalement ~330 + moyenne nombre de balises par événement * 100 octets.|

Ainsi, l'espace disque total requis peut être calculé comme suit :
Configuration + Historique + Tendances + Événements
L'espace disque ne sera PAS utilisé immédiatement après l'installation de Zabbix. La taille de la base de données augmentera puis cessera de croître à un moment donné, ce qui dépend des paramètres de Nettoyage.

Synchronisation de l'heure

Il est très important d'avoir une heure système précise sur le serveur Zabbix en cours d'exécution. ntpd est le démon le plus populaire qui synchronise l'heure de l'hôte avec l'heure des autres machines. Il est fortement recommandé de maintenir une heure système synchronisée sur tous les composants systèmes Zabbix en cours d'exécution.

Network requirements

A following list of open ports per component is applicable for default configuration.

Port Components
Frontend http on 80, https on 443
Server 10051 (for use with active proxy/agents)
Active Proxy 10051 ( not sure about fetching config)
Passive Proxy 10051
Agent2 10050
Trapper
JavaGateway 10053
WebService 10053

In case the configuration is completed, the port numbers should be edited accordingly to prevent firewall from blocking communications with these ports.Outgoing TCP connections usually do not require explicit firewall settings.