Table des matières

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ée automatiquement les items, graphes, déclencheurs à partir de prototypes. De base, l'agent supporte:

Les scripts contenus dans le paquet zabbix-agent-addons ajoutent:

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 drbd.conf filesystems.conf httpd.conf lvm.conf nginx.conf pmg.conf \
         qmail.conf raid_mdadm.conf sa_learn.conf sensors.conf squid.conf vdo.conf \
         zimbra.conf block_devices.conf file_descr.conf gluster.conf icmp.conf \
         net_interface.conf nut_ups.conf pve.conf raid_hp.conf raid_megaraid.conf \
         samba.conf smart.conf unifi.conf zfs.conf; do
    wget "https://git.fws.fr/fws/zabbix-agent-addons/raw/branch/master/zabbix_conf/$F" -O $F
done
mkdir -p /var/lib/zabbix/bin
cd /var/lib/zabbix/bin
for F in check_backuppc_sudo check_lvm_sudo check_qmail_sudo check_sensors_sudo check_zfs \
         disco_filesystems disco_nginx disco_raid_mdadm disco_unifi util_generate_sensors_ini \
         check_drbd check_nginx check_raid_hp_sudo check_smart_sudo check_zimbra_sudo \
         disco_gluster_sudo disco_nut_ups disco_raid_megaraid_sudo disco_vdo_sudo \
         check_gluster_sudo check_nmblookup check_raid_mdadm check_squid disco_backuppc_sudo \
         disco_httpd disco_pmg_sudo disco_sensors disco_zfs check_httpd check_pmg_sudo \
         check_raid_megaraid_sudo check_unifi disco_block_devices disco_lvm_sudo \
         disco_pve_sudo disco_smart_sudo disco_zimbra_sudo check_icmp_sudo check_pve_sudo \
         check_sa_learn_sudo check_vdo_sudo disco_drbd disco_net_interface disco_raid_hp_sudo \
         disco_squid util_convert_sensors_ini ; do
    wget "https://git.fws.fr/fws/zabbix-agent-addons/raw/branch/master/zabbix_scripts/$F" -O $F
done
chmod +x /var/lib/zabbix/bin/*

Il faut aussi installer des libs, par exemple sur Debian

mkdir -p /usr/local/lib/site_perl/Zabbix/Agent/Addons
cd /usr/local/lib/site_perl/Zabbix/Agent/Addons
for F in Disks.pm UPS.pm; do
    wget "https://git.fws.fr/fws/zabbix-agent-addons/raw/branch/master/lib/Zabbix/Agent/Addons/$F" -O $F
done

Il faudra aussi installer les dépendances:

apt install libconfig-simple-perl libjson-perl libfile-which-perl libstatistics-distributions-perl smartmontools lm-sensors fping 

Il ne reste plus qu'à:

echo "Cmnd_Alias ZABBIX_AGENT = /var/lib/zabbix/bin/*_sudo" >> /etc/sudoers.d/zabbix
echo "zabbix ALL=(root) NOPASSWD: ZABBIX_AGENT" >> /etc/sudoers.d/zabbix
chmod 0440 /etc/sudoers.d/zabbix
Include=/etc/zabbix/zabbix_agentd.conf.d/
cat /etc/zabbix/zabbix_agentd.conf.d/* >> /etc/zabbix/zabbix_agentd.conf