AWS App Mesh

Supported OS Linux Mac OS Windows

Información general

AWS App Mesh es una malla de servicio que proporciona una red a nivel de aplicación para tus microservicios que se ejecutan 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 de Kubernetes utilizando la documentación de la integración de 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
    

APM

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 dedicadas de recopilación de logs de Kubernetes.

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:

```shell
  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, el inyector appmesh puede desplegarse siguiendo la documentación de App Mesh con EKS con la opción enable-datadog-tracing=true o la variable de entornoENABLE_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 habilitado, como un auxiliar Envoy inyectado, utilizando la documentación de la integración de 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 auxiliar Envoy y Datadog Agent con las siguientes etiquetas (labels) de Docker. Consulta la configuración de la integración de ECS Fargate para obtener más detalles.

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

APM

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

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

Recopilación de trazas

  1. Habilita la recopilación de trazas siguiendo las instrucciones de la documentación de la integración de ECS Fargate.

Establece los parámetros de AWS App Mesh ENABLE_ENVOY_Datadog_TRACING y Datadog_TRACER_PORT como variables de entorno en la definición de la tarea de ECS Fargate. Más información en 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 habilitado, como un auxiliar Envoy inyectado, utilizando la documentación de la integración de 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 auxiliar Envoy y Datadog Agent con las siguientes etiquetas (labels) de Docker. Consulta la configuración de la integración de ECS Fargate para obtener más detalles.

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

APM

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

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

Recopilación de trazas

  1. Habilita la recopilación de trazas siguiendo las instrucciones de la documentación de la integración de ECS.

  2. Establece los parámetros de AWS App Mesh ENABLE_ENVOY_DATADOG_TRACING y DATADOG_TRACER_PORT como variables de entorno en la definición de la tarea de ECS. Más información en la documentación de AWS App Mesh.

Datos recopilados

Métricas

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

Eventos

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

Checks de servicio

La integración de AWS App Mesh no incluye ningún check de servicio.

Resolución de problemas

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

Leer más

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