Guía de configuración manual de AWS

Información general

Utiliza esta guía para configurar manualmente la integración con AWS de Datadog.

Para configurar manualmente la integración de AWS, crea una política y un rol de IAM en tu cuenta de AWS y configura el rol con un ID externo de AWS generado en tu cuenta de Datadog. Esto permite que la cuenta de AWS de Datadog consulte las API de AWS en tu nombre y extraiga datos en tu cuenta de Datadog. Las siguientes secciones detallan los pasos para crear cada uno de estos componentes y luego completar la configuración en tu cuenta de Datadog.

La configuración de archivos de logs de S3 mediante la Delegación de roles tiene una disponibilidad limitada. Ponte en contacto con el servicio de asistencia de Datadog para solicitar esta función en tu cuenta Datadog for Government.

Configuración

Generar un ID externo

  1. En la página de configuración de la integración AWS), haz clic en Add AWS Account(s) (Añadir cuenta(s) de AWS) y, a continuación, selecciona Manualmente.
  2. Elige la partición de AWS a la que está delimitada tu cuenta de AWS. La partición puede ser aws para regiones comerciales, aws-cn para China* o aws-us-gov para GovCloud. Para obtener más información, consulta Particiones en la documentación de AWS.

  1. Selecciona Role Delegation para el tipo de acceso. La delegación de roles sólo es compatible con cuentas AWS delimitadas a regiones comerciales de AWS.

  1. Selecciona Role Delegation para el tipo de acceso. La delegación de roles sólo es compatible con cuentas de AWS delimitadas a las regiones comerciales de AWS o AWS GovCloud.

  1. Copia el AWS External ID Para obtener más información sobre el ID externo, consulta la guía del usuario de IAM. Nota: El ID externo permanece disponible y no se regenera durante 48 horas, a menos que un usuario lo cambie explícitamente o que se añada otra cuenta de AWS a Datadog durante este periodo. Puedes volver a la página Añadir cuenta(s) de AWS dentro de ese periodo de tiempo sin que cambie el ID externo.

Crear un rol IAM para la integración Datadog

Datadog asume este rol para recopilar datos en tu nombre.

  1. Ve a la consola de IAM de AWS y haz clic en Create role (Crear rol).
  2. Selecciona Cuenta de AWS para el tipo de entidad de confianza, y Otra cuenta de AWS.

  1. Introduce 464622532012 como Account ID. Este es el ID de la cuenta de Datadog y concede a Datadog acceso a tus datos de AWS.

  1. Introduce 417141415827 como Account ID. Este es el ID de la cuenta de Datadog y concede a Datadog acceso a tus datos de AWS.

  1. Introduce 412381753143 como Account ID. Este es el ID de la cuenta de Datadog y concede a Datadog acceso a tus datos de AWS.

  1. Si la cuenta de AWS que quieres integrar es una cuenta GovCloud, introduce 065115117704 como Account ID. De lo contrario, introduce 392588925713. Este es el ID de la cuenta de Datadog y concede a Datadog acceso a tus datos de AWS.

Nota: Asegúrate de que el selector de SITIO DATADOG de la derecha de esta página de documentación está configurado en tu sitio Datadog, antes de copiar el ID de cuenta anterior.

  1. Selecciona Solicitar ID externo e introduce el ID externo copiado en la sección anterior. Deja Require MFA desactivado. Para obtener más detalles, consulta la página Acceder a cuentas de AWS que son propiedad de terceros en la documentación de AWS.
  2. Haz clic en Next (Siguiente).
  3. Para habilitar la recopilación de recursos, adjunta la política AWS SecurityAudit al rol.
  4. Haz clic en Next (Siguiente).
  5. Asigna un nombre al rol, por ejemplo DatadogIntegrationRole. Opcionalmente, proporciona una descripción y añade etiquetas (tags) al rol.
  6. Haz clic en Create Role (Crear rol).

Crear una política IAM en línea para el rol de la integración Datadog

