Refonte de la première partie de la page + fix erreurs + ajout d'infos

This commit is contained in:
whirigoyen 2021-11-24 17:46:36 +01:00
parent 0cd9a5e1b2
commit 15e804f86c

View file

@ -3,50 +3,35 @@ categories: web
title: Howto Munin.
...
* [Documentation générale](http://munin-monitoring.org/wiki/Documentation)
* [Détails sur les légendes](http://demo.munin-monitoring.org/munin-monitoring.org/demo.munin-monitoring.org/)
* [Documentation générale](http://munin-monitoring.org/wiki/Documentation)
* [Détails sur les légendes](http://demo.munin-monitoring.org/munin-monitoring.org/demo.munin-monitoring.org/)
## Installation
~~~
# aptitude install munin
# apt install munin
~~~
Munin ajoute un cron, qui s'exécute toutes les 5 minutes, il se situe dans `/etc/cron.d`.
## Configuration
### Configuration générale
Le fichier `/etc/munin/munin.conf` permet de configurer Munin. Par défaut les graphs sont générés dans `/var/cache/munin/www`, on peut soit le changer, soit faire un lien symbolique dans `/var/www`.
Changer le nom d'hôte :
~~~
# a simple host tree
[monserveur.mondomaine.com]
address 127.0.0.1
use_node_name yes
~~~
Il sera peut-être nécessaire d'éditer le fichier `/etc/munin/munin-node.conf` pour y autoriser une machine à récupérer les informations, par exemple :
~~~
allow ^127\.0\.0\.1$
allow ^X\.Y\.Z\.W$
~~~
> Ne pas oublier d'autoriser l'IP X.Y.Z.W à joindre le serveur via le port 4949.
## Fonctionnement
Toutes les 5 minutes, munin va aller interroger ses "nodes" listés dans munin.conf (par défaut uniquement localhost.localdomain).
Il va ainsi mettre à jour ses fichiers RRD stockés dans `/var/lib/munin` puis générer des graphiques (images PNG) à partir des fichiers RRD.
Ces graphiques PNG, stockés dans `/var/cache/munin` se retrouveront affichés dans des pages HTML, également générées.
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 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.
Il met à jour les fichiers RRD stockés dans `/var/lib/munin`, puis génère des graphiques (images PNG) à partir des fichiers RRD.
Les graphiques PNG sont stockés dans `/var/cache/munin` et sont affichés dans des pages HTML, également générées.
Le node peut être le même serveur que le master, dans ce cas l'installation est purement locale.
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
Les fichiers RRD sont les données les plus importantes, ils stockent en effet toutes les valeurs du passé.
Les fichiers RRD sont les données les plus importantes car ils stockent toutes les valeurs passées.
À chaque plugin est associé un ou plusieurs fichiers RRD.
@ -65,30 +50,75 @@ Voici un exemple pour tracer un graphe de load sur un intervalle passé :
$ rrdtool graph foo.png -a PNG --start -15d --end -4d --width 800 --height 800 'DEF:load=localhost.localdomain-load-load-g.rrd:42:AVERAGE' 'LINE1:load#ff0000:Load' -l 0 -u 1
~~~
## Ajouter un noeud
Commençons par autoriser les connections avec le master (31.120.1.12) depuis la machine cliente (31.120.1.13) :
## Configuration
### Configurer le master
Le fichier `/etc/munin/munin.conf` permet de configurer le master.
Par défaut les graphiques sont générés dans `/var/cache/munin/www`. On peut soit le changer, soit faire un lien symbolique dans `/var/www`.
Pour changer le nom d'hôte :
~~~
echo "allow ^31\.120\.1\.12$" >> /etc/munin/munin-node.conf
/etc/init.d/munin-node restart
~~~
Il reste plus qu'a indiquer la machine sur master
~~~
vim /etc/munin/munin-node.conf ; /etc/init.d/munin-node restart
~~~
Et ajouter ces directives :
~~~
[client.foo.com]
address 31.120.1.13
[monserveur.mondomaine.com]
address 127.0.0.1
use_node_name yes
~~~
### Ajouter / configurer un node
**Sur le node :**
Le fichier `/etc/munin/munin-node.conf` permet de configurer un node.
D'abord, il faut autoriser l'IP du master à ce connecter dans `/etc/munin/munin-node.conf`. Par défaut, on a seulement l'IP locale `127.0.0.1` :
~~~
allow ^127\.0\.0\.1$
allow ^X\.Y\.Z\.W$ # <-- IP du master
~~~
Attention, la directive `allow` n'accepte que des regex !
Puis, redémarrer le service `munin-node` :
~~~
# systemctl restart munin-node
~~~
Dans le firewall du node, il faut ajouter l'IP du master sur le port 4949 en entrée :
~~~
/sbin/iptables -A INPUT -p tcp --dport 4949 -s X.Y.Z.W -j ACCEPT # <-- IP du master
~~~
**Sur le master :**
Ajouter les directives suivantes à la configuration du master :
~~~
# vim /etc/munin/munin.conf
[client.foo.com] # <-- nom du node dans Munin
address A.B.C.D # <-- IP du node
use_node_name yes
~~~
Il n'y a pas de service à redémarrer. Il faut attendre 5 minutes ou lancer le cron manuellement en tant qu'utilisateur munin :
~~~
sudo -u munin -- /usr/bin/munin-cron
~~~
Dans le firewall du master, il faut ouvrir le port 4949 en sortie :
~~~
/sbin/iptables -A INPUT -p tcp --sport 4949 --dport 1024:65535 -m state --state ESTABLISHED,RELATED -j ACCEPT
~~~
## Munin 2