Le système de plugins de Munin

Munin l’outil de surveillance serveur possède un système de plugins plutôt intéressant, voyons comment l’utiliser.

Munin fonctionne avec des plugins afin de surveiller les différents éléments d’un système. Tous les plugins ne sont pas activés par défaut après une installation. Nous allons voir qu’il existe une commande bien pratique pour faire l’inventaire des plugins et voir s’ils sont compatibles avec le système surveillé.

La commande munin-node-configure

La commande munin-node-configure permet de lister l’état des plugins de Munin.

# /usr/sbin/munin-node-configure
Plugin                     | Used | Extra information
------                     | ---- | -----------------
acpi                       | no   |
amavis                     | no   |
cpu                        | yes  |
cpuspeed                   | no   |
df                         | yes  |
df_abs                     | no   |
df_inode                   | yes  |
dhcpd3                     | no   |
digitemp_                  | no   |
diskstat_                  | no   |
diskstats                  | yes  |
entropy                    | yes  |
forks                      | yes  |
fw_conntrack               | no   |
fw_forwarded_local         | no   |
fw_packets                 | yes  |
haproxy_                   | no   |
hddtemp                    | no   |
hddtemp2                   | no   |
hddtemp_smartctl           | no   |
hddtempd                   | no   |
http_loadtime              | yes  |
if_                        | no  | eth0
if_err_                    | yes  | eth0
ifx_concurrent_sessions_   | no   |
interrupts                 | yes  |
iostat                     | yes  |
iostat_ios                 | yes  |
ip_                        | no   |
ipac-ng                    | no   |
ipmi_                      | no   |
proc_pri                   | yes  |
processes                  | yes  |
swap                       | yes  |
tcp                        | no   |
threads                    | yes  |
uptime                     | yes  |
users                      | yes  |
yum                        | yes  |

A noter que les listes sont tronquées pour gagner de la place.

Il va reporter ceux installés et pouvoir suggérer ceux pouvant être installés avec l’option --suggest et donner des indice en cas de problème.

# /usr/sbin/munin-node-configure --suggest
Plugin                     | Used | Suggestions
------                     | ---- | -----------
acpi                       | no   | no [cannot read /proc/acpi/thermal_zone/*/temperature]
amavis                     | no   | no
cpu                        | yes  | yes
cupsys_pages               | no   | no [could not find logdir]
df                         | yes  | yes
df_inode                   | yes  | yes
diskstats                  | yes  | yes
entropy                    | yes  | yes
fail2ban                   | no   | no [fail2ban-server does not respond to ping]
forks                      | yes  | yes
fw_conntrack               | no   | no
fw_forwarded_local         | no   | no [/proc/net/ip_conntrack missing or not readable]
fw_packets                 | yes  | yes
hddtemp_smartctl           | no   | no [no drives known]
http_loadtime              | yes  | yes
if_                        | no  | yes (eth0)
if_err_                    | no  | yes (eth0)

Par exemple, nous voyons que la surveillance de l’interface réseau eth0 par le plugin if_ n’est pas activée, il n’y a rien qui empêche de l’utiliser, contrairement au plugin acpi qui indique qu’il ne peut pas lire /proc/acpi/thermal_zone/*/temperature, il faudrait donc corriger cela avant de poursuivre.

Activer un plugin

L’activation/désactivation d’un plugin avec Munin n’est qu’une question de création/suppression d’un lien symbolique de /usr/share/munin/plugins/nom-plugin vers /etc/munin/plugins/nom-plugin. Ceci peut être faire rapidement pour un seul plugin, mais comme nous sommes fainéants ou dans le cas de l’activation de plusieurs plugins, munin-node-configure propose l’option --shell qui va lister les liens à ajouter :

# /usr/sbin/munin-node-configure --shell
ln -s /usr/share/munin/plugins/if_ /etc/munin/plugins/if_eth0
ln -s /usr/share/munin/plugins/if_err_ /etc/munin/plugins/if_err_eth0
ln -s /usr/share/munin/plugins/postfix_mailqueue /etc/munin/plugins/postfix_mailqueue
ln -s /usr/share/munin/plugins/postfix_mailvolume /etc/munin/plugins/postfix_mailvolume

A noter qu’il ne s’agit que d’un echo des lignes de commandes, l’activation n’est pas faite. Pour l’automatiser, utilisons :

# /usr/sbin/munin-node-configure --shell | sh

Ceci a pour but d’exécuter ce que la première commande retourne. On vérifie avec le –suggest :

# /usr/sbin/munin-node-configure --suggest
Plugin                     | Used | Suggestions
------                     | ---- | -----------
if_                        | yes  | yes (eth0)
if_err_                    | yes  | yes (eth0)

Après une attente de quelques minutes, le rapport Munin est mis-à-jour avec les nouvelles informations.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *