{{tag>monitoring bind9 dns munin}} ====== Serveur DNS bind9 ====== Il existe de base 2 plugins munin pour monitorer le serveur DNS bind : * **bind9** qui permet d'avoir le nombre de requêtes par seconde de chaque type (A, AAAA, PTR, MX, SRV, ...) * **bind9_rndc** permet d'avoir le type/status des requêtes par seconde (rejections, failures, recursion, ...) renvoyées par //rndc stats// On va comme d'habitude utiliser une machine debian stable, mais ceci doit s'appliquer moyennant des modifications mineures à n'importe quelle autre distribution ====== Plugin bind9 ====== Si vous souhaitez changer le chemin des logs, pensez a vérifier/adapter la configuration appamor pour que bind puisse bien écrire les logs ou vous voulez. Il va sans dire qu'il faut adapter la suite ;-) * Il nécessite tout d'abord d'activer les logs de bind si ce n'etait pas deja fait : # cat << EOF >> /etc/bind/named.conf.options logging { channel bind_log { file "/var/log/named/bind.log" versions 3 size 10m; severity info; print-category yes; print-severity yes; print-time yes; }; category default { bind_log; }; category update { bind_log; }; category update-security { bind_log; }; category security { bind_log; }; category queries { bind_log; }; category lame-servers { null; }; }; EOF * Créer le répertoire qui contiendra ces logs : # mkdir /var/log/named/ * Donner a l'utilisateur le droit d'ecrire dedans : # chown bind:root /var/log/named/ * Redémarrer bind pour prendre en compte ces changements :# service bind9 restart * On peut ensuite vérifier que le fichier /var/log/named/bind.log a bien été créé :$ ls -l /var/log/named/bind.log * Il reste ensuite à activer le plugin munin :ln -s /usr/share/munin/plugins/bind9 /etc/munin/plugins/ * Puis a le configurer : # cat << EOF >> /etc/munin/plugin-conf.d/bind9 [bind9] env.logfile /var/log/named/bind.log EOF * Il ne reste qu'a tester ce plugin avec un petit **munin-run bind9** comme dans l'exemple suivant:# munin-run bind9 query_PTR.value 2 query_MX.value 1 query_A.value 6687 query_SRV.value 38 query_SOA.value 2 query_AAAA.value 529 query_other.value 0 * Redémarrer ensuite le noeud munin pour prendre en compte tout ca : # service munin-node restart * Aller ensuite sur votre interface munin et attendre que le graphe apparaisse (10 minutes environ) ====== Plugin bind9_rndc ====== Celui la est un peu plus compliqué : il nécessite d'activer le fichier de statistiques bind mais aussi d'ajouter un logrotate dessus pour ne pas remplir votre partition ;p * Editer le fichier /etc/bind/named.conf.options et ajouter **dans la section options {...}** les lignes suivantes : // activation des stats pour plugin munin statistics-file "/var/log/named/named.stats"; * Redémarrer le service : # service bind9 restart * Lancer manuellement la collecte des statisques : # rndc stats * On peut vérifier que ce fichier de statisques a bien été créé * Activer logrotate sur ce fichier pour éviter de remplir le disque : # cat << EOF >> /etc/logrotate.d/bind9 /var/log/named/named.stats { monthly missingok rotate 5 compress delaycompress create 644 bind bind sharedscripts copytruncate } EOF * Il reste ensuite à activer le plugin munin :ln -s /usr/share/munin/plugins/bind9_rndc /etc/munin/plugins/ * Puis à le configurer : # cat << EOF >> /etc/munin/plugin-conf.d/bind9 [bind9_rndc] user bind env.querystats /var/log/named/named.stats EOF * Il ne reste qu'a tester ce plugin avec un petit **munin-run bind9_rndc** comme dans l'exemple suivant:# munin-run bind9_rndc query_recursion.value 1676 query_success.value 5076 query_nxrrset.value 313 query_requests.value 5950 ... query_responses.value 5940 * Redémarrer ensuite le noeud munin pour prendre en compte tout ca : # service munin-node restart * Aller ensuite sur votre interface munin et attendre que le graphe apparaisse (10 minutes environ)