Utiliza la integración de OpenLDAP para obtener métricas del backend cn=Monitor
de tus servidores OpenLDAP.
Configuración
Instalación
La integración de OpenLDAP se empaqueta con el Agent. Para empezar a recopilar tus métricas de OpenLDAP:
- Ten configurado el backend
cn=Monitor
en tus servidores OpenLDAP. - Instala el Agent en tus servidores OpenLDAP.
Configuración
Preparar OpenLDAP
Si el backend cn=Monitor
no está configurado en tu servidor, sigue estos pasos:
Comprueba si la monitorización está activada en tu instalación:
sudo ldapsearch -Y EXTERNAL -H ldapi:/// -b cn=module{0},cn=config
Si ves una línea con olcModuleLoad: back_monitor.la
, la monitorización ya está activada, ve al paso 3.
Activa la monitorización en tu servidor:
cat <<EOF | sudo ldapmodify -Y EXTERNAL -H ldapi:///
dn: cn=module{0},cn=config
changetype: modify
add: olcModuleLoad
olcModuleLoad: back_monitor.la
EOF
Crea una contraseña cifrada con slappasswd
.
Añade un nuevo usuario:
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
Configura la base de datos del 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
Configurar la integración de OpenLDAP
Host
Para configurar este check para un Agent que se ejecuta en un host:
Recopilación de métricas
Edita tu openldap.d/conf.yaml
en la carpeta conf.d
en la raíz de tu directorio de configuración del Agent. Consulta el openldap.d/conf.yaml de ejemplo para todas las opciones disponibles de configuración.
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>"
Reinicia el Agent.
Recopilación de logs
Disponible para las versiones >6.0 del Agent
La recopilación de logs se encuentra deshabilitada de manera predeterminada en el Datadog Agent. Habilítala en tu archivo datadog.yaml
:
Añade este bloque de configuración a tu archivo openldap.d/conf.yaml
para empezar a recopilar logs de OpenLDAP:
logs:
- type: file
path: /var/log/slapd.log
source: openldap
service: "<SERVICE_NAME>"
Cambia los valores de los parámetros path
y service
y configúralos para tu entorno. Consulta el openldap.d/conf.yaml de ejemplo para ver todas las opciones disponibles de configuración.
Reinicia el Agent.
Contenedores
Recopilación de métricas
Para entornos en contenedores, consulta las plantillas de integración de Autodiscovery para obtener orientación sobre la aplicación de los parámetros que se indican a continuación.
Parámetro | Valor |
---|
<INTEGRATION_NAME> | openldap |
<INIT_CONFIG> | en blanco o {} |
<INSTANCE_CONFIG> | {"url":"ldaps://%%host%%:636","username":"<USER_DISTINGUISHED_NAME>","password":"<PASSWORD>"} |
Recopilación de logs
Disponible para las versiones >6.0 del Agent
La recopilación de logs se encuentra deshabilitada de manera predeterminada en el Datadog Agent. Para habilitarla, consulta Recopilación de logs de Kubernetes.
Parámetro | Valor |
---|
<LOG_CONFIG> | {"source": "openldap", "service": "<SERVICE_NAME>"} |
Validación
Ejecuta el subcomando de estado del Agent y busca openldap
en la sección Checks.
Compatibilidad
El check es compatible con las principales plataformas.
Datos recopilados
Métricas
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 |
Eventos
El check de openldap no incluye ningún evento.
Checks de servicio
openldap.can_connect
Returns CRITICAL
if the integration cannot bind to the monitored OpenLDAP server, OK
otherwise.
Statuses: ok, critical
Solucionar problemas
¿Necesitas ayuda? Ponte en contacto con el soporte de Datadog.