Esta guía ofrece información general sobre el proceso de integración de una cuenta de Amazon Web Services (AWS) con Datadog usando la plantilla de CloudFormation de Datadog.
Sin entrar en detalles, esto implica la creación de una política asociada y de roles de IAM para que la cuenta de AWS de Datadog pueda hacer llamadas a la API de tu cuenta de AWS con el fin de recopilar o insertar datos. La plantilla también implementa la función lambda de Datadog Forwarder para enviar logs a Datadog. Si usas la plantilla de CloudFormation, dispondrás de todas las herramientas necesarias para enviar estos datos a tu cuenta de Datadog, y Datadog conservará la plantilla de CloudFormation para proporcionar la funcionalidad más reciente.
Una vez que esté establecida la conexión inicial, puedes habilitar las integraciones de servicios concretos de AWS que resulten pertinentes para tu entorno de AWS. Basta un solo clic para que Datadog envíe los recursos necesarios a tu cuenta de AWS y comience a consultar las métricas y eventos de los servicios que utilizas. En lo referente a los servicios populares que usas de AWS, Datadog provee dashboards predefinidos para que dispongas de una visibilidad inmediata y personalizable. Esta guía te muestra cómo configurar la integración e instalar el Datadog Agent en una instancia EC2 de Amazon Linux y, además, facilita información general sobre las funciones de la integración. Consulta la sección Habilitar las integraciones de servicios concretos de AWS para ver una lista con las subintegraciones disponibles.
Puedes repetir este proceso en todas las cuentas de AWS en las que sea necesario, aunque también puedes usar API, AWS CLI o Terraform para configurar varias cuentas a la vez. Para más información, lee la Guía de Datadog-Amazon CloudFormation.
Requisitos previos
Antes de empezar, asegúrate de que cumples los siguientes requisitos previos:
Tienes una cuenta de AWS. Tu usuario de AWS necesita los siguientes permisos de IAM para poder ejecutar correctamente la plantilla de CloudFormation:
- cloudformation:CreateStack
- cloudformation:CreateUploadBucket
- cloudformation:DeleteStack
- cloudformation:DescribeStacks
- cloudformation:DescribeStackEvents
- cloudformation:GetStackPolicy
- cloudformation:GetTemplateSummary
- cloudformation:ListStacks
- cloudformation:ListStackResources
- ec2:DescribeSecurityGroups
- ec2:DescribeSubnets
- ec2:DescribeVpcs
- iam:AttachRolePolicy
- iam:CreatePolicy
- iam:CreateRole
- iam:DeleteRole
- iam:DeleteRolePolicy
- iam:DetachRolePolicy
- iam:GetRole
- iam:GetRolePolicy
- iam:PassRole
- iam:PutRolePolicy
- iam:UpdateAssumeRolePolicy
- kms:Decrypt
- lambda:AddPermission
- lambda:CreateFunction
- lambda:DeleteFunction
- lambda:GetCodeSigningConfig
- lambda:GetFunction
- lambda:GetFunctionCodeSigningConfig
- lambda:GetLayerVersion
- lambda:InvokeFunction
- lambda:PutFunctionConcurrency
- lambda:RemovePermission
- lambda:TagResource
- logs:CreateLogGroup
- logs:DeleteLogGroup
- logs:DescribeLogGroups
- logs:PutRetentionPolicy
- oam:ListSinks
- oam:ListAttachedLinks
- s3:CreateBucket
- s3:DeleteBucket
- s3:DeleteBucketPolicy
- s3:GetEncryptionConfiguration
- s3:GetObject
- s3:GetObjectVersion
- s3:PutBucketPolicy
- s3:PutBucketPublicAccessBlock
- s3:PutEncryptionConfiguration
- secretsmanager:CreateSecret
- secretsmanager:DeleteSecret
- secretsmanager:GetSecretValue
- secretsmanager:PutSecretValue
- serverlessrepo:CreateCloudFormationTemplate
Configuración
Dirígete a la página de configuración de la integración de AWS en Datadog y haz clic en Add AWS Account (Añadir cuenta de AWS).
Configura los parámetros de la integración en la opción Automatically using CloudFormation (Usar CloudFormation automáticamente).
a. Selecciona las regiones de AWS que desees integrar.
b. Añade tu clave API de Datadog.
c. Opcionalmente, envía logs y otros datos a Datadog con la función lambda de Forwarder de Datadog.
d. Opcionalmente, habilita la administración de la posición de seguridad en la nube (CSPM, por sus siglas en inglés) para escanear tu entorno de nube, tus hosts y tus contenedores con el objetivo de detectar errores de configuración y riesgos de seguridad.
Haz clic en Launch CloudFormation Template (Iniciar plantilla de CloudFormation) para abrir la consola de AWS y cargar el stack de CloudFormation. Todos los parámetros estarán ya rellenados en función de lo que hayas seleccionado en el anterior formulario de Datadog, por lo que no tendrás que editarlos a menos que quieras hacerlo.
Nota: El parámetro DatadogAppKey
permite que el stack de CloudFormation haga llamadas a la API de Datadog para ampliar y editar la configuración de Datadog en esta cuenta de AWS. La clave se genera automáticamente y está vinculada a tu cuenta de Datadog.
Marca las casillas obligatorias de AWS y haz clic en Create stack (Crear stack). Se iniciará el proceso de creación del stack de Datadog y de tres stacks anidados. Eso podría tardar varios minutos. Asegúrate de que el stack se ha creado correctamente antes de continuar.
Una vez que hayas creado el stack, vuelve al cuadro de integración de AWS en Datadog y haz clic en Ready! (Listo).
Espera a que se inicie la recopilación de datos durante un máximo de 10 minutos. Después, consulta el dashboard de información general de AWS predefinido para ver las métricas enviadas por tus servicios e infraestructura de AWS:
Habilitar las integraciones de servicios concretos de AWS
Consulta la página de Integrations (Integraciones) para ver un listado completo de las subintegraciones disponibles. Muchas de estas integraciones se instalan de forma predeterminada cuando Datadog reconoce los datos procedentes de tu cuenta de AWS.
Enviar logs
Existen dos formas de enviar los logs de los servicios de AWS a Datadog:
- Destino de Kinesis Firehose: Usa el destino de Datadog en tu flujo de entrega de Kinesis Firehose para transferir los logs a Datadog. Es el método recomendado cuando se trata de enviar un volumen muy alto de logs desde CloudWatch.
- Función lambda de Forwarder: Despliega la función lambda de Datadog Forwarder. Esta se suscribe a los depósitos de S3 o a tus grupos de logs de CloudWatch, y transfiere logs a Datadog. Debes usar este método para enviar trazas (traces), métricas mejoradas o métricas personalizadas a partir de funciones lambda, de forma asincrónica y a través de logs. Datadog también recomienda este método para enviar logs de S3 a otros recursos que no pueden transferir datos por streaming hacia Kinesis.
Lee la sección Habilitar los logs en tu servicio de AWS para habilitar el flujo de logs en los servicios de AWS más utilizados.
Validación
Una vez que hayas habilitado los logs, los encontrarás en el Logs Explorer (Explorador de logs) con las facetas source
o service
del panel de facetas, tal y como se muestra en este ejemplo de S3:
Instala el Datadog Agent en EC2 para una mayor visibilidad
La integración de AWS con Datadog ya rastrea de forma predeterminada la API de CloudWatch para recopilar las métricas proporcionadas por AWS. No obstante, puedes disfrutar de una visibilidad aún mayor en tus instancias de EC2 con el Datadog Agent. El Agent es un daemon ligero que genera informes de métricas y eventos, aunque también se puede configurar para que lo haga con logs y trazas (traces). En la sección Agent Installation (Instalación del Agent) de la aplicación de Datadog, encontrarás las instrucciones para instalar el Agent en una amplia variedad de sistemas operativos. Muchos sistemas operativos (como Amazon Linux) cuentan con comandos de instalación en un único paso que puedes ejecutar para instalar el Agent desde el terminal de la instancia:
Una vez que Agent esté instalado, se representará gráficamente en la lista de infraestructuras con un icono en forma de hueso:
En la captura de pantalla de arriba, se puede observar que el host que tiene el Datadog Agent instalado genera informes de datos a partir de los checks del sistema y del NTP. El check del sistema proporciona métricas sobre la CPU, la memoria, el sistema de archivos y la E/S, lo que aporta información adicional al host. Puedes habilitar más integraciones para ajustarse al entorno y al caso de uso, o incluso utilizar DogStatsD para enviar directamente las métricas personalizadas a Datadog.
Consulta las FAQ sobre por qué deberías instalar el Datadog Agent en tus instancias de nube para obtener más información sobre las ventajas de este enfoque.
Usar el Datadog Agent con el Servicio de contenedores de Amazon
Puedes usar el Datadog Agent en entornos contenedorizados, independientemente de que estés gestionando tus instancias o utilizando Fargate en un entorno serverless.
ECS con un tipo de lanzamiento EC2
Utiliza la documentación sobre Amazon ECS para ejecutar el Datadog Docker Agent en las instancias EC2 de tu clúster de ECS. Revisa la documentación sobre la recopilación de datos de Amazon ECS para ver las métricas y eventos enviados a tu cuenta de Datadog.
ECS con un tipo de lanzamiento Fargate
Utiliza la documentación sobre Amazon ECS en AWS Fargate para ejecutar el Agent a modo de contenedor con la misma definición de tarea que tu aplicación. Nota: Se necesita la versión 6.1.1 (o posterior) del Datadog Agent para aprovechar al máximo la integración de Fargate.
EKS
No necesitas llevar a cabo ninguna configuración concreta para el Amazon Elastic Kubernetes Service (EKS), tal y como se menciona en la documentación sobre las distribuciones de Kubernetes. Utiliza la documentación específica sobre Kubernetes para implementar el Agent en tu clúster de EKS.
EKS con Fargate
Dado que la gestión de los pods de Fargate corre a cargo de AWS, estos no realizan checks en los componentes del sistema del host, como la CPU y la memoria. Para recopilar los datos de tus pods de AWS Fargate, utiliza la documentación sobre Amazon EKS en AWS Fargate para ejecutar el Agent a modo de sidecar del pod de tu aplicación con control de acceso personalizado y basado en roles (RBAC). Nota: Se necesita la versión 7.17 (o posterior) del Datadog Agent.
EKS en cualquier lugar
Utiliza la documentación sobre EKS en cualquier lugar para los clústeres de Kubernetes locales.
Crea recursos adicionales de Datadog
Además de usar la IU o la API de Datadog, puedes crear muchos recursos de Datadog con el registro de CloudFormation. Si quieres tener visibilidad y solucionar problemas, utiliza los dashboards para mostrar los datos clave, ejecuta las funciones y busca correlaciones de métricas.
Para recibir notificaciones acerca de cualquier comportamiento indeseado o inesperado que se produzca en tu cuenta, crea monitores. Los monitores evalúan de forma coherente los datos que recibe tu cuenta y envían notificaciones para garantizar que la información llegue a los miembros del equipo pertinentes. Revisa la lista de integraciones de notificación para descubrir todas las formas mediante las que puedes notificar a tu equipo.
Explora productos relacionados
Serverless
Puedes unificar las métricas, trazas y logs de las funciones lambda de AWS que ejecutan aplicaciones serverless en Datadog. Dirígete a la sección Serverless para consultar las instrucciones sobre cómo instrumentar tu aplicación, instalar bibliotecas e integraciones serverless, implementar trazas distribuidas con aplicaciones serverless o solucionar problemas en entornos serverless.
APM
Para profundizar aún más y reunir más datos sobre tus aplicaciones y servicios de AWS, habilita la recopilación de trazas distribuidas desde la integración de AWS X-Ray o desde un host con el Datadog Agent que use APM. Luego, lee la sección Explorar Datadog APM para comprender mejor cómo usar estos datos a fin de conocer el rendimiento de tu aplicación.
También puedes usar Watchdog, una función algorítmica para las métricas de infraestructura y rendimiento de APM. Su objetivo consiste en detectar automáticamente los potenciales problemas de la aplicación y enviarte notificaciones al respecto.
Seguridad
Cloud SIEM
Revisa Empezando con Cloud SIEM para evaluar tus logs con respecto a las reglas de detección de logs predefinidas. Estas reglas se pueden personalizar y, cuando detectan alguna amenaza, generan señales de seguridad a las que se puede acceder desde el Explorador de señales de seguridad. Si quieres asegurarte de que se notifica al equipo correcto, utiliza las reglas de notificación para configurar las preferencias de notificación de varias reglas.
CSPM
Utiliza la guía Empezando con CSPM para obtener información sobre cómo detectar y evaluar los errores de configuración en tu entorno de nube. Los datos de configuración de los recursos se evalúan con respecto a las reglas de detección predefinidas de administración de la posición en la nube y la infraestructura para señalar técnicas de ataque y potenciales errores de configuración, lo que permite actuar y buscar soluciones rápido.
Solucionar problemas
Si tienes algún problema, no olvides consultar la sección Solucionar problemas.
Leer más
Additional helpful documentation, links, and articles: