PowerDNS Recursor

Supported OS Linux Mac OS Windows

Intégration2.1.0

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 :

  1. 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
    
  2. Redémarrez l’Agent.

Collecte de logs
  1. La collecte de logs est désactivée par défaut dans l’Agent Datadog. Vous devez l’activer dans datadog.yaml :

    logs_enabled: true
    
  2. Ajoutez l’utilisateur dd-agent au groupe systemd-journal en exécutant la commande :

    usermod -a -G systemd-journal dd-agent
    
  3. 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.

  4. 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ètreValeur
<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ètreValeur
<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.

PREVIEWING: may/restructure-op-docs