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.

Configuration

Installation

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

Configuration

  1. Dans le carré d’intégration AWS, accédez à l’onglet Configuration et vérifiez que l’option EC2 est cochée sous Limit metric collection by AWS Service.

  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/AWS 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 Optionally limit metrics collection de votre carré d’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 dans le carré d’intégration AWS :

Désactivation automatique AWS EC2

Installer l’Agent avec AWS Systems Manager

Suivez les étapes ci-dessous pour installer l’Agent Datadog sur une instance 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 AWS EC2.

Parameter Store

Dans le Parameter store, créez un paramètre avec 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.
  • Valeur : votre clé d’API Datadog

Gestionnaire de systèmes

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 utilisez le site américain de Datadog, utilisez le fichier dd-agent-install-us-site.json après y avoir spécifié votre région AWS à la place de <AWS_REGION> sous runCommand (p. ex., us-east-1). Si vous utilisez 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 montrant le statut s’affiche alors. Patientez jusqu’à la fin, puis vérifiez la liste d’infrastructures dans Datadog.

Collecte de logs

Utilisez l’Agent Datadog ou un autre log shipper pour envoyer vos logs vers 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é.

Remarque : 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.

Checks de service

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

Dépannage

Besoin d’aide ? Contactez l’assistance Datadog.

Pour aller plus loin