Ceci est une ancienne révision du document !
Scripts supplémentaires pour l'agent Zabbix
Nous maintenons quelques scripts pour améliorer le monitoring par l'agent Zabbix. Depuis la version 2.0.0, Zabbix supporte des fonctions de découvertes bas niveau: le serveur demande à l'agent une liste d'éléments, et pour chaque élément remonté, le serveur cré automatiquement les items, graphes, déclencheurs à partir de prototypes. De base, l'agent supporte:
- net.if.discovery: remonte la liste des interface réseau
- vfs.fs.discovery: remonte la liste des systèmes de fichiers
Les scripts contenus dans le paquet zabbix-agent-addons ajoutent:
- ces mêmes fonctions, basées sur des scripts perl pour permettre un fonctionnement avec des agent d'une version antérieur à la 2.0.0
- la découverte des machines sauvegardées par BackupPC
- la découverte des volumes LVM, des groupes de volumes et des snapshots
- la découverte des périphériques blocs
- la découverte des disques supportant S.M.A.R.T.
- la découverte des senseurs de température (modulo une configuration des commandes à lancer pour récupérer la valeur)
- quelques autres scripts utiles (pour surveiller les onduleurs, le RAID logiciel etc…)
Tous ces scripts sont disponibles dans un paquet rpm nommé zabbix-agent-addons (voir notre dépôt de RPMS)
Sources
Les scripts sont disponibles dans notre dépôt GIT
Installation manuelle
Pour les distribution qui n'utilisent pas RPM, il est possible d'installer tout ceci de façon manuelle:
mkdir -p /etc/zabbix/zabbix_agentd.conf.d/ cd /etc/zabbix/zabbix_agentd.conf.d/ for F in backuppc.conf block_devices.conf filesystems.conf lvm.conf nut_ups.conf\ raid_mdadm.conf raid_megaraid.conf sensors.conf smart.conf squid.conf net_interface.conf net_ups.conf; do wget "http://gitweb.firewall-services.com/?p=zabbix-agent-addons;a=blob_plain;f=zabbix_conf/$F;hb=HEAD" -O $F done mkdir -p /var/lib/zabbix/bin cd /var/lib/zabbix/bin for F in check_backuppc_sudo check_lvm_sudo check_raid_mdadm check_raid_megaraid_sudo \ check_sensors_sudo check_smart_sudo disco_backuppc_sudo disco_block_devices \ disco_filesystems disco_lvm_sudo disco_sensors disco_smart_sudo disco_net_interface disco_nut_ups check_nut_up; do wget "http://gitweb.firewall-services.com/?p=zabbix-agent-addons;a=blob_plain;f=zabbix_scripts/$F;hb=HEAD" -O $F done chmod +x /var/lib/zabbix/bin/*
Il ne reste plus qu'à:
- Autoriser l'utilisateur zabbix à exécuter tous les scripts se temrinant par _sudo avec les droits root, sans mot de passe, par exemple:
Cmnd_Alias ZABBIX_AGENT = /var/lib/zabbix/bin/*_sudo zabbix ALL=(root) NOPASSWD: ZABBIX_AGENT
- Il faut inclure tout les fragments de configuration de Zabbix, en ajoutant la directive suivante dans le fichier de configuration principal de l'agent (en général /etc/zabbix/zabbix_agentd.conf)
Include=/etc/zabbix/zabbix_agentd.conf.d/
- Ou, si votre agent ne supporte pas la directive Include, il faut tout concaténer dans le fichier principal
cat /etc/zabbix/zabbix_agentd.conf.d/* >> /etc/zabbix/zabbix_agentd.conf