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 :
- Assurez-vous que le backend
cn=Monitor
est configuré sur vos serveurs OpenLDAP. - 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 :
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.
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
Créez un mot de passe chiffré avec slappasswd
.
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
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
Host
Pour configurer ce check lorsque l’Agent est exécuté sur un host :
Collecte de métriques
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>"
Redémarrez l’Agent.
Collecte de logs
Disponible à partir des versions > 6.0 de l’Agent
La collecte de logs est désactivée par défaut dans l’Agent Datadog. Vous devez l’activer dans datadog.yaml
:
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.
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ètre | Valeur |
---|
<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 Kubernetes.
Paramètre | Valeur |
---|
<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 (count) | Number of operations completed by the server tagged by operation type Shown as operation |
openldap.operations.completed.total (count) | Total number of operations completed by the server Shown as operation |
openldap.operations.initiated (count) | Number of operations initiated by the server tagged by operation type Shown as operation |
openldap.operations.initiated.total (count) | Total number of operations initiated by the server Shown as operation |
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 |
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 |
Événements
Le check OpenLDAP n’inclut aucun événement.
Checks de service
openldap.can_connect
Returns CRITICAL
if the integration cannot bind to the monitored OpenLDAP server, OK
otherwise.
Statuses: ok, critical
Dépannage
Besoin d’aide ? Contactez l’assistance Datadog.