Changements récents - Rechercher:

Espace Wiki ∂'Alembert
Documentation générale


Espace Guide de survie du SysAdmin
Documentation technique


Espace Guide de survie du Développeur
Pour les développeurs


Espace Institut ∂’Alembert
L'institut


Le Site
À propos du Site
Liste complète des Pages


Aide PmWikiFr

Help PmWiki

GSSA /

Munin

Page mise à jour le 06/11/2015 17:13

Vous êtes dans un espace restreint en écriture.


Munin est un outil de surveillance système et réseau open source sous licence publique générale GNU1. Il s'appuie sur l'outil RRDTool


(:numbered-sections format=0.A.1.a:)

Architecture

  1. munin : le serveur
  2. munin-node : les nœuds

Le serveur

  • installation(:source:) apt-get install munin
  • configuration dans le fichier /etc/munin/munin.conf permet de définir les nœuds à surveiller(:source lang=ini:) [WEB;sekirk] address sekirk use_node_name yes
    WEB
    est le (ou les) groupe(s)
    selkrik
    est le nom du nœud

Graphes Dynamiques

http://munin-monitoring.org/wiki/MuninConfigurationMasterCGI#nginx

Les nœuds

Installation de munin-node

  1. installer munin-node:(:source:)# apt-get install --no-install-recommends munin-node
  2. configurer les serveur munin, dans le fichier /etc/munin/munin-node.conf:(:source:)allow ^134\.157\.69\.83$
  3. ouvrir le port 4949 avec iptables: (:source:)# iptables -A INPUT -s 134.157.69.83/32 -p tcp -m tcp --dport 4949 -j ACCEPT # iptables -A OUTPUT -d 134.157.69.83/32 -p tcp -m tcp --sport 4949 -j ACCEPT
    • pour CentOS, pour le mettre en début de chaine(:source:)# iptables -I INPUT 1 -s 134.157.69.83/32 -p tcp -m tcp --dport 4949 -j ACCEPT
  4. relancer le service munin-node: (:source lang=ini:)# service munin-node restart && tail -f /var/log/munin/munin-node.log Stopping Munin Node agents: [ OK ] Starting Munin Node: [ OK ] Process Backgrounded 2015/11/04-19:39:49 MyPackage (type Net::Server::Fork) starting! pid(27830) Binding to TCP port 4949 on host * Setting gid to "0 0" 2015/11/04-19:40:22 Server closing! Process Backgrounded 2015/11/04-19:40:22 MyPackage (type Net::Server::Fork) starting! pid(27911) Binding to TCP port 4949 on host * Setting gid to "0 0"
    • ou pour CentOS(:source lang=ini:)# service munin-node restart && tail -f /var/log/munin-node/munin-node.log
CentOS 6, 5 ou 4

Le paquet existent sur des dépôts EPEL.

Installation de Poor Man's Munin Node -- pas conseillé

Ce script PERL permet d'avoir un service munin-node, sans avoir a installer de paquet.

comme il n'y a pas d' installation de tous les paquets PERL, la plupart de plugins ne fonctionnent pas

  1. installer le script pmmn dans un repertoire:(:source:) cd /usr/local/bin wget https://raw.githubusercontent.com/munin-monitoring/contrib/master/tools/pmmn/bin/pmmn --no-check-certificate
  2. lancer le script avec le chemin des fichier de plugins (:source:) chmod +x pmmn ./pmmn -d plugins

Pour avoir un service de lancement au démarrage, plusieurs possibilités

  • faire du TCP forward avec xinetd
  • faire du tunnel SSH
le TCP forward avec xinetd
  • il faut de lancer le service avec xinetd dur le serveur munin: (:source lang=ini:) service munin-modemeca { disable = no id = munin-node-modemeca socket_type = stream type = UNLISTED protocol = tcp port = 7001 flags = IPv4 user = root wait = no server = /usr/bin/ssh server_args = root@lilu /usr/local/bin/pmmn }
  • installer pmmn sur le munin-node (ici lilu)
  • configurer dans le fichier /etc/munin/munin.conf:(:source lang=ini:) [lilu] address localhost port 7001

Test de l'architecture

