Présentation
Analysez les performances de votre PowerDNS Recursor et surveillez le trafic inhabituel ou préoccupant. Ce check de l’Agent recueille une multitude de métriques issues de vos recursors, vous permettant ainsi de mesurer :
- Les temps de réponse de vos requêtes : identifiez les requêtes exécutées en moins de 1 ms, 10 ms, 100 ms ou 1 s, ainsi que celles exécutées en plus de 1 s
- Les requêtes expirées
- Les hits et miss de cache
- Le nombre de réponses de chaque type (SRVFAIL, NXDOMAIN, NOERROR)
- Les paquets ignorés ou perdus
Et bien plus encore.
Configuration
Installation
Le check PowerDNS Recursor est inclus avec le package de l’Agent Datadog : vous n’avez donc rien d’autre à installer sur vos recursors.
Configuration
Préparer PowerDNS
Ce check recueille des statistiques de performance à l’aide de l’API de statistiques de PowerDNS Recursor. Cette API n’est activée par défaut qu’à partir de la version 4.1 de pdns_recursor. Si vous utilisez une version plus ancienne, activez l’API en ajoutant le code ci-dessous au fichier de configuration de votre recursor, par exemple /etc/powerdns/recursor.conf
:
webserver=yes
api-key=changeme # uniquement disponible à partir de la version 4.0
webserver-readonly=yes # valeur par défaut : no
#webserver-port=8081 # valeur par défaut : 8082
#webserver-address=0.0.0.0 # valeur par défaut : 127.0.0.1
Si vous utilisez pdns_recursor version 3.x, ajoutez le préfixe experimental-
à ces noms d’option. Exemple : experimental-webserver=yes
.
Si vous utilisez pdns_recursor >= 4.1, définissez simplement le paramètre api-key
.
Redémarrez votre recursor pour activer l’API de statistiques.
Host
Pour configurer ce check lorsque l’Agent est exécuté sur un host :
Modifiez le fichier powerdns_recursor.d/conf.yaml
dans le dossier conf.d/
à la racine du répertoire de configuration de votre Agent. Consultez le fichier d’exemple powerdns_recursor.d/conf.yaml pour découvrir toutes les options de configuration disponibles :
init_config:
instances:
## @param host - string - required
## Host running the recursor.
#
- host: 127.0.0.1
## @param port - integer - required
## Recursor web server port.
#
port: 8082
## @param api_key - string - required
## Recursor web server api key.
#
api_key: "<POWERDNS_API_KEY>"
## @param version - integer - required - default: 3
## Version 3 or 4 of PowerDNS Recursor to connect to.
## The PowerDNS Recursor in v4 has a production ready web server that allows for
## statistics gathering. In version 3.x the server was marked as experimental.
##
## As the server was marked as experimental in version 3 many of the metrics have
## changed names and the API structure (paths) have also changed. With these changes
## there has been a need to separate the two concerns. The check now has a key value
## version: which if set to version 4 queries with the correct API path on the
## non-experimental web server.
##
## https://doc.powerdns.com/md/httpapi/api_spec/#url-apiv1serversserver95idstatistics
#
version: 3
Redémarrez l’Agent.
Collecte de logs
La collecte de logs est désactivée par défaut dans l’Agent Datadog. Vous devez l’activer dans datadog.yaml
:
Ajoutez l’utilisateur dd-agent
au groupe systemd-journal
en exécutant la commande :
usermod -a -G systemd-journal dd-agent
Ajoutez ce bloc de configuration à votre fichier powerdns_recursor.d/conf.yaml
pour commencer à recueillir vos logs PowerDNS Recursor :
logs:
- type: journald
source: powerdns
Consultez le fichier d’exemple powerdns_recursor.d/conf.yaml pour découvrir toutes les options de configuration disponibles.
Redémarrez l’Agent.
Environnement conteneurisé
Consultez la documentation relative aux modèles d’intégration Autodiscovery pour découvrir comment appliquer les paramètres ci-dessous à un environnement conteneurisé.
Paramètre | Valeur |
---|
<NOM_INTÉGRATION> | powerdns_recursor |
<CONFIG_INIT> | vide ou {} |
<CONFIG_INSTANCE> | {"host":"%%host%%", "port":8082, "api_key":"<CLÉ_API_POWERDNS>", "version": 3} |
Collecte de logs
La collecte des logs est désactivée par défaut dans l’Agent Datadog. Pour l’activer, consultez la section Collecte de logs avec Kubernetes.
Paramètre | Valeur |
---|
<CONFIG_LOG> | {"source": "powerdns"} |
Validation
Lancez la sous-commande status
de l’Agent et cherchez powerdns_recursor
dans la section Checks.
Données collectées
Métriques
Événements
Le check PowerDNS n’inclut aucun événement.
Checks de service
powerdns_recursor.can_connect
Renvoie CRITICAL
si le check de l’Agent n’est pas capable de se connecter à l’instance Gearman qu’il surveille. Si ce n’est pas le cas, renvoie OK
.
Statuses: ok, critical
Dépannage
Besoin d’aide ? Contactez l’assistance Datadog.