Correction sommaire + ajout infos données nodes

This commit is contained in:
whirigoyen 2021-11-24 18:21:03 +01:00
parent 4eba53e630
commit 98fa4a4a68

View file

@ -7,20 +7,20 @@ title: Howto Munin.
* [Détails sur les légendes](http://demo.munin-monitoring.org/munin-monitoring.org/demo.munin-monitoring.org/) * [Détails sur les légendes](http://demo.munin-monitoring.org/munin-monitoring.org/demo.munin-monitoring.org/)
## Installation # Installation
~~~ ~~~
# apt install munin # apt install munin
~~~ ~~~
## Fonctionnement # Fonctionnement
Munin a une architecture 1 master - n nodes. Munin a une architecture 1 master - n nodes.
Le cron `/etc/cron.d/munin` s'exécute toutes les 5 minutes sur le master. Il interroge sur le port `4949` les nodes listés dans `/etc/munin/munin.conf` (par défaut uniquement localhost.localdomain) et récupère les données au format RRD. Le cron `/etc/cron.d/munin` s'exécute toutes les 5 minutes sur le master. Il interroge les nodes listés dans `/etc/munin/munin.conf` (par défaut uniquement localhost.localdomain) sur leur port `4949` et récupère les données d'état du node. Les nodes ne stockent aucune donnée.
Puis, il met à jour les fichiers RRD stockés dans `/var/lib/munin`, puis génère des graphiques (images PNG) à partir des fichiers RRD. Puis, il met à jour ses fichiers de données RRD stockés dans `/var/lib/munin`, et génère des graphiques (images PNG).
Les graphiques PNG sont stockés dans `/var/cache/munin` et sont affichés dans des pages HTML, également générées. Les graphiques PNG sont stockés dans `/var/cache/munin` et sont affichés dans des pages HTML, également générées.
@ -29,7 +29,7 @@ Le node peut être sur la même machine que le master, dans ce cas l'installatio
Note : D'un point de vue réseau, ce sont les nodes qui ont le statut de serveur et le master qui se connecte en client sur leur port `4949`. Note : D'un point de vue réseau, ce sont les nodes qui ont le statut de serveur et le master qui se connecte en client sur leur port `4949`.
### Fichiers RRD ## Fichiers RRD
Les fichiers RRD sont les données les plus importantes car ils stockent toutes les valeurs passées. Les fichiers RRD sont les données les plus importantes car ils stockent toutes les valeurs passées.
@ -51,9 +51,9 @@ $ rrdtool graph foo.png -a PNG --start -15d --end -4d --width 800 --height 800 '
~~~ ~~~
## Configuration # Configuration
### Configurer le master ## Configurer le master
Le fichier `/etc/munin/munin.conf` permet de configurer le master. Le fichier `/etc/munin/munin.conf` permet de configurer le master.
@ -68,7 +68,7 @@ Pour changer le nom d'hôte :
~~~ ~~~
### Ajouter un node ## Ajouter un node
**Sur le node :** **Sur le node :**
@ -120,13 +120,14 @@ Dans le firewall du master, il faut ouvrir le port 4949 en sortie :
~~~ ~~~
## Munin 2 # Intégration avec un serveur web
Munin 2 permet enfin de zoomer sur les graphiques ! Munin 2 permet de zoomer sur les graphiques.
Pour que cela fonctionne il faut faire tourner un démon FastCGI et le script munin-cgi-graph. Pour que cela fonctionne il faut faire tourner un démon FastCGI et le script munin-cgi-graph.
### Intégration avec Nginx
## Intégration avec Nginx
Adapter les droits de `/var/log/munin/munin-cgi` : Adapter les droits de `/var/log/munin/munin-cgi` :
@ -190,7 +191,8 @@ location ^~ /munin-cgi/munin-cgi-graph/ {
} }
~~~ ~~~
### Avec Apache
## Intégration avec Apache
Installer `libapache2-mod-fcgid` (attention apt redémarre Apache !), puis ajouter au vhost : Installer `libapache2-mod-fcgid` (attention apt redémarre Apache !), puis ajouter au vhost :
@ -221,7 +223,8 @@ ScriptAlias /munin-cgi/munin-cgi-graph /usr/lib/munin/cgi/munin-cgi-graph
</Location> </Location>
~~~ ~~~
## Notifications
# Notifications
Munin est capable d'envoyer des mails quand un plugin atteint son seuil de warning ou critical. Toute la configuration se fait dans `munin.conf`, on indique un mail de contact, et éventuellement on ajuste les seuils (ou on les définit) d'un ou plusieurs plugins. Munin est capable d'envoyer des mails quand un plugin atteint son seuil de warning ou critical. Toute la configuration se fait dans `munin.conf`, on indique un mail de contact, et éventuellement on ajuste les seuils (ou on les définit) d'un ou plusieurs plugins.
@ -248,7 +251,7 @@ env.seconds_behind_master_warning 120
env.seconds_behind_master_critical 800 env.seconds_behind_master_critical 800
~~~ ~~~
## Plugins # Plugins
Les plugins sont stockés dans `/usr/share/munin/plugins`. Les plugins sont stockés dans `/usr/share/munin/plugins`.
@ -266,7 +269,12 @@ lrwxrwxrwx 1 root root 40 3 juin 10:31 apache_accesses -> /usr/share/munin/p
Pour ajouter un plugin à grapher il suffit donc de mettre en place un lien symbolique. Pour ajouter un plugin à grapher il suffit donc de mettre en place un lien symbolique.
Il faut ensuite redémarrer munin-node : `/etc/init.d/munin-node restart` Il faut ensuite redémarrer munin-node : `/etc/init.d/munin-node restart`
### Tester un plugin
## Tester un plugin
~~~
$ munin-run -d <plugin> #présent dans /etc/munin/plugins/
~~~
Il peut être utile, et recommandé de tester le plugin avant de le mettre en place, pour cela il faut utiliser l'outil `munin-run --debug nom_du_plugin`. Il peut être utile, et recommandé de tester le plugin avant de le mettre en place, pour cela il faut utiliser l'outil `munin-run --debug nom_du_plugin`.
@ -282,7 +290,8 @@ swap_in.value 19
swap_out.value 53 swap_out.value 53
~~~ ~~~
### Configurer le user/group d'un plugin
## Configurer le user/group d'un plugin
Selon les besoins, il peut être utile d'exécuter un plugin avec un utilisateur et un groupe particuliers. Selon les besoins, il peut être utile d'exécuter un plugin avec un utilisateur et un groupe particuliers.
Pour cela il faut éditer le fichier `/etc/munin/plugin-conf.d/munin-node` et changer le user/group. Pour cela il faut éditer le fichier `/etc/munin/plugin-conf.d/munin-node` et changer le user/group.
@ -374,7 +383,7 @@ par :
unless ($v =~ /^PostgreSQL (\d+)\.(\d+)\.(\d+)lts(\d) on/); unless ($v =~ /^PostgreSQL (\d+)\.(\d+)\.(\d+)lts(\d) on/);
~~~ ~~~
### Le plugin dnsresponsetime ## Le plugin dnsresponsetime
Il faut éditer le fichier `/etc/munin/plugin-conf.d/munin-node` et ajouter la section du plugin pour spécifier un nom à résoudre et un ou des serveurs DNS : Il faut éditer le fichier `/etc/munin/plugin-conf.d/munin-node` et ajouter la section du plugin pour spécifier un nom à résoudre et un ou des serveurs DNS :
@ -383,7 +392,7 @@ Il faut éditer le fichier `/etc/munin/plugin-conf.d/munin-node` et ajouter la s
env.queries evolix.fr@ns2.evolix.net evolix.fr@romario.evolix.net env.queries evolix.fr@ns2.evolix.net evolix.fr@romario.evolix.net
~~~ ~~~
### Le plugin bind_rndc ## Le plugin bind_rndc
Ajouter les lignes suivante dans `/etc/munin/plugin-conf.d/munin-node` : Ajouter les lignes suivante dans `/etc/munin/plugin-conf.d/munin-node` :
@ -418,7 +427,7 @@ Un bug nécessite de créer le fichier des infos munin à la main…
# chmod 664 bind9.state # chmod 664 bind9.state
~~~ ~~~
### Le plugin tomcat ## Le plugin tomcat
~~~ ~~~
# ln -s /usr/share/munin/plugins/tomcat_ tomcat_jvm # ln -s /usr/share/munin/plugins/tomcat_ tomcat_jvm
@ -439,7 +448,7 @@ env.password mon_pass
env.timeout 30 env.timeout 30
~~~ ~~~
### Le plugin squid ## Le plugin squid
~~~ ~~~
ln -s /usr/share/munin/plugins/squid_cache /etc/munin/plugins/ ln -s /usr/share/munin/plugins/squid_cache /etc/munin/plugins/
@ -475,7 +484,8 @@ squidclient -p 80 cache_object://127.0.0.1/info
squidclient -p 80 cache_object://127.0.0.1/counters squidclient -p 80 cache_object://127.0.0.1/counters
~~~ ~~~
## Débug
# Débug
Soucis droits sur images. Si munin n'affice pas les images, c'est peut-être un souci de droits. Vérifier les droits dans `/var/cache/munin/www/*/*/`. Si les .png sont en 600, faire ceci : Soucis droits sur images. Si munin n'affice pas les images, c'est peut-être un souci de droits. Vérifier les droits dans `/var/cache/munin/www/*/*/`. Si les .png sont en 600, faire ceci :
@ -493,13 +503,7 @@ su - munin --shell=/bin/bash
~~~ ~~~
### Tester le plugin ## Problème de graph, munin ne graphe plus
~~~
$ munin-run -d <plugin> #présent dans /etc/munin/plugins/
~~~
### Problème de graph, munin ne graphe plus
Vérifier la conf du plugin qui ne graphe pas, dans /etc/munin/plugin-conf.d/munin-node Vérifier la conf du plugin qui ne graphe pas, dans /etc/munin/plugin-conf.d/munin-node
@ -518,13 +522,13 @@ On peut aussi vérifier que la requête vers l'url fonctionne en faisant un GET
GET http://nomduserveur.evolix.net:8080/server-status-XXXXX?auto GET http://nomduserveur.evolix.net:8080/server-status-XXXXX?auto
~~~ ~~~
### Regarder dans la doc ## Regarder dans la doc
~~~ ~~~
# munindoc <plugin> # munindoc <plugin>
~~~ ~~~
### Il manque `/home` dans le *plugin* `df` ## Il manque `/home` dans le *plugin* `df`
Attention, le *plugin* `df` est différent du *plugin* `diskstats`. Attention, le *plugin* `df` est différent du *plugin* `diskstats`.
@ -540,9 +544,9 @@ Puis attendre la prochaine exécution du *cron* ou la lancer soi-même :`sudo -
> On peut remplacer les commandes `mkdir` et `printf | tee` par `systemctl edit munin-node.service`. > On peut remplacer les commandes `mkdir` et `printf | tee` par `systemctl edit munin-node.service`.
### Les zooms ne s'affichent pas ## Les zooms ne s'affichent pas
Vérifier d'abord que l'on a bien activé les zooms : [HowtoMunin#munin-2]() Vérifier d'abord que l'on a bien activé les zooms : [HowtoMunin#intégration-avec-un-serveur-web]()
Si ça ne marche toujours pas, vérifier l'existence et les droits de `/var/log/munin/munin-cgi-graph.log` : Si ça ne marche toujours pas, vérifier l'existence et les droits de `/var/log/munin/munin-cgi-graph.log` :