ZabbixSupervisionDevOps

Zabbix : templates avancés et découverte automatique

28 mai 2026 · Sphinx-Digital

Superviser 5 serveurs manuellement, c’est faisable. Superviser 200 serveurs qui apparaissent et disparaissent — conteneurs, instances cloud, VMs éphémères — exige une autre approche. C’est là qu’entrent en jeu la découverte automatique et le LLD.

Network Discovery : trouver les hosts automatiquement

Zabbix peut scanner des plages réseau et ajouter automatiquement les machines qu’il découvre. Configurez une règle de découverte dans Découverte → Règles de découverte :

Plage IP : 192.168.1.0/24
Port Zabbix Agent : 10050
Intervalle : 1h

Associez une action : si Zabbix Agent répond, créer le host et attacher le template Linux. Chaque nouveau serveur qui rejoint le réseau est supervisé sans intervention manuelle.

Low-Level Discovery : items dynamiques

Le LLD résout un problème plus fin : comment superviser toutes les interfaces réseau d’un serveur sans savoir à l’avance combien il en a ?

La réponse : Zabbix découvre automatiquement les éléments (interfaces, disques, processus) et crée les items et triggers correspondants à la volée.

# Ce que retourne un LLD check réseau
zabbix_agentd -t net.if.discovery
# {"data":[{"{#IFNAME}":"eth0"},{"{#IFNAME}":"eth1"},{"{#IFNAME}":"lo"}]}

Le prototype d’item utilise la macro {#IFNAME} et Zabbix instancie un item par interface découverte. Si une interface disparaît, les items associés disparaissent aussi.

Créer un template personnalisé pour une application métier

Supposons une API Python qui expose des métriques via un endpoint /metrics :

# Item HTTP
Type : HTTP agent
URL : http://{HOST.IP}:8080/metrics
Clé : app.custom.metrics
Intervalle : 30s

Créez des preprocessing steps pour extraire la valeur exacte depuis la réponse JSON ou Prometheus, puis attachez des triggers dessus. Exportez le tout en template YAML et versionnez-le dans votre dépôt Git.

Macros de host : un template, des configurations différentes

Les macros permettent d’utiliser un seul template avec des seuils différents selon le host :

MacroValeur par défautOverride possible
{$CPU.WARN}80Par host : 95 pour un batch
{$DISK.FREE.MIN}10Par host : 5 pour des logs
{$MEM.WARN}85Par host : 90 pour une JVM

Définissez les macros au niveau du template et surchargez-les host par host quand nécessaire.

Zabbix et les conteneurs : agent ou sans agent

Pour les conteneurs Docker, deux approches coexistent : le monitoring sans agent via l’API Docker (Zabbix interroge Docker directement depuis le host) et le monitoring via zabbix-agent2 embarqué dans chaque conteneur ou sur le host.

Pour Kubernetes, des templates communautaires existent pour scraper les métriques de l’API server, des nodes et des pods — une alternative à Prometheus pour les équipes déjà investies dans Zabbix.

Notre formation Zabbix inclut un atelier dédié au LLD et aux templates sur mesure.