pour tester le tout vers un nœud (n1), il suffit de lancer sur le serveur munin la commande: (:source:) $ nc n1 4949 <<EOT fetch cpu fetch load quit EOT # munin node at n1.dalembert.upmc.fr user.value 631781 nice.value 0 system.value 904996 idle.value 8653643329 iowait.value 4746689 irq.value 10285 softirq.value 84999 steal.value 0 . load.value 0.05 .

Les plugins

liste des plugins
http://gallery.munin-monitoring.org/index.html

À chaque changement dans les plugins, il faut relancer munin-node:(:source:)service munin-node restart && tail -f /var/log/munin/munin-node.log

Configurations de base

Le nombre de plugins est astromomique : on croule sous les infos.

  • Pour limiter voici les plugins que j'active pour une surveillance « classique »:

(:source lang=bash:) #!/bin/bash PLUGINS="cpu df fw_* if_ if_err_ ip_ load memory processes swap threads uptime users vmstat" DEVNET=eth0 rm -f /etc/munin/plugins/* ip=$(ifconfig ${DEVNET}|grep 'inet addr'|awk '{print $2}'|awk -F: '{print $2}') for p in $PLUGINS do case $p in if_|if_err_) ln -sf /usr/share/munin/plugins/$p /etc/munin/plugins/${p}${DEVNET} ;; ip_) test -n "$ip" && ln -sf /usr/share/munin/plugins/$p /etc/munin/plugins/${p}${ip} ;; *) ln -sf /usr/share/munin/plugins/$p /etc/munin/plugins esac done

  • SMART
  1. installer le bon paquet:(:source:) apt-get install smartmontools
  2. scanner vos disques:(:source:) smartctl --scan /dev/sda -d scsi # /dev/sda, SCSI device /dev/sdb -d scsi # /dev/sdb, SCSI device
  3. installer les liens:(:source:) ln -sf /usr/share/munin/plugins/smart_ /etc/munin/plugins/smart_sda [etc.]

Varnish 2

source
https://github.com/basiszwo/munin-varnish

Dans la version 2, munin n'integre plus varnish v2.

apache2 status

plugin core
  • configuration:
    • de munin-node: dans le fichier /etc/munin/plugin-conf.d/apache : (:source:)[apache_*] env.url http://127.0.0.1/server-status?auto
    • de apache: activer le module mod_status et l'url, ainsi que le mode etendu (:source lang=apache:)[...] LoadModule status_module modules/mod_status.so [...] <Location /server-status> SetHandler server-status Order deny,allow Deny from all Allow from 127. </Location> ExtendedStatus On

nginx status

NFS client / serveur

  • pour le serveur(:source:) ln -sf /usr/share/munin/plugins/nfsd /etc/munin/plugins/
  • pour les clients(:source:) ln -sf /usr/share/munin/plugins/nfs_client /etc/munin/plugins/

bind9

plugin core
  • configuration /etc/munin/plugin-conf.d/bind9 (:source:) [bind9*] env.logfile /var/named/chroot/var/named/named.request user root timeout 120

dhcp-pool

source
https://github.com/munin-monitoring/contrib/blob/master/plugins/network/dhcp-pool
  • installation(:source:)cd /etc/munin/plugins wget https://github.com/munin-monitoring/contrib/raw/master/plugins/network/dhcp-pool --no-check-certificate chmod +x dhcp-pool
  • configuration dans /etc/munin/plugin-conf.d/dhcpd-pool :(:source:)[dhcp-pool] env.conffile /etc/dhcpd.conf env.leasefile /etc/dhcpd-clients.conf

dovecot

source
https://github.com/munin-monitoring/contrib/blob/master/plugins/mail/dovecot
  • installation(:source:)cd /etc/munin/plugins wget https://github.com/munin-monitoring/contrib/raw/master/plugins/mail/dovecot --no-check-certificate chmod +x dovecot
  • configuration dans /etc/munin/plugin-conf.d/dovecot (:source:)[dovecot] env.logfile /var/log/dovecot.log

Liens Externes

  • liste de plugins «contrib» [4]

Erreurs Connues

Unmatched [ in regex; marked by <-- HERE in m/[ <-- HERE \/ at /usr/share/perl5/Munin/Node/Service.pm line 42.

remède
changer le fichier /etc/munin/munin-node.conf en supprimant dans la ligne (:source:)ignore_file "[\\#~]$"

Liens Externes

À propos du site • Licence Creative Commons • Cooked with love in 2014-2023 by pcht
Page mise à jour le 06/11/2015 17:13