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.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
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
.