Aperçu

Ce guide vous accompagne dans l’intégration d’un compte Amazon Web Services (AWS) avec Datadog en utilisant le modèle CloudFormation de Datadog. Après avoir terminé la configuration, vous pouvez activer des intégrations de services AWS individuelles, installer l’agent Datadog sur des instances EC2 pour une visibilité approfondie et configurer le transfert de journaux.

Prérequis

Avant de commencer, assurez-vous de disposer d’un compte AWS. Le modèle CloudFormation crée un rôle IAM et une politique associée, permettant au compte AWS de Datadog d’effectuer des appels API à votre compte AWS pour collecter et transmettre des données. Votre utilisateur AWS doit disposer des autorisations IAM suivantes pour exécuter le modèle :

  • 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:TagRole

  • 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

  • s3:PutLifecycleConfiguration

  • secretsmanager:CreateSecret

  • secretsmanager:DeleteSecret

  • secretsmanager:GetSecretValue

  • secretsmanager:PutSecretValue

  • serverlessrepo:CreateCloudFormationTemplate

Configurer

  1. Allez à la page de configuration d’intégration AWS dans Datadog et cliquez sur Add AWS Account.
  2. Configurez les paramètres de l’intégration sous l’option Automatically using CloudFormation.
    1. Sélectionnez les régions AWS à intégrer.
    2. Ajoutez votre clé API Datadog.
    3. Optionnellement, envoyez des journaux et d’autres données à Datadog avec le Lambda Datadog Forwarder.
    4. Optionnellement, activez Cloud Security Misconfigurations pour analyser votre environnement cloud, vos hôtes et vos conteneurs pour des erreurs de configuration et des risques de sécurité.
  3. Cliquez sur Launch CloudFormation Template. Cela ouvre la Console AWS et charge la pile CloudFormation. Tous les paramètres sont remplis en fonction de vos sélections dans le formulaire Datadog précédent, donc vous n’avez pas besoin de les modifier sauf si vous le souhaitez. Remarque: Le paramètre DatadogAppKey permet à la pile CloudFormation d’effectuer des appels API à Datadog pour ajouter et modifier la configuration Datadog pour ce compte AWS. La clé est générée automatiquement et liée à votre compte Datadog.
  4. Cochez les cases requises d’AWS et cliquez sur Create stack. Cela lance le processus de création de la pile Datadog ainsi que trois piles imbriquées. Cela peut prendre plusieurs minutes. Assurez-vous que la pile est créée avec succès avant de continuer.
  5. Après la création de la pile, retournez à la tuile d’intégration AWS dans Datadog et cliquez sur Ready!
  6. Attendez jusqu’à 10 minutes pour que les données commencent à être collectées, puis consultez le tableau de bord vue d’ensemble AWS pour voir les métriques envoyées par vos services et infrastructures AWS :
    Le tableau de bord vue d'ensemble AWS dans le compte Datadog. À gauche se trouve le logo AWS et un graphique d'événements AWS indiquant 'Aucune entrée correspondante trouvée'. Au centre se trouvent des graphiques liés aux volumes EBS avec des données numériques affichées et une carte thermique montrant des données cohérentes. À droite se trouvent des graphiques liés aux ELB montrant des données numériques ainsi qu'un graphique de séries temporelles affichant des pics de données provenant de trois sources.

Pour configurer plusieurs comptes à la fois, utilisez l’API, l’AWS CLI ou Terraform. Pour plus d’informations, consultez le guide Datadog-Amazon CloudFormation.

Remarque : Le modèle CloudFormation de Datadog ne prend en charge que la création et la suppression de ses ressources définies. Consultez Mettre à jour votre modèle de pile pour des conseils sur l’application des mises à jour à votre pile.

À quoi s’attendre après la configuration

Après que l’intégration est configurée avec succès, les données commencent à apparaître dans Datadog selon la chronologie suivante :

  • Métriques : Apparaissent en environ 10 minutes avec le polling API, ou 2-3 minutes avec CloudWatch Metric Streams. Tous les services ne rapportent pas à la même cadence, donc un tableau de bord partiellement peuplé pendant la première heure est normal.
  • Tags : Les tags des ressources AWS peuvent prendre un temps supplémentaire à se propager. Les modifications des tags dans AWS peuvent prendre de 15 minutes à plusieurs heures pour se refléter dans Datadog.
  • Ressources : Découvertes lors du prochain cycle de crawl des ressources après la configuration.
  • Journaux : Nécessite une configuration séparée. Voir Envoyer des journaux pour les instructions de configuration.
