{{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)