Zabbix fait évoluer le fonctionnement de certains collecteurs de données pour améliorer les performances de ceux-ci et augmenter le nombre de collectes.
Avant Zabbix 7.0, les données étaient collectées par différents collecteurs de données :
- Pollers
- Trappers
- Pingers
- etc.
Le collecteur « Pollers » gérait la collecte pour les agents passifs, HTTP agent et SNMP.
Les processus d’interrogation ne pouvaient collecter qu’une seule mesure à la fois :
- Par conséquent, des centaines de pollers étaient nécessaires dans certains scénarios.
- Le nombre maximal de pollers était limité à 1000.
Dans Zabbix 7.0, de nouveaux types de pollers ont été ajoutés :
- SNMP poller
- Zabbix Agent poller
- HTTP check poller
Voir le schéma ci-dessous:
![](/web/image/1344-928e18e1/image-5-2.png?access_token=9ed336b9-2cbe-4ef6-8a12-204b6160ac5b)
Les nouveaux collecteurs
SNMP poller
Le poller SNMP collecte les données en utilisant le protocole SNMP :
- Utilise le protocole SNMP via UDP pour collecter les données (v1, v2c et v3)
- Optimisé pour fonctionner avec des périphériques réseaux (SNMPGET, SNMPBULKGET)
![](/web/image/1343-7da7ad19/image-7-1024x239.png?access_token=4f5ce807-36ba-4f07-b999-f2a9431ab12e)
Zabbix agent poller
Le poller Zabbix Agent collecte les données des agents passifs:
- Utilise le protocole de communication Zabbix
- Optimisé pour communiquer avec les agents Zabbix en mode passif
![](/web/image/1340-9293cc30/image-8-1024x239.png?access_token=7861cbe4-c6ba-4bc8-9334-6900dd8ff31c)
HHTP Agent poller
L’agent poller HTTP collecte des données à partir de pages web :
- Utilise la librairie libcurl pour la collecte de données
- Optimisé pour fonctionner avec des requêtes web
![](/web/image/1341-d6b1f292/image-9-1024x239.png?access_token=43383562-1f21-4f60-9138-1bc6cee93b26)
Nombre de contrôles simultanés
Le nombre maximum de contrôles simultanés peut être spécifié :
- Spécifié par la valeur MaxConcurrentChecksPerPoller
- La Valeur par défaut est de 1000
![](/web/image/1342-c25ed871/image-6-1024x239.png?access_token=89481d7c-4834-49a6-81cd-e32c0c52c741)
Collecte Asynchrone
Chaque type de poller est désormais un processus asynchrone :
- Chaque processus peut collecter jusqu’à 1000 valeurs en un seul cycle,
- Un processus séparé est lancé pour se synchroniser avec le cache de configuration.
Les processus asynchrones sont un concept de programmation qui permet d’exécuter des tâches indépendamment les unes des autres et sans bloquer l’exécution du programme principal.
Exemple:
![](/web/image/1345-03f5e19a/image-10-1024x679.png?access_token=3a879df7-52bb-48f7-8ced-34e4300f9357)
Ci-dessous, la collecte de données sous Zabbix 6.0:
![](/web/image/1348-603510cf/image-13.png?access_token=e45b161a-5892-48f7-8d20-a66d66760121)
Ci-dessous, la collecte de données sous Zabbix 7.0:
![](/web/image/1347-f9010f74/image-12-1024x128.png?access_token=5239441f-7bb8-480b-b795-520fe477adf4)
Réduit le nombre de process de collecte
Comme vous pouvez le voir ci-dessous Zabbix 6.0 vs 7.0 réduit l’utilisation des process data collector.
![](/web/image/1346-37d2d8f4/image-11-1024x545.png?access_token=ed20213f-f97b-4436-bcff-bbdee02c8f8e)