Amazon EC2

Présentation

Amazon Elastic Compute Cloud (Amazon EC2) est un service Web qui fournit une capacité de calcul adaptative dans le cloud. Ce service est conçu pour faciliter le cloud computing à l’échelle du Web pour les développeurs.

Activez cette intégration pour visualiser dans Datadog toutes vos métriques EC2 ainsi que des événements supplémentaires, tels que des maintenances planifiées.

Formule et utilisation

Liste des infrastructures

Si vous ne l’avez pas déjà fait, configurez d’abord l’intégration Amazon Web Services.

Dépannage de la solution Browser

  1. Sur la page de l’intégration AWS, vérifiez que EC2 est activé dans l’onglet Metric Collection.

  2. Ajoutez les autorisations requises suivantes à votre stratégie IAM Datadog afin de recueillir des métriques Amazon EC2. Pour en savoir plus, consultez la section relative aux stratégies EC2 de la documentation AWS.

    Autorisation AWSDescription
    ec2:DescribeInstanceStatusUtilisé par l’intégration ELB pour assurer l’intégrité d’une l’instance et par l’intégration EC2 pour décrire l’intégrité de toutes les instances.
    ec2:DescribeSecurityGroupsAjoute des tags personnalisés et des noms SecurityGroup aux instances EC2.
    ec2:DescribeInstancesAjoute des tags aux instances EC2 et aux métriques EC2 CloudWatch.
  3. Installez l’intégration Datadog/Amazon EC2.

Remarque : si vous souhaitez surveiller un sous-ensemble de vos instances EC2 avec Datadog, appliquez un tag AWS, comme datadog:true, à ces instances EC2. Ajoutez ensuite ce tag dans la zone de texte Limit metric collection to specific resources de l’onglet Metric Collection sur la page de votre intégration Datadog/AWS.

Désactivation automatique pour EC2

En cas d’arrêt manuel d’instances EC2 et de résiliation d’instances déclenchée par la mise à l’échelle automatique d’AWS, Datadog peut désactiver de façon proactive des monitors en fonction des statuts des hosts fournis par l’API CloudWatch. Les instances EC2 automatiquement désactivées sont énumérées sur la page Monitor Downtime lorsque vous cochez l’option Show automatically muted hosts.

Sachez que l’intégration EC2 doit être installée pour activer la désactivation automatique. Si la collecte de métriques est limitée aux hosts avec des tags, seules les instances correspondant aux tags sont automatiquement désactivées.

Pour désactiver les monitors lors des arrêts planifiés de l’instance EC2, cochez la case EC2 automuting sur le page de l’‘intégration AWS :

Option Automuting d'Amazon EC2

Installer l’Agent avec AWS Systems Manager (SSM)

Suivez les étapes ci-dessous pour installer l’Agent Datadog sur des instances EC2 à l’aide d’AWS Systems Manager. Consultez la section Pourquoi installer l’Agent Datadog sur mes instances cloud ? pour découvrir les avantages de l’installation de l’Agent sur vos instances Amazon EC2.

Installation de l’Agent via l’IU Amazon Systems Manager (recommandé)

  1. Configurez le rôle IAM sur vos instances EC2 afin d’activer l’autorisation AmazonSSMManagedInstanceCore.

  2. Accédez à l’onglet Document d’AWS SSM.

  3. Recherchez le terme datadog. Remarque : vous devrez peut-être changer de région depuis la barre de navigation supérieure de la console AWS Management afin de trouver le document adéquat.

  4. Choisissez le document Linux ou Windows en fonction de vos besoins.

  • Linux : datadog-agent-installation-linux
  • Windows : datadog-agent-installation-windows
  1. Remplissez les paramètres de commande.
  2. Sélectionnez les instances cibles sur lesquelles installer l’Agent.
  3. Cliquez sur Run.
  4. Patientez jusqu’à ce que le statut de confirmation s’affiche, puis consultez la liste d’infrastructure dans Datadog.

Méthodes d’installation personnalisées de l’Agent

Parameter Store

Dans le Parameter Store, créez un paramètre ayant les propriétés suivantes :

  • Name : dd-api-key-for-ssm
  • Description : (facultatif)
  • Type : SecureString
  • KMS key source : My current account
  • KMS Key ID : utilisez la valeur sélectionnée par défaut
  • Value : votre clé d’API Datadog
Documents

Dans le gestionnaire de systèmes, créez un document :

  • Name : dd-agent-install
  • Target type : (facultatif)
  • Document type : Command document
  • Content : JSON

Si vous êtes sur le site américain de Datadog, utilisez le fichier dd-agent-install-us-site.json, en prenant soin de spécifier votre région AWS à la place de <AWS_REGION> sous runCommand (p. ex., us-east-1). Si vous êtes sur le site européen de Datadog, utilisez plutôt le fichier dd-agent-install-eu-site.json.

Run Command

Sous Run Command, cliquez sur le bouton Run command et suivez les étapes ci-dessous :

  • Command document :
    • Cliquez sur la zone de recherche et sélectionnez Owner -> Owned by me.
    • Cliquez sur la case d’option correspondant à votre document.
    • Si besoin, sélectionnez le paramètre Document version.
  • Targets :
    • Sélectionnez l’instance EC2 à cibler.
  • Output options (facultatif) :
    • Cochez la case CloudWatch output pour loguer les éventuels problèmes.
  • *Autres sections (facultatif) :
    • Modifiez les autres sections en fonction de votre configuration si vous le souhaitez.

Cliquez sur le bouton Run ; une page de confirmation indiquant le statut s’affiche alors. Patientez jusqu’au statut final, puis vérifiez la liste d’infrastructure dans Datadog.

Collecte de logs

Utilisez l’Agent Datadog ou un autre shipper de logs pour envoyer vos logs à Datadog.

Données collectées

Métriques

