AWS App Mesh

Supported OS Mac OS

Información general

AWS App Mesh es una malla de servicios que proporciona redes a nivel de aplicación para tus microservicios ejecutados en clústeres de Amazon ECS Fargate o Amazon EKS.

Configuración

Sigue estas instrucciones para activar la recopilación de métricas para el proxy auxiliar de AWS App Mesh, denominado Envoy. Los usuarios pueden elegir agregar auxiliares en uno de estos tres modos: mediante un despliegue, un parche en el despliegue anterior o con el controlador de inyector de AWS App Mesh. Todos los modos son compatibles con los siguientes pasos.

Recopilación de métricas

Requisito previo: Despliega Datadog Agents como DaemonSet en tu clúster Kubernetes utilizando la documentación de la integración EKS.

  1. Debido a las limitaciones de App Mesh, el reenvío de métricas desde EKS a Datadog requiere que el filtro de salida se establezca en Allow External Traffic.

  2. Crea un ConfigMap en tu clúster para descubrir automáticamente los auxiliares Envoy de App Mesh que se añaden a cada pod:

      apiVersion: v1
      kind: ConfigMap
      metadata:
      name: datadog-config
      data:
      envoy: |-
        ad_identifiers:
        - aws-appmesh-envoy
        init_config:
        instances:
        - stats_url: http://%%host%%:9901/stats
          tags:
            - <TAG_KEY>:<TAG_VALUE>  # Example - cluster:eks-appmesh
    
  3. Actualiza el objeto volumeMounts en el archivo YAML del DaemonSet del Datadog Agent:

          volumeMounts:
           - name: datadog-config
             mountPath: /conf.d
    
  4. Actualiza el objeto volumes en el archivo YAML del DaemonSet del Datadog Agent:

         volumes:
          - name: datadog-config
            configMap:
              name: datadog-config
              items:
              - key: envoy
                path: envoy.yaml
    

Recopilación de logs

La recopilación de logs no es compatible con este sitio.

Para habilitar la recopilación de logs, actualiza el DaemonSet del Agent con las instrucciones para la recopilación de logs de Kubernetes exclusivas.

Recopilación de trazas

Selecciona el espacio de nombres para desplegar el datadog-agent y servicio, por ejemplo: monitoring. Utiliza esto en la opción para desplegar el appmesh-inyector con:

  helm upgrade -i appmesh-controller eks/appmesh-controller \
  --namespace appmesh-system \
  --set sidecar.logLevel=debug \
  --set tracing.enabled=true \
  --set tracing.provider=datadog \
  --set tracing.address=ref:status.hostIP \
  --set tracing.port=8126

Alternativamente, es posible desplegar el inyector appmesh siguiendo la documentación App Mesh con EKS, utilizando la opción enable-datadog-tracing=true o la variable de entorno ENABLE_DATADOG_TRACING=true.

Recopilación de métricas

Requisito previo: Añade Datadog Agents a cada una de tus definiciones de tareas de Fargate con App Mesh activado, como un sidecar Envoy inyectado, utilizando la documentación de la integración ECS Fargate.

  1. Debido a las limitaciones de App Mesh, el reenvío de métricas de una tarea de ECS a Datadog requiere que el filtro de salida se establezca en Allow External Traffic.

  2. Actualiza todas las definiciones de tareas que contengan el sidecar Envoy y el Datadog Agent con las siguientes etiquetas (labels) de Docker. Consulta Configuración de integraciones para ECS Fargate para obtener más información.

        "dockerLabels": {
              com.datadoghq.ad.instances : [{"stats_url": "http://%%host%%:9901/stats"}]
              com.datadoghq.ad.check_names : ["envoy"]
              com.datadoghq.ad.init_configs : [{}]
            },
    

Recopilación de logs

La recopilación de logs no es compatible con este sitio.

Habilita la recopilación de logs con las instrucciones de la documentación de la integración ECS Fargate.

Recopilación de trazas

  1. Habilita la recopilación de trazas (traces) con las instrucciones de la documentación de la integración ECS Fargate.

Configura los parámetros ENABLE_ENVOY_DATADOG_TRACING y DATADOG_TRACER_PORT de AWS App Mesh como variables de entorno en la definición de la tarea de ECS Fargate. Para obtener más información, consulta la documentación de AWS App Mesh.

Recopilación de métricas

Requisito previo: Añade Datadog Agents a cada una de tus definiciones de tareas de ECS EC2 con App Mesh activado, como un sidecar Envoy inyectado, utilizando la documentación de la integración ECS.

  1. Debido a las limitaciones de App Mesh, el reenvío de métricas de una tarea de ECS a Datadog requiere que el filtro de salida se establezca en Allow External Traffic.

  2. Actualiza todas las definiciones de tareas que contengan el sidecar Envoy y el Datadog Agent con las siguientes etiquetas (labels) de Docker. Consulta Configuración de integraciones para ECS Fargate para obtener más información.

        "dockerLabels": {
              com.datadoghq.ad.instances : [{"stats_url": "http://%%host%%:9901/stats"}]
              com.datadoghq.ad.check_names : ["envoy"]
              com.datadoghq.ad.init_configs : [{}]
            },
    

Recopilación de logs

La recopilación de logs no es compatible con este sitio.

Habilita la recopilación de logs con las instrucciones de la documentación de la integración ECS.

Recopilación de trazas

  1. Habilita la recopilación de trazas (traces) con las instrucciones de la documentación de la integración ECS.

  2. Configura los parámetros ENABLE_ENVOY_DATADOG_TRACING y DATADOG_TRACER_PORT de AWS App Mesh como variables de entorno en la definición de la tarea de ECS. Para obtener más información, consulta la documentación de AWS App Mesh.

Datos recopilados

Métricas

Consulta la integración Envoy para obtener una lista de métricas.

Eventos

La integración AWS App Mesh no incluye eventos.

Checks de servicio

La integración AWS App Mesh no incluye checks de servicio.

Solucionar problemas

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

Referencias adicionales

Más enlaces, artículos y documentación útiles: