User Tools

Site Tools


munin

Traduit en partie de la description du paquet au sein de debian:

Munin est une solution hautement flexible utilisée pour créer des graphes de pratiquement tout ce qui est imaginable dans votre réseau tout en maintenant une facilité d'installation et de configuration.

Site officiel : http://munin-monitoring.org

Le paquet munin-node doit être installé sur toutes les machines à monitorer.

Le paquet munin doit être installé sur la machine qui fera office de plateforme de visualisation des informations. On va l'appeler ici serveur'

Configuration côté serveur à monitorer

  • Installer les paquets:
    • munin-node
    • libnet-cidr-set-perl
  • dans /etc/munin/munin-node.conf
    • Autoriser les adresses IPv4/IPv6 ou les réseaux devant interrogés le serveur
    • Ajuster éventuellement le port d'écoute (le port d'écoute par défaut est le port 4949)

Lors de son installation, munin va faire une autodécouverte de l'environnement et créer des liens symboliques depuis /etc/munin/plugins/ /usr/share/munin/plugins.

Au besoin pour voir la liste des plugins exploitables par défaut, il faut exécuter:

munin-node-configure –suggest

Monitoring bind9

Pour un serveur disposant de bind9, il faut en plus effectuer les actions suivantes.

Ajouter le fichier /etc/munin/plugin-conf.d/99-bind avec le contenu suivant:

[bind9]
env.logfile /var/log/named/query.log

[bind9_rndc]
user root
env.querystats /var/log/named/named.stats

Créer le dossier /var/log/named

mkdir /var/log/named
chown bind:bind /var/log/named

:!: Sur debian (10), il existe déjà un profil apparmor qui prend en compte le dossier /var/log/named

Mettre a jour le fichier /etc/bind/named.conf.options

  1. diff --git a/bind/named.conf.options b/bind/named.conf.options
  2. index 4778d18..080b6d1 100644
  3. --- a/bind/named.conf.options
  4. +++ b/bind/named.conf.options
  5. @@ -21,4 +21,35 @@ options {
  6. dnssec-validation auto;
  7.  
  8. listen-on-v6 { any; };
  9. + statistics-file "/var/log/named/named.stats";
  10. +};
  11. +
  12. +logging {
  13. + channel b_log {
  14. + file "/var/log/named/bind.log" versions 30 size 1m;
  15. + print-category yes;
  16. + print-severity yes;
  17. + print-time yes;
  18. + severity info;
  19. + };
  20. +
  21. + channel b_debug {
  22. + file "/var/log/named/debug.log" versions 2 size 1m;
  23. + print-category yes;
  24. + print-severity yes;
  25. + print-time yes;
  26. + severity dynamic;
  27. + };
  28. +
  29. + channel b_query {
  30. + file "/var/log/named/query.log";
  31. + print-severity yes;
  32. + print-time yes;
  33. + };
  34. +
  35. +
  36. + category default {b_log; b_debug; };
  37. + category config {b_log; b_debug; };
  38. + category queries {b_query; };
  1. ln -s '/usr/share/munin/plugins/bind9_rndc' '/etc/munin/plugins/bind9_rndc'
  2. ln -s '/usr/share/munin/plugins/bind9' '/etc/munin/plugins/bind9'
  3. systemctl restart bind9
  4. systemctl restart munin-node

Effectuer la rotation et compresser les fichiers de logs au delà de 3M

Ajouter le fichier /etc/logrotate.d/bind avec le contenu suivant.

  1. /var/log/named/query.log
  2. /var/log/named/named.stats
  3.  
  4. {
  5. rotate 12
  6. size 3M
  7. compress
  8. missingok
  9. su bind bind
  10. copytruncate
  11. }

Bien sur tout cela est ajustable en fonction de votre environnement notamment les lignes 5 et 6

Aperçu

DNS queries by status

DNS queries by type

Configuration côté serveur monitoring

  • Installer les paquets:
    • munin-node
  • Créer une configuration locale dans /etc/munin/munin-conf.d/cmnog-node.conf . Le plus important étant que le fichier dans ce repertoire se termine par .conf. Il faut rajouter autant d'entrées qu'il faut par serveur

Ex:

  1. [vps1.cmnog.cm]
  2. address [2001:42d0:0:409::44]
  3. use_node_name yes
  4.  
  5. [vps2.cmnog.cm]
  6. address [2a01:7e00::f03c:92ff:fefb:132d]
  7. use_node_name yes

Visualisation

En fonction du serveur web installé, il faudra ajuster la configuration de votre environnement web.

Si c'est apache2, la configuration par défaut de munin, permet de consulter la page de monitoring à l'adresse http://nom.de.mon.serveur.web/munin . Des précisions se trouvent dans /etc/apache2/conf-enabled/munin.conf

  1. # Munin configuration for apache2
  2. #
  3. # Apache can serve munin's files that are either statically generated
  4. # (in a cron job) or generated on demand (via cgi).
  5. # The relevant munin settings are "html_strategy" and "graph_strategy".
  6. # The related apache settings can be adjusted at the end of this file.
  7. #
  8. # See /usr/share/doc/munin/README.Debian for details.
  9.  
  10.  
  11. # ***** COMMON SETTINGS FOR ALL STRATEGIES *****
  12.  
  13. ScriptAlias /munin-cgi/munin-cgi-graph /usr/lib/munin/cgi/munin-cgi-graph
  14. Alias /munin/static/ /var/cache/munin/www/static/
  15.  
  16. <Directory /var/cache/munin/www>
  17. Require all granted
  18. Options None
  19. Order Allow,Deny
  20. Allow from all
  21. </Directory>
  22.  
  23. <Directory /usr/lib/munin/cgi>
  24. Require local
  25. <IfModule mod_fcgid.c>
  26. SetHandler fcgid-script
  27. </IfModule>
  28. <IfModule !mod_fcgid.c>
  29. SetHandler cgi-script
  30. </IfModule>
  31. </Directory>
  32.  
  33.  
  34. # ***** SETTINGS FOR CGI/CRON STRATEGIES *****
  35.  
  36. # pick _one_ of the following lines depending on your "html_strategy"
  37. # html_strategy: cron (default)
  38. Alias /munin /var/cache/munin/www
  39. # html_strategy: cgi (requires the apache module "cgid" or "fcgid")
  40. #ScriptAlias /munin /usr/lib/munin/cgi/munin-cgi-html

La directive à la ligne 20 permet d'autoriser tout ou des préfixes IPv4/IPv6 précis.

    Allow from 10.112.0.0/13 2001:db8:cafe::/48

Et voilà 8-)

munin.txt · Last modified: 2020/08/07 10:35 by willy