Este check monitoriza Flux a través del Datadog Agent. Flux es un conjunto de soluciones de entrega continua y progresiva para Kubernetes que es abierto y extensible.
Configuración
Sigue las siguientes instrucciones para instalar y configurar este check para un Agent que se ejecute en un host. Para entornos en contenedores, consulta las Plantillas de integración de Autodiscovery para obtener orientación sobre la aplicación de estas instrucciones.
Instalación
A partir de la versión 7.51.0 del Agent, el check de Fluxcd está incluido en el paquete del Datadog Agent . No es necesaria ninguna instalación adicional en tu servidor.
Esta integración admite la recopilación de métricas y logs de los siguientes servicios Flux:
helm-controller
kustomize-controller
notification-controller
source-controller
Puedes elegir qué servicios monitorizar en función de tus necesidades.
Recopilación de métricas
Este es un ejemplo de configuración con anotaciones Kubernetes en tus pods de Flux. Consulta el archivo de configuración de ejemplo para ver todas las opciones de configuración disponibles.
Disponible para las versiones 6.0 o posteriores del Agent
Los logs de Flux pueden recopilarse de los distintos pods de Flux a través de Kubernetes. La recopilación de logs está desactivada en forma predeterminada en el Datadog Agent . Para activarla, consultea Recopilación de logs de Kubernetes.
[Ejecuta el subcomando de estado del Agent(https://docs.datadoghq.com/agent/guide/agent-commands/#agent-status-and-information) y busca fluxcd en la sección Checks.
Datos recopilados
Métricas
fluxcd.controller.runtime.active.workers (gauge)
Número de trabajadores utilizados actualmente por controlador. Mostrado como trabajador
Suma de la duración en segundos de una reconciliación de recursos de GitOps Toolkit. Mostrado como segundo
fluxcd.gotk.suspend.status (gauge)
El estado de suspensión actual de un recurso de GitOps Toolkit.
fluxcd.leader_election_master_status (gauge)
Indica si el sistema de informes es el contrato de arrendamiento maestro en cuestión. 0 indica copia de seguridad, 1 indica maestro. ’nombre’ es la cadena utilizada para identificar el contrato. Asegúrate de agrupar por nombre.
fluxcd.process.cpu_seconds.count (count)
Tiempo total de CPU del usuario y del sistema empleado en segundos. Mostrado como segundo
fluxcd.process.max_fds (gauge)
Número máximo de descriptores de archivo abiertos.
fluxcd.process.open_fds (gauge)
Número de descriptores de archivo abiertos.
fluxcd.process.resident_memory (gauge)
Tamaño de la memoria residente en bytes. Mostrado como byte
fluxcd.process.start_time (gauge)
Hora de inicio del proceso desde la época unix en segundos. Mostrado como segundo
fluxcd.process.virtual_memory (gauge)
Tamaño de la memoria virtual en bytes. Mostrado como byte
fluxcd.process.virtual_memory.max (gauge)
Cantidad máxima de memoria virtual disponible en bytes. Mostrado como byte
fluxcd.rest_client_requests.count (count)
Número de solicitudes HTTP, divididas por código de estado, método y host. Mostrado como solicitud
fluxcd.workqueue.adds.count (count)
Número total de adiciones gestionadas por una cola de trabajo.
El número de segundos que tiene el procesador en ejecución más largo para una cola de trabajo que se ha estado ejecutando. Mostrado como segundo
fluxcd.workqueue.retries.count (count)
Número total de reintentos gestionados por la cola de trabajo.
fluxcd.workqueue.unfinished_work (gauge)
El número de segundos de trabajo realizado que está en curso y no ha sido observado por duración_trabajo. Los valores grandes indican subprocesos atascados. Se puede deducir el número de subprocesos atascados observando la velocidad a la que aumenta. Mostrado como segundo
Eventos
La integración de fluxcd no incluye eventos.
Checks de servicio
fluxcd.openmetrics.health
Devuelve CRITICAL si el check no puede acceder al endpoint de métricas de OpenMetrics de Fluxcd.