Traefik Mesh

Supported OS Linux Windows Mac OS

Versión de la integración2.2.0

Información general

Traefik Mesh es una malla de servicio ligera y fácil de desplegar que ofrece funciones avanzadas de gestión del tráfico, seguridad y observabilidad para aplicaciones de microservicios, aprovechando las capacidades del proxy de Traefik. Con la integración de Traefik de Datadog, puedes:

  • Obtén información sobre el tráfico que entra en tu malla de servicio.
  • Obtén información crítica sobre el rendimiento, la fiabilidad y la seguridad de cada servicio dentro de tu malla, lo que garantiza que tus servicios funcionan de forma eficiente y ayuda a identificar y resolver problemas rápidamente.
  • Obtén información detallada sobre los flujos de tráfico interno dentro de tu malla de servicio, lo que ayuda a monitorizar el rendimiento y garantizar la fiabilidad.

Este check monitoriza Traefik Mesh a través del Datadog Agent.

Configuración

Sigue las siguientes instrucciones para instalar y configurar este check para un Agent que se ejecuta 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 del Agent v7.55.0, el check de Traefik Mesh se incluye en el paquete del Datadog Agent. No es necesaria ninguna instalación adicional en tu servidor.

Nota: Este check requiere el Agent v7.55.0 o posterior.

Configuración

Traefik Mesh puede configurarse para exponer las métricas con formato Prometheus. El Datadog Agent puede recopilar estas métricas utilizando la integración descrita a continuación. Sigue las instrucciones para configurar la recopilación de datos para tus instancias de Traefik Mesh. Para las configuraciones requeridas para exponer las métricas de Prometheus, ve la página de Observabilidad en la documentación oficial de Traefik Mesh.

Además, se puede recopilar un pequeño subconjunto de métricas comunicándote con diferentes endpoints de la API. En concreto:

  • /api/version: información sobre la versión del proxy de Traefik.
  • /api/status/nodes: estado de preparación de los nodos visibles por el controlador de Traefik.
  • /api/status/readiness: estado listo del controlador de Traefik.

Nota: Este check utiliza OpenMetrics para la recopilación de métricas, que requiere Python 3.

Contenedores

Recopilación de métricas

Asegúrate de que las métricas con formato Prometheus estén expuestas en tu clúster de Traefik Mesh. Puedes configurar y personalizar esto siguiendo las instrucciones en la página de Observabilidad en la documentación oficial de Traefik Mesh. Para que el Agent empiece a recopilar métricas, los pods de Traefik Mesh deben estar anotados. Para obtener más información acerca de las anotaciones, consulta las plantillas de integración de Autodiscovery para obtener orientación. Puedes encontrar opciones adicionales de configuración revisando el traefik_mesh.d/conf.yaml de ejemplo.

Nota: Las siguientes métricas sólo pueden recopilarse si están disponibles. Algunas métricas sólo se generan cuando se realizan determinadas acciones.

Al configurar el check de Traefik Mesh, puedes utilizar los siguientes parámetros:

  • openmetrics_endpoint: este parámetro debe establecerse en la localización en la que las métricas con formato Prometheus están expuestas. El puerto por defecto es 8082, pero puede configurarse usando el parámetro --entryPoints.metrics.address. En entornos en contenedores, %%host%% puede utilizarse para la autodetección de hosts.
  • traefik_proxy_api_endpooint: este parámetro es opcional. El puerto por defecto es 8080 y puede configurarse usando --entryPoints.traefik.address. En entornos en contenedores, %%host%% puede ser usado para la autodetección de hosts.
  • traefik_controller_api_endpoint: este parámetro es opcional. El puerto por defecto es 9000.

Proxy de Traefik

# (...)
metadata:
  name: '<POD_NAME>'
  annotations:
    ad.datadoghq.com/<CONTAINER_NAME>.checks: |
      {
        "traefik_mesh": {
          "init_config": {},
          "instances": [
            {
              "openmetrics_endpoint": "http://%%host%%:8082/metrics",
              "traefik_proxy_api_endpoint": "http://%%host%%:8080"
            }
          ]
        }
      }      
    # (...)
spec:
  containers:
    - name: <CONTAINER_NAME>
# (...)

Controlador de Traefik

# (...)
metadata:
  name: '<POD_NAME>'
  annotations:
    ad.datadoghq.com/<CONTAINER_NAME>.checks: |
      {
        "traefik_mesh": {
          "init_config": {},
          "instances": [
            {
              "traefik_controller_api_endpoint": "http://%%host%%:9000"
            }
          ]
        }
      }      
    # (...)
spec:
  containers:
    - name: <CONTAINER_NAME>
# (...)

Consulta el traefik_mesh.d/conf.yaml de ejemplo para ver todas las opciones disponibles de configuración.

Recopilación de logs

Disponible para las versiones >6.0 del Agent

Los logs de Traefik Mesh pueden recopilarse de los diferentes pods de Traefik Mesh a través de Kubernetes. La recopilación de logs está deshabilitada por defecto en el Datadog Agent. Para habilitarla, consulta Recopilación de logs de Kubernetes.

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ámetroValor
<LOG_CONFIG>{"source": "traefik_mesh", "service": "<SERVICE_NAME>"}

Validación

Ejecuta el subcomando de estado del Agent y busca traefik_mesh en la sección Checks.

Datos recopilados

Métricas

Eventos

La integración de Traefik Mesh no incluye ningún evento.

Checks de servicio

Solucionar problemas

¿Necesitas ayuda? Ponte en contacto con el soporte de Datadog.

PREVIEWING: may/embedded-workflows