Esta política define los permisos necesarios para que el rol de la integración Datadog recopile datos de cada integración AWS ofrecida por Datadog. Estos permisos pueden cambiar a medida que se añaden nuevos servicios AWS a esta integración.

  1. Selecciona el rol de la integración Datadog en la página de roles IAM).
  2. Haz clic en Add permissions (Añadir permisos) y selecciona Crear política en línea.
  3. Selecciona la pestaña JSON.
  4. Pega la política de permisos en el cuadro de texto.
    Nota: Opcionalmente, puedes añadir elementos de condición a la política IAM. Por ejemplo, las condiciones se pueden utilizar para restringir la monitorización a determinadas regiones.
  5. Haz clic en Next (Siguiente).
  6. Asigna a la política un nombre como DatadogIntegrationPolicy.
  7. Haz clic en Create policy (Crear política).

Finalizar la configuración en Datadog

  1. Vuelve a la sección de configuración manual de la página de configuración de la integración AWS.
  2. Haz clic en la casilla de verificación I confirm that the Datadog IAM Role has been added to the AWS Account.
  3. En la sección ID de cuenta, introduce tu ID de cuenta sin guiones; por ejemplo, 123456789012. Puedes encontrar el ID de cuenta en el ARN del rol de la integración Datadog, que sigue el formato arn:aws:iam::<ACCOUNT_ID>:role/<ROLE_NAME>.
  4. En la sección Nombre del rol AWS, introduce el nombre del rol de la integración Datadog creado anteriormente. Nota: El nombre del rol distingue entre mayúsculas y minúsculas, y debe coincidir exactamente con el nombre del rol en AWS.
  5. Haz clic en Save (Guardar).
  6. Espera hasta 10 minutos para que se empiecen a recopilar datos y, a continuación, consulta el dashboard de información general de AWS para ver las métricas enviadas por tus servicios y tu infraestructura AWS.
Si se produce un error Datadog no tiene autorización para llevar a cabo sts:AssumeRole. Sigue los pasos de resolución de problemas recomendados en la interfaz de usuario o lee la guía de resolución de problemas.

* Cualquier uso de los servicios Datadog en China continental (o relacionados con entornos de esta localización) está sujeto a la cláusula de exención de responsabilidad, publicada en la sección Localizaciones con restricciones de servicio de nuestro sitio web.

Configuración

AWS

  1. En tu consola de AWS crea un usuario de IAM para que lo utilice la integración de Datadog con los permisos necesarios.
  2. Genera una clave de acceso y una clave secreta para el usuario de IAM en la integración de Datadog.

Datadog

  1. En el cuadro de integración de AWS, haz clic en Add AWS Account (Añadir cuenta de AWS) y, a continuación, selecciona Manually (Manualmente).
  2. Selecciona la pestaña Claves de acceso.
  3. Elige la partición en AWS a la que se delimita tu cuenta AWS. La partición puede ser aws para regiones comerciales, aws-cn para China* o aws-us-gov para GovCloud. Consulta [Particiones][9] en la documentación de AWS para obtener más información.
  4. Haz clic en la casilla de verificación I confirm that the IAM User for the Datadog Integration has been added to the AWS Account (Confirmo que el usuario de IAM para la integración de Datadog se ha añadido a la cuenta de AWS).
  5. Introduce tu Account ID, AWS Access Key y AWS Secret Key.
  6. Haz clic en Save (Guardar).
  7. Espera hasta 10 minutos para que los datos comiencen a recopilarse y, a continuación, consulta el dashboard de resumen de AWS para ver las métricas enviadas por tus servicios e infraestructura de AWS .

* Cualquier uso de los servicios Datadog en China continental (o relacionados con entornos de esta localización) está sujeto a la cláusula de exención de responsabilidad, publicada en la sección Localizaciones con restricciones de servicio de nuestro sitio web.

AWS IAM permissions

AWS IAM permissions enable Datadog to collect metrics, tags, EventBridge events and other data necessary to monitor your AWS environment. To correctly set up the AWS Integration, you must attach the relevant IAM policies to the Datadog AWS Integration IAM Role in your AWS account.