aws.ec2.cpucredit_balance
(gauge)
Number of CPU credits that an instance has accumulated.
Shown as unit
aws.ec2.cpucredit_usage
(gauge)
Number of CPU credits consumed.
Shown as unit
aws.ec2.cpusurplus_credit_balance
(gauge)
The number of surplus credits that have been spent by an unlimited instance when its CPUCreditBalance value is zero.
Shown as unit
aws.ec2.cpusurplus_credits_charged
(gauge)
The number of spent surplus credits that are not paid down by earned CPU credits, and which thus incur an additional charge.
Shown as unit
aws.ec2.cpuutilization
(gauge)
Average percentage of allocated EC2 compute units that are currently in use on the instance.
Shown as percent
aws.ec2.cpuutilization.maximum
(gauge)
Maximum percentage of allocated EC2 compute units that are currently in use on the instance.
Shown as percent
aws.ec2.disk_read_bytes
(gauge)
Bytes read from all ephemeral disks available to the instance.
Shown as byte
aws.ec2.disk_read_ops
(gauge)
Completed read operations from all ephemeral disks available to the instance.
Shown as operation
aws.ec2.disk_write_bytes
(gauge)
Bytes written to all ephemeral disks available to the instance.
Shown as byte
aws.ec2.disk_write_ops
(gauge)
Completed write operations to all ephemeral disks available to the instance.
Shown as operation
aws.ec2.ebsbyte_balance
(gauge)
Percentage of throughput credits remaining in the burst bucket for Nitro-based instances.
Shown as percent
aws.ec2.ebsiobalance
(gauge)
Percentage of I/O credits remaining in the burst bucket for Nitro-based instances."
Shown as percent
aws.ec2.ebsread_bytes
(gauge)
Average bytes read from all EBS volumes attached to the instance for Nitro-based instances.
Shown as byte
aws.ec2.ebsread_bytes.sum
(gauge)
Total bytes read from all EBS volumes attached to the instance for Nitro-based instances.
Shown as byte
aws.ec2.ebsread_ops
(count)
Average completed read operations from all Amazon EBS volumes attached to the instance for Nitro-based instances.
Shown as operation
aws.ec2.ebsread_ops.sum
(count)
Total completed read operations from all Amazon EBS volumes attached to the instance for Nitro-based instances.
Shown as operation
aws.ec2.ebswrite_bytes
(gauge)
Average bytes written to all EBS volumes attached to the instance for Nitro-based instances.
Shown as byte
aws.ec2.ebswrite_bytes.sum
(gauge)
Total bytes written to all EBS volumes attached to the instance for Nitro-based instances.
Shown as byte
aws.ec2.ebswrite_ops
(gauge)
Average completed write operations to all EBS volumes attached to the instance for Nitro-based instances.
Shown as operation
aws.ec2.ebswrite_ops.sum
(gauge)
Total completed write operations to all EBS volumes attached to the instance for Nitro-based instances.
Shown as operation
aws.ec2.host_ok
(gauge)
1 if the instance's system status is ok.
aws.ec2.instance_age
(gauge)
Time since instance launch
Shown as second
aws.ec2.network_address_usage
(gauge)
The maximum number of NAU units for a VPC.
Shown as unit
aws.ec2.network_address_usage_peered
(gauge)
The maximum number of NAU units for a VPC and all of its peered VPCs.
Shown as unit
aws.ec2.network_in
(gauge)
Average number of bytes received on all network interfaces by the instance.
Shown as byte
aws.ec2.network_in.maximum
(gauge)
Maximum number of bytes received on all network interfaces by the instance.
Shown as byte
aws.ec2.network_out
(gauge)
Average number of bytes sent out on all network interfaces by the instance.
Shown as byte
aws.ec2.network_out.maximum
(gauge)
Maximum number of bytes sent out on all network interfaces by the instance.
Shown as byte
aws.ec2.network_packets_in
(gauge)
Number of packets received on all network interfaces by the instance
Shown as packet
aws.ec2.network_packets_out
(gauge)
Number of packets sent out on all network interfaces by the instance
Shown as packet
aws.ec2.status_check_failed
(gauge)
1 if one of the status checks failed.
aws.ec2.status_check_failed_instance
(gauge)
0 if the instance has passed the EC2 instance status check.
aws.ec2.status_check_failed_system
(gauge)
0 if the instance has passed the EC2 system status check.

Chacune des métriques récupérées à partir d’AWS se voit assigner les mêmes tags que ceux qui apparaissent dans la console AWS, y compris, mais sans s’y limiter, le hostname et les groupes de sécurité.

Remarques :

  • La métrique aws.ec2.instance_age n’est pas recueillie par défaut avec l’intégration Datadog/EC2. Contactez l’assistance Datadog pour activer la collecte de cette métrique.
  • La métrique aws.ec2.host_ok est recueillie par défaut, même si vous désactivez la collecte de métriques pour l’intégration Amazon EC2. Elle peut entraîner l’affichage de hosts inattendus dans la liste d’infrastructure. Pour masquer ces hosts, appliquez un tag AWS, comme datadog:true, à ces instances EC2. Ajoutez ensuite ce tag dans la zone de texte Limit metric collection to specific resources de l’onglet Metric Collection sur la page de votre intégration Datadog/AWS.

Aide

aws.ec2.host_status
Renvoie les statuts de votre EC2 tels qu’indiqués par la console AWS. Renvoie CRITICAL en cas de problème avec votre instance. Renvoie UNKNOWN lorsque AWS ne dispose pas de suffisamment de données pour exécuter un check de statut. Renvoie OK lorsque votre instance est en cours d’exécution ou est fermée correctement.
Statuses: ok, critical, unknown

Fonctionnalités de surveillance prêtes à l’emploi

L’intégration Amazon EC2 propose des fonctionnalités de surveillance prêtes à l’emploi vous permettant de surveiller et d’optimiser vos performances.

Dépannage

Besoin d’aide ? Contactez l’assistance Datadog.

Pour aller plus loin