Datadog ne remplit pas les données métriques historiques d'avant l'activation de l'intégration. Les métriques commencent à circuler à partir du moment où l'intégration est configurée avec succès.

Configuration

Activer les intégrations pour les services AWS individuels

Voir la page des intégrations pour une liste complète des sous-intégrations disponibles. Beaucoup de ces intégrations sont installées par défaut lorsque Datadog reconnaît des données provenant de votre compte AWS.

Utilisez l’onglet Metric Collection sur la page d’intégration AWS pour configurer les services dont l’intégration Datadog collecte les métriques.

Ajouter des régions

Sous l’onglet General sur la page d’intégration AWS, vous pouvez contrôler les régions AWS où Datadog collecte des métriques, des événements CloudWatch et des ressources.

Envoyer des journaux

Il existe deux façons d’envoyer des journaux de service AWS à Datadog :

  • Destination Amazon Data Firehose : Recommandé pour les journaux CloudWatch à fort volume.
  • Fonction Lambda Forwarder : Nécessaire pour les traces, les métriques améliorées ou les métriques personnalisées des fonctions Lambda. Également recommandé pour les journaux provenant de S3 ou d’autres ressources qui ne peuvent pas être diffusées directement vers Amazon Data Firehose.

Voir Activer la journalisation pour votre service AWS pour les instructions de configuration.

Validation

Une fois que vous avez activé les journaux, trouvez-les dans le Log Explorer en utilisant soit les facettes source ou service du panneau de facettes, comme cet exemple de S3 :

La page Log Explorer du compte Datadog. À gauche, l'image affiche les facettes Source et Service, toutes deux cochées avec 's3'. À droite, certaines entrées de journal sont affichées sous forme de liste.

Obtenez plus de la plateforme Datadog

Visibilité approfondie avec l’agent Datadog sur EC2

Par défaut, l’intégration AWS de Datadog explore l’API CloudWatch pour les métriques fournies par AWS, mais vous pouvez obtenir une visibilité encore plus approfondie sur vos instances EC2 avec l’agent Datadog. L’agent est un démon léger qui rapporte des métriques et des événements, et peut également être configuré pour les journaux et les traces. La section Installation de l’Agent de l’application Datadog fournit des instructions pour installer l’Agent sur une grande variété de systèmes d’exploitation. De nombreux systèmes d’exploitation (par exemple, Amazon Linux) ont des commandes d’installation en une étape que vous pouvez exécuter depuis le terminal de l’instance pour installer l’Agent :

La section « Agent » de l'onglet « Intégrations » dans Datadog. À gauche, une liste des systèmes d'exploitation pris en charge pour l'Agent Datadog est affichée. 'Amazon Linux' est mis en évidence dans cette liste. À droite, est affiché « Utilisez notre installation facile en une étape ». La commande pour installer l'Agent est affichée en dessous, avec la section DD_API_KEY obfusquée.

Une fois l’Agent installé, il est représenté graphiquement dans le [Infrastructure List] avec une icône d’os :

La liste d'infrastructure montrant deux hôtes sous forme de liste. Les deux hôtes affichent l'icône AWS pour l'intégration AWS et « aws » affiché dans une boîte bleue pour montrer qu'ils sont associés à l'intégration AWS. Un hôte affiche également une icône d'os et des boîtes bleues pour « ntp » et « system ».

La capture d’écran ci-dessus montre l’hôte avec l’Agent Datadog rapportant des données des vérifications System et NTP. La vérification System fournit des métriques liées au CPU, à la mémoire, au système de fichiers et à l’I/O, offrant des informations supplémentaires sur l’hôte. Vous pouvez activer des integrations supplémentaires pour adapter votre configuration à votre environnement et à votre cas d’utilisation, ou utiliser également DogStatsD pour envoyer des métriques personnalisées directement à Datadog.

Consultez la FAQ sur l’installation de l’Agent Datadog sur des instances cloud pour en savoir plus sur les avantages de cette méthode.

Utilisation de l’Agent Datadog avec Amazon Container Services

Pour les environnements conteneurisés, vous pouvez utiliser l’Agent Datadog, que vous gériez vos instances ou que vous utilisiez Fargate pour un environnement sans serveur.

ECS avec EC2 launch type

Utilisez la documentation Amazon ECS pour exécuter l’Agent Docker Datadog sur les instances EC2 de votre cluster ECS. Consultez la Amazon ECS Data Collection documentation pour voir les métriques et événements signalés à votre compte Datadog.

ECS avec Fargate launch type

Utilisez la Amazon ECS on AWS Fargate documentation pour exécuter l’Agent en tant que conteneur dans la même définition de tâche que votre application. Remarque : La version 6.1.1 ou supérieure de l’Agent Datadog est nécessaire pour tirer pleinement parti de l’intégration Fargate.

AWS Batch avec Fargate orchestration type

Utilisez la Amazon ECS on AWS Fargate for AWS Batch documentation pour exécuter l’Agent en tant que conteneur dans la même définition de tâche AWS Batch que votre application. Remarque : La version 6.1.1 ou supérieure de l’Agent Datadog est nécessaire pour tirer pleinement parti de l’intégration Fargate.

EKS

Aucune configuration spécifique n’est nécessaire pour Amazon Elastic Kubernetes Service (EKS), comme mentionné dans la Kubernetes Distributions documentation. Utilisez la dedicated Kubernetes documentation pour déployer l’Agent dans votre cluster EKS.

EKS avec Fargate

Étant donné que les pods Fargate sont gérés par AWS, ils excluent les vérifications système basées sur l’hôte comme le CPU et la mémoire. Pour collecter des données de vos pods AWS Fargate, utilisez la Amazon EKS on AWS Fargate documentation pour exécuter l’Agent en tant que sidecar de votre pod d’application avec un contrôle d’accès basé sur les rôles (RBAC) personnalisé. Remarque : Cela nécessite la version 7.17 ou supérieure de l’Agent Datadog.

EKS Anywhere

Référez-vous à la documentation relative à EKS Anywhere pour vos clusters Kubernetes sur site.

Créer des ressources Datadog supplémentaires

En plus d’utiliser l’interface Datadog ou l’API, vous pouvez créer de nombreuses Datadog resources avec le CloudFormation Registry. Pour la visibilité et le dépannage, utilisez des dashboards pour afficher des données clés, appliquer des Functions et trouver des Metric Correlations.

Pour être informé de tout comportement indésirable ou inattendu dans votre compte, créez des monitors. Les moniteurs évaluent constamment les données signalées dans votre compte et envoient des Notifications pour s’assurer que les bonnes informations parviennent aux bons membres de l’équipe. Consultez la List of Notification Integrations pour toutes les manières de notifier votre équipe.

Sans serveur

Pour surveiller les fonctions AWS Lambda avec Datadog, consultez Serverless pour des instructions sur l’instrumentation de votre application, l’installation des Serverless Libraries and Integrations, la mise en œuvre du distributed tracing with serverless applications ou le troubleshooting serverless issues.

APM

Pour collecter des traces distribuées de vos applications et services AWS, utilisez l’Agent Datadog avec APM. Pour les fonctions AWS Lambda, instrumentez avec l’Datadog Lambda Extension. Consultez la documentation APM pour des détails sur l’analyse des données de performance des applications.

Vous pouvez également utiliser Watchdog, une fonctionnalité algorithmique pour les performances APM et les métriques d’infrastructure, pour détecter automatiquement et être informé des problèmes potentiels d’application.

Sécurité

Cloud SIEM

Consultez Getting Started with Cloud SIEM pour évaluer vos journaux par rapport aux Log Detection Rules prêtes à l’emploi. Ces règles sont personnalisables, et lorsque des menaces sont détectées, elles génèrent des signaux de sécurité accessibles dans le Security Signals Explorer. Utilisez Notification Rules pour configurer les préférences de notification sur plusieurs règles.

Mauvaises configurations de la sécurité cloud

Utilisez le guide Setting Up Cloud Security Misconfigurations pour détecter et évaluer les mauvaises configurations dans votre environnement cloud. Les données de configuration des ressources sont évaluées par rapport aux règles de conformité Cloud et Infrastructure prêtes à l’emploi pour signaler les techniques d’attaque et les mauvaises configurations potentielles.

Dépannage

Si vous rencontrez l’erreur Datadog is not authorized to perform sts:AssumeRole, consultez sa page de dépannage dédiée troubleshooting page. Pour tout autre problème, consultez le AWS integration troubleshooting guide.

Lectures complémentaires