AWS integration IAM policy

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Action": [
        "account:GetAccountInformation",
        "airflow:GetEnvironment",
        "airflow:ListEnvironments",
        "apigateway:GET",
        "autoscaling:Describe*",
        "backup:List*",
        "bcm-data-exports:GetExport",
        "bcm-data-exports:ListExports",
        "budgets:ViewBudget",
        "cloudfront:GetDistributionConfig",
        "cloudfront:ListDistributions",
        "cloudtrail:DescribeTrails",
        "cloudtrail:GetTrail",
        "cloudtrail:GetTrailStatus",
        "cloudtrail:ListTrails",
        "cloudtrail:LookupEvents",
        "cloudwatch:Describe*",
        "cloudwatch:Get*",
        "cloudwatch:List*",
        "codedeploy:BatchGet*",
        "codedeploy:List*",
        "cur:DescribeReportDefinitions",
        "directconnect:Describe*",
        "dynamodb:Describe*",
        "dynamodb:List*",
        "ec2:Describe*",
        "ecs:Describe*",
        "ecs:List*",
        "eks:DescribeCluster",
        "eks:ListClusters",
        "elasticache:Describe*",
        "elasticache:List*",
        "elasticfilesystem:DescribeAccessPoints",
        "elasticfilesystem:DescribeFileSystems",
        "elasticfilesystem:DescribeTags",
        "elasticloadbalancing:Describe*",
        "elasticmapreduce:Describe*",
        "elasticmapreduce:List*",
        "es:DescribeElasticsearchDomains",
        "es:ListDomainNames",
        "es:ListTags",
        "events:CreateEventBus",
        "fsx:DescribeFileSystems",
        "fsx:ListTagsForResource",
        "health:DescribeAffectedEntities",
        "health:DescribeEventDetails",
        "health:DescribeEvents",
        "iam:ListAccountAliases",
        "kinesis:Describe*",
        "kinesis:List*",
        "lambda:List*",
        "logs:DeleteSubscriptionFilter",
        "logs:DescribeDeliveries",
        "logs:DescribeDeliverySources",
        "logs:DescribeLogGroups",
        "logs:DescribeLogStreams",
        "logs:DescribeSubscriptionFilters",
        "logs:FilterLogEvents",
        "logs:GetDeliveryDestination",
        "logs:PutSubscriptionFilter",
        "logs:TestMetricFilter",
        "network-firewall:DescribeLoggingConfiguration",
        "network-firewall:ListFirewalls",
        "oam:ListAttachedLinks",
        "oam:ListSinks",
        "organizations:Describe*",
        "organizations:List*",
        "rds:Describe*",
        "rds:List*",
        "redshift-serverless:ListNamespaces",
        "redshift:DescribeClusters",
        "redshift:DescribeLoggingStatus",
        "route53:List*",
        "s3:GetBucketLocation",
        "s3:GetBucketLogging",
        "s3:GetBucketNotification",
        "s3:GetBucketTagging",
        "s3:ListAllMyBuckets",
        "s3:PutBucketNotification",
        "ses:Get*",
        "ses:List*",
        "sns:GetSubscriptionAttributes",
        "sns:List*",
        "sns:Publish",
        "sqs:ListQueues",
        "ssm:GetServiceSetting",
        "ssm:ListCommands",
        "states:DescribeStateMachine",
        "states:ListStateMachines",
        "support:DescribeTrustedAdvisor*",
        "support:RefreshTrustedAdvisorCheck",
        "tag:GetResources",
        "tag:GetTagKeys",
        "tag:GetTagValues",
        "timestream:DescribeEndpoints",
        "wafv2:ListLoggingConfigurations",
        "xray:BatchGetTraces",
        "xray:GetTraceSummaries"
      ],
      "Effect": "Allow",
      "Resource": "*"
    }
  ]
}

AWS resource collection IAM policy

To use resource collection, you must attach AWS’s managed SecurityAudit Policy to your Datadog IAM role.

Notes:

  • Warning messages appear on the AWS integration tile in Datadog if you enable resource collection, but do not have the AWS Security Audit Policy attached to your Datadog IAM role.
  • To enable Datadog to collect account management resources from account.GetAlternateContact and account.GetContactInformation, you need to enable trusted access for AWS account management.
  • AWS Govcloud and AWS China accounts are not currently supported.
  • Enabling resource collection can also impact your AWS CloudWatch costs. To avoid these charges, disable Usage (AWS/Usage) metrics in the Metric Collection tab of the Datadog AWS integration page.