Versión de la integración1.0.0
Este check recopila métricas de OPA Gatekeeper.

Configuración
Sigue las instrucciones a continuación para instalar y configurar este check para un Agent que se ejecute en un clúster de Kubernetes. Consulta también las plantillas de integración de Autodiscovery para obtener orientación sobre la aplicación de estas instrucciones.
Instalación
Versiones 7.26.0 y 6.26.0 o posteriores del Agent
Para usar una integración de integrations-extra con el Docker Agent, Datadog recomienda crear el Agent con la integración instalada. Usa el siguiente archivo de Docker para crear una versión actualizada del Agent que incluya la integración gatekeeper desde integrations-extras:
FROM gcr.io/datadoghq/agent:latest
RUN agent integration install -r -t datadog-gatekeeper==<INTEGRATION_VERSION>
Versiones 7.26.0 y 6.26.0 o anteriores del Agent
Para instalar el check de Gatekeeper en tu clúster de Kubernetes:
Instala el kit de herramientas para desarrolladores.
Clona el repositorio integrations-extras:
git clone https://github.com/DataDog/integrations-extras.git.
Actualiza la configuración de ddev con la ruta de integrations-extras/:
ddev config set repos.extras ./integrations-extras
Para crear el paquete de gatekeeper, ejecuta:
ddev -e release build gatekeeper
Descarga el manifiesto del Agent para instalar el Datadog Agent como DaemonSet.
Crea dos PersistentVolumeClaim, uno para el código de checks y otro para la configuración.
Añádelos como volúmenes a tu plantilla de pods del Agent y úsalos para los checks y configuración:
env:
- name: DD_CONFD_PATH
value: "/confd"
- name: DD_ADDITIONAL_CHECKSD
value: "/checksd"
[...]
volumeMounts:
- name: agent-code-storage
mountPath: /checksd
- name: agent-conf-storage
mountPath: /confd
[...]
volumes:
- name: agent-code-storage
persistentVolumeClaim:
claimName: agent-code-claim
- name: agent-conf-storage
persistentVolumeClaim:
claimName: agent-conf-claim
Despliega el Datadog Agent en tu clúster de Kubernetes:
kubectl apply -f agent.yaml
Copia el archivo .whl del artefacto de la integración en tus nodos de Kubernetes o súbelo a una URL pública.
Ejecuta el siguiente comando para instalar la rueda de integraciones con el Agent:
kubectl exec ds/datadog -- agent integration install -w <PATH_OF_GATEKEEPER_ARTIFACT_>/<GATEKEEPER_ARTIFACT_NAME>.whl
Ejecuta los siguientes comandos para copiar los checks y la configuración en los PVCs correspondientes:
kubectl exec ds/datadog -- sh
# cp -R /opt/datadog-agent/embedded/lib/python3.8/site-packages/datadog_checks/* /checksd
# cp -R /etc/datadog-agent/conf.d/* /confd
Reinicia los pods del Datadog Agent.
Configuración
Edita el archivo gatekeeper/conf.yaml, en la carpeta /confd que añadiste al pod del Agent para empezar a recopilar los datos de rendimiento de tu gatekeeper. Ve el gatekeeper/conf.yaml de ejemplo para conocer todas las opciones de configuración disponibles.
Reinicia el Agent.
Validación
Ejecuta el subcomando de estado del Agent y busca gatekeeper en la sección Checks.
Datos recopilados
Métricas
| |
|---|
gatekeeper.audit.duration.seconds.sum (count) | Latencia de la operación de auditoría en segundos Se muestra como segundo |
gatekeeper.audit.duration.seconds.count (count) | Latencia de la operación de auditoría en segundos Se muestra como segundo |
gatekeeper.audit.last_run_time (gauge) | Marca de tiempo de la última operación de auditoría |
gatekeeper.constraint_template_ingestion.duration.seconds.sum (count) | Distribución del tiempo que se tardó en ingerir una plantilla de restricciones en segundos Se muestra como segundo |
gatekeeper.constraint_template_ingestion.duration.seconds.count (count) | Distribución del tiempo que se tardó en ingerir una plantilla de restricciones en segundos Se muestra como segundo |
gatekeeper.constraint_template_ingestion.count (count) | Número total de acciones de ingesta de plantillas de restricciones |
gatekeeper.violations (gauge) | Número total de infracciones por restricción |
gatekeeper.constraints (gauge) | Número actual de restricciones conocidas |
gatekeeper.constraint_templates (gauge) | Número de plantillas de restricciones observadas |
gatekeeper.request.duration.seconds.sum (count) | [Obsoleto desde Gatekeeper v3.4.0] El tiempo de respuesta en segundos Se muestra como segundo |
gatekeeper.request.duration.seconds.count (count) | [Obsoleto desde Gatekeeper v3.4.0] El tiempo de respuesta en segundos Se muestra como segundo |
gatekeeper.request.count (count) | [Obsoleto desde Gatekeeper v3.4.0] Número total de solicitudes que se dirigen al webhook |
gatekeeper.sync (gauge) | Número total de recursos de cada tipo que se almacenan en caché |
gatekeeper.sync.duration.seconds.sum (count) | Latencia de la operación de sincronización en segundos Se muestra como segundo |
gatekeeper.sync.duration.seconds.count (count) | Latencia de la operación de sincronización en segundos Se muestra como segundo |
gatekeeper.sync.last_run_time (gauge) | Marca de tiempo de la última operación de sincronización |
gatekeeper.watch.intended (gauge) | El número total de Grupos/Versiones/Tipos que el gestor de vigilancia tiene instrucciones de vigilar. |
gatekeeper.watch.watched (gauge) | El número total de Grupos/Versiones/Tipos vigilados actualmente por el gestor de vigilancia. |
gatekeeper.validation.request.count (count) | Número de solicitudes enviadas al webhook de validación |
gatekeeper.validation.request.duration.seconds.sum (count) | El tiempo de respuesta en segundo Se muestra como segundo |
gatekeeper.validation.request.duration.seconds.count (count) | El tiempo de respuesta en segundo Se muestra como segundo |
gatekeeper.mutator.ingestion.count (count) | Número total de acciones de ingesta de Mutator |
gatekeeper.mutator.ingestion.duration.seconds.sum (count) | La distribución de las duraciones de ingesta de Mutator Se muestra como segundo |
gatekeeper.mutator.ingestion.duration.seconds.count (count) | La distribución de las duraciones de ingesta de Mutator Se muestra como segundo |
gatekeeper.mutators (gauge) | Número actual de objetos de Mutator |
gatekeeper.mutator.conflicting.count (gauge) | Número actual de objetos de Mutator en conflicto |
Eventos
Gatekeeper no incluye eventos.
Checks de servicio
gatekeeper.prometheus.health
Devuelve CRITICAL si el agent no consigue conectarse al endpoint de métricas de Prometheus, en caso contrario, devuelve OK.
Estados: ok, critical
gatekeeper.health
Devuelve CRITICAL si el agent no consigue conectar con el endpoint de estado del gatekeeper, OK si devuelve 200, WARNING en caso contrario.
Estados: ok, warning, critical
Solucionar problemas
¿Necesitas ayuda? Ponte en contacto con el soporte de Datadog.