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
- Allez à la page de configuration d’intégration AWS dans Datadog et cliquez sur Add AWS Account.
- Configurez les paramètres de l’intégration sous l’option Automatically using CloudFormation.
- Sélectionnez les régions AWS à intégrer.
- Ajoutez votre clé API Datadog.
- Optionnellement, envoyez des journaux et d’autres données à Datadog avec le Lambda Datadog Forwarder.
- 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é.
- 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. - 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.
- Après la création de la pile, retournez à la tuile d’intégration AWS dans Datadog et cliquez sur Ready!
- 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 :
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 :
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 :
Une fois l’Agent installé, il est représenté graphiquement dans le [Infrastructure List] avec une icône d’os :
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
Documentation, liens et articles supplémentaires utiles: