OpenLDAP
Rapport de recherche Datadog : Bilan sur l'adoption de l'informatique sans serveur Rapport : Bilan sur l'adoption de l'informatique sans serveur

OpenLDAP

Agent Check Check de l'Agent

Supported OS: Linux Mac OS Windows

Présentation

Utilisez l’intégration OpenLDAP pour recueillir des métriques à partir du backend cn=Monitor de vos serveurs OpenLDAP.

Configuration

Installation

L’intégration OpenLDAP est fournie avec l’Agent. Pour commencer à recueillir vos métriques OpenLDAP :

  1. Assurez-vous que le backend cn=Monitor est configuré sur vos serveurs OpenLDAP.
  2. Installez l’Agent sur vos serveurs OpenLDAP.

Configuration

Préparer OpenLDAP

Si le backend cn=Monitor n’est pas configuré sur votre serveur, suivez ces étapes :

  1. Vérifiez si la surveillance est activée sur votre installation :

    sudo ldapsearch -Y EXTERNAL -H ldapi:/// -b cn=module{0},cn=config

Si vous voyez une ligne comprenant `olcModuleLoad: back_monitor.la, la surveillance est bien activée. Passez alors à l’étape 3.

  1. Activez la surveillance sur votre serveur :

       cat <<EOF | sudo ldapmodify -Y EXTERNAL -H ldapi:///
       dn: cn=module{0},cn=config
       changetype: modify
       add: olcModuleLoad
       olcModuleLoad: back_monitor.la
       EOF
  2. Créez un mot de passe chiffré avec slappasswd.

  3. Ajoutez un nouvel utilisateur :

       cat <<EOF | ldapadd -H ldapi:/// -D <YOUR BIND DN HERE> -w <YOUR PASSWORD HERE>
       dn: <USER_DISTINGUISHED_NAME>
       objectClass: simpleSecurityObject
       objectClass: organizationalRole
       cn: <COMMON_NAME_OF_THE_NEW_USER>
       description: LDAP monitor
       userPassword:<PASSWORD>
       EOF
  4. Configurez la base de données du monitor :

       cat <<EOF | sudo ldapadd -Y EXTERNAL -H ldapi:///
       dn: olcDatabase=Monitor,cn=config
       objectClass: olcDatabaseConfig
       objectClass: olcMonitorConfig
       olcDatabase: Monitor
       olcAccess: to dn.subtree='cn=Monitor' by dn.base='<USER_DISTINGUISHED_NAME>' read by * none
       EOF

Configurer l’intégration OpenLDAP

Host

Suivez les instructions ci-dessous pour configurer ce check lorsque l’Agent est exécuté sur un host. Consultez la section Environnement conteneurisé pour en savoir plus sur les environnements conteneurisés.

Collecte de métriques
  1. Modifiez le fichier openldap.d/conf.yaml dans le dossier conf.d à la racine du répertoire de configuration de votre Agent]. Consultez le fichier d’exemple openldap.d/conf.yaml pour découvrir toutes les options de configuration disponibles.

    init_config:
    
    instances:
     ## @param url - string - required
     ## Full URL of your ldap server. Use `ldaps` or `ldap` as the scheme to
     ## use TLS or not, or `ldapi` to connect to a UNIX socket.
     #
     - url: ldaps://localhost:636
    
       ## @param username - string - optional
       ## The DN of the user that can read the monitor database.
       #
       username: "<USER_DISTINGUISHED_NAME>"
    
       ## @param password - string - optional
       ## Password associated with `username`
       #
       password: "<PASSWORD>"
  2. Redémarrez l’Agent.

Collecte de logs

Disponible à partir des versions > 6.0 de l’Agent

  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 ce bloc de configuration à votre fichier openldap.d/conf.yaml pour commencer à recueillir vos logs OpenLDAP :

    logs:
     - type: file
       path: /var/log/slapd.log
       source: openldap
       service: "<SERVICE_NAME>"

Modifiez les valeurs des paramètres path et service et configurez-les pour votre environnement. Consultez le fichier d’exemple openldap.d/conf.yaml pour découvrir toutes les options de configuration disponibles.

  1. Redémarrez l’Agent.
Environnement conteneurisé
Collecte de métriques

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>openldap
<CONFIG_INIT>vide ou {}
<CONFIG_INSTANCE>{"url":"ldaps://%%host%%:636","username":"<NOM_DISTINCT_UTILISATEUR>","password":"<MOTDEPASSE>"}
Collecte de logs

Disponible à partir des versions > 6.0 de l’Agent

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": "openldap", "service": "<NOM_SERVICE>"}

Validation

Lancez la sous-commande status de l’Agent et cherchez openldap dans la section Checks.

Compatibilité

Ce check est compatible avec toutes les principales plateformes.

Données collectées

Métriques

openldap.bind_time
(gauge)
Time it takes the check to bind to the OpenLDAP server
Shown as second
openldap.connections.current
(gauge)
Current number of active connections
Shown as connection
openldap.connections.max_file_descriptors
(gauge)
Maximum number of file descriptors
Shown as file
openldap.connections.total
(count)
Total number of connections since the server started
Shown as connection
openldap.operations.completed.total
(count)
Total number of operations completed by the server
Shown as operation
openldap.operations.initiated.total
(count)
Total number of operations initiated by the server
Shown as operation
openldap.operations.completed
(count)
Number of operations completed by the server tagged by operation type
Shown as operation
openldap.operations.initiated
(count)
Number of operations initiated by the server tagged by operation type
Shown as operation
openldap.statistics.bytes
(count)
Number of bytes sent by the server
Shown as byte
openldap.statistics.entries
(count)
Number of entries sent by the server
Shown as entry
openldap.statistics.pdu
(count)
Number of PDU packets sent by the server
Shown as packet
openldap.statistics.referrals
(count)
Number of referrals sent by the server
Shown as message
openldap.threads
(gauge)
Number of threads started by the server tagged by state
Shown as thread
openldap.threads.max
(gauge)
Maximum number of threads as configured
Shown as thread
openldap.threads.max_pending
(gauge)
Maximum number of pending threads
Shown as thread
openldap.uptime
(gauge)
Uptime of the server
Shown as second
openldap.waiter.read
(gauge)
Number of current read waiters
Shown as worker
openldap.waiter.write
(gauge)
Number of current writer waiters
Shown as worker
openldap.query.duration
(gauge)
Time it takes to execute the query
Shown as second
openldap.query.entries
(gauge)
Number of entries returned by the query
Shown as entry

Événements

Le check OpenLDAP n’inclut aucun événement.

Checks de service

openldap.can_connect:
Renvoie CRITICAL si l’intégration ne parvient pas à se connecter au serveur OpenLDAP à surveiller. Si ce n’est pas le cas, renvoie OK.

Dépannage

Besoin d’aide ? Contactez l’assistance Datadog.