Créer des alarmes qui arrêtent, finissent, redémarrent ou récupèrent une instance - Amazon Elastic Compute Cloud

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Créer des alarmes qui arrêtent, finissent, redémarrent ou récupèrent une instance

À l'aide des actions CloudWatch d'alarme Amazon, vous pouvez créer des alarmes qui arrêtent, mettent fin, redémarrent ou restaurent automatiquement vos instances. Vous pouvez utiliser les actions d’arrêt ou de terminaison pour vous permettre d’économiser de l’argent quand vous n’avez plus besoin qu’une instance s’exécute. De même, les actions de redémarrage et de récupération vous permettent de redémarrer automatiquement ces instances ou de les récupérer sur un nouveau matériel en cas de déficience du nouveau matériel.

Note

Pour les informations de facturation et de tarification d'Amazon CloudWatch Alarmes, consultez la section CloudWatch facturation et coûts dans le guide de CloudWatch l'utilisateur Amazon.

Le rôle AWSServiceRoleForCloudWatchEvents lié au service permet d' AWS effectuer des actions d'alarme en votre nom. La première fois que vous créez une alarme dans l'API AWS Management Console AWS CLI, le ou l'API IAM, le rôle lié au service est CloudWatch créé pour vous.

Il existe un certain nombre de scénarios dans lesquels vous pourriez vouloir arrêter ou terminer automatiquement votre instance. Par exemple, vous pourriez avoir des instances dédiées aux tâches de traitement différé de la paie ou de calcul scientifique qui s’exécutent pendant une durée, puis achèvent leur travail. Plutôt que de laisser ces instances demeurer inactives (et d’accumuler les frais), vous pouvez les arrêter ou les terminer, ce qui peut vous aider à économiser de l’argent. La principale différence entre l’utilisation des actions d’alarme « stop » et « terminate » est que vous pouvez facilement démarrer une instance arrêtée si vous devez l’exécuter à nouveau ultérieurement, et que vous pouvez conserver les mêmes ID d’instance et volume racine. Cependant, vous ne pouvez pas démarrer une instance résiliée. Vous devez à la place lancer une nouvelle instance. Lorsqu’une instance est arrêtée ou résiliée, les données sur les volumes de stockage d’instances sont perdues.

Vous pouvez ajouter les actions d'arrêt, de résiliation, de redémarrage ou de restauration à toute alarme définie sur une métrique Amazon EC2 par instance, y compris les mesures de surveillance de base et détaillées fournies par Amazon CloudWatch (dans l'AWS/EC2espace de noms), ainsi que toutes les mesures personnalisées incluant la InstanceId dimension, à condition que sa valeur fasse référence à une instance Amazon EC2 en cours d'exécution valide.

Prise en charge de la console

Vous pouvez créer des alarmes à l'aide de la console Amazon EC2 ou de la CloudWatch console. Les procédures décrites dans cette documentation utilisent la console Amazon EC2. Pour les procédures utilisant la CloudWatch console, consultez la section Créer des alarmes qui arrêtent, mettent fin, redémarrent ou restaurent une instance dans le guide de CloudWatch l'utilisateur Amazon.

Autorisations

Vous devez disposer de l’autorisation iam:CreateServiceLinkedRole pour créer ou modifier une alarme exécutant des actions d’alarme EC2. Une fonction de service est un rôle IAM qu’un service endosse pour accomplir des actions en votre nom. Un administrateur IAM peut créer, modifier et supprimer une fonction du service à partir d’IAM. Pour plus d’informations, consultez Création d’un rôle pour la délégation d’autorisations à un Service AWS dans le Guide de l’utilisateur IAM.

Ajouter des actions d'arrêt aux CloudWatch alarmes Amazon

Vous pouvez créer une alarme qui arrête une instance Amazon EC2 quand un certain seuil a été atteint. Par exemple, vous pouvez exécuter des instances de développement ou de test, et, à l’occasion, oublier de les fermer. Vous pouvez créer une alarme qui est déclenchée quand le pourcentage moyen d’utilisation de l’UC a été inférieur à 10 % pendant 24 heures, indiquant que l’instance est inactive et n’est plus en cours d’utilisation. Vous pouvez ajuster le seuil, la durée et la période en fonction de vos besoins ; de plus, vous pouvez ajouter une notification Amazon Simple Notification Service (Amazon SNS) de façon à recevoir un courrier électronique quand l’alarme est déclenchée.

Les instances qui utilisent un volume Amazon EBS comme périphérique racine peuvent être arrêtées ou résiliées, tandis que celles qui recourent au stockage d’instance comme périphérique racine peuvent uniquement être résiliées. Les données stockées sur des volumes de stockage d’instance sont perdues lorsque l’instance est résiliée ou arrêtée.

Pour créer une alarme afin d’arrêter une instance inactive (console Amazon EC2)
  1. Ouvrez la console Amazon EC2 à l’adresse https://console.aws.amazon.com/ec2/.

  2. Dans le panneau de navigation, sélectionnez Instances.

  3. Sélectionnez l'instance et choisissez Actions, Surveiller et dépanner, Gérer les CloudWatch alarmes.

    Vous pouvez également sélectionner le signe plus ( Plus sign. ) dans la colonne Alarm status (Statut de l’alarme) .

  4. Sur la page Gérer les CloudWatch alarmes, procédez comme suit :

    1. Sélectionnez Create an alarm (Créer une alarme).

    2. Pour recevoir un e-mail lorsque l’alarme est déclenchée, sélectionnez une rubrique de Amazon SNS existante pour Alarm notification (Notification d’alarme). Vous devez d’abord créer une rubrique Amazon SNS à l’aide de la console Amazon SNS. Pour plus d'informations, consultez la section Utilisation d'Amazon SNS pour la messagerie application-to-person (A2P) dans le manuel du développeur Amazon Simple Notification Service.

    3. Activer l’option Alarm action (Action d’alarme), puis sélectionnez Stop (Arrêter).

    4. Pour Group samples by (Regrouper les échantillons par) et Type of data to sample (Type de données à échantillonner), sélectionnez une statistique et une métrique. Dans cet exemple, sélectionnez Average (Moyenne) et CPU utilization (Utilisation de l’UC).

    5. Pour Alarm When (Alarme Quand) et Percent (Pourcentage), spécifiez le seuil de la métrique. Dans cet exemple, spécifiez <= et 10 pour cent.

    6. Pour Consecutive period (Période consécutive) et Period (Période), spécifiez la période d’évaluation de l’alarme. Dans cet exemple, spécifiez 1 période consécutive de 5 Minutes.

    7. Amazon crée CloudWatch automatiquement un nom d'alarme pour vous. Pour modifier le nom, saisissez un nouveau nom dans Alarm name (Nom de l’alarme). Les noms d’alarme doivent contenir uniquement des caractères ASCII.

      Note

      Vous pouvez régler la configuration de l’alarme en fonction de vos propres besoins avant de créer l’alarme, ou pouvez la modifier ultérieurement. Les paramètres de configuration incluent ceux de métrique, de seuil, de durée, d’action et de notification. Cependant, après avoir créé une alarme, vous ne pourrez pas modifier son nom par la suite.

    8. Sélectionnez Créer.

Ajouter des actions de résiliation aux CloudWatch alarmes Amazon

Vous pouvez créer une alarme qui finit automatiquement une instance EC2 quand un certain seuil a été atteint (aussi longtemps que la protection de fin n’est pas activée pour l’instance). Par exemple, il se peut que vous vouliez finir une instance quand elle a terminé son travail et que vous n’avez pas besoin de l’instance à nouveau. Si vous souhaitez utiliser l’instance par la suite, vous devez arrêter l’instance, et non y mettre fin. Les données stockées sur des volumes de stockage d’instance sont perdues lorsque l’instance est résiliée. Pour plus d’informations sur l’activation et la désactivation de la protection contre la résiliation pour une instance, consultez Activer la protection de la résiliation.

Pour créer une alarme afin de résilier une instance inactive (console Amazon EC2)
  1. Ouvrez la console Amazon EC2 sur https://console.aws.amazon.com/ec2/.

  2. Dans le panneau de navigation, sélectionnez Instances.

  3. Sélectionnez l'instance et choisissez Actions, Surveiller et dépanner, Gérer les CloudWatch alarmes.

    Vous pouvez également sélectionner le signe plus ( Plus sign. ) dans la colonne Alarm status (Statut de l’alarme) .

  4. Sur la page Gérer les CloudWatch alarmes, procédez comme suit :

    1. Sélectionnez Create an alarm (Créer une alarme).

    2. Pour recevoir un e-mail lorsque l’alarme est déclenchée, sélectionnez une rubrique de Amazon SNS existante pour Alarm notification (Notification d’alarme). Vous devez d’abord créer une rubrique Amazon SNS à l’aide de la console Amazon SNS. Pour plus d'informations, consultez la section Utilisation d'Amazon SNS pour la messagerie application-to-person (A2P) dans le manuel du développeur Amazon Simple Notification Service.

    3. Activer l’option Alarm action (Action d’alarme), puis sélectionnez Terminate (Résilier).

    4. Pour Group samples by (Regrouper les échantillons par) et Type of data to sample (Type de données à échantillonner), sélectionnez une statistique et une métrique. Dans cet exemple, sélectionnez Average (Moyenne) et CPU utilization (Utilisation de l’UC).

    5. Pour Alarm When (Alarme Quand) et Percent (Pourcentage), spécifiez le seuil de la métrique. Dans cet exemple, spécifiez => et 10 pour cent.

    6. Pour Consecutive period (Période consécutive) et Period (Période), spécifiez la période d’évaluation de l’alarme. Dans cet exemple, spécifiez 24 périodes consécutives de 1 heure.

    7. Amazon crée CloudWatch automatiquement un nom d'alarme pour vous. Pour modifier le nom, saisissez un nouveau nom dans Alarm name (Nom de l’alarme). Les noms d’alarme doivent contenir uniquement des caractères ASCII.

      Note

      Vous pouvez régler la configuration de l’alarme en fonction de vos propres besoins avant de créer l’alarme, ou pouvez la modifier ultérieurement. Les paramètres de configuration incluent ceux de métrique, de seuil, de durée, d’action et de notification. Cependant, après avoir créé une alarme, vous ne pourrez pas modifier son nom par la suite.

    8. Sélectionnez Créer.

Ajouter des actions de redémarrage aux CloudWatch alarmes Amazon

Vous pouvez créer une CloudWatch alarme Amazon qui surveille une instance Amazon EC2 et redémarre automatiquement l'instance. L’action d’alarme de redémarrage est recommandée pour les défaillances de vérification de l’état d’instance (par opposition à l’action d’alarme de récupération, qui convient aux défaillances de la vérification de l’état du système). Le redémarrage d’une instance est similaire à celui d’un système d’exploitation. Dans la plupart des cas, il suffit de quelques minutes pour redémarrer votre instance. Lorsque vous redémarrez une instance, elle reste sur le même hôte physique, ce qui signifie qu’elle conserve son nom DNS public, son adresse IP privée et toutes les données se trouvant sur ses volumes de stockage d’instance.

Le redémarrage d’une instance ne déclenche pas de nouvelle période de facturation d’instance (avec frais d’une minute minimum), contrairement à l’arrêt, puis au redémarrage d’une instance. Les données des volumes de stockage d’instances sont conservées lorsque l’instance est redémarrée. Les volumes de stockage d’instances doivent être remontés dans le système de fichiers après un redémarrage. Pour plus d’informations, consultez Redémarrer votre instance.

Important

Pour prévenir toute condition de concurrence entre les actions de redémarrage et de récupération, évitez de définir le même nombre de périodes d’évaluation pour une alarme de redémarrage et une alarme de récupération. Nous vous recommandons de définir des alarmes de redémarrage sur trois périodes d’évaluation d’une minute chacune. Pour plus d'informations, consultez la section Évaluation d'une alarme dans le guide de CloudWatch l'utilisateur Amazon.

Pour créer une alarme afin de redémarrer une instance (console Amazon EC2)
  1. Ouvrez la console Amazon EC2 à l’adresse https://console.aws.amazon.com/ec2/.

  2. Dans le panneau de navigation, sélectionnez Instances.

  3. Sélectionnez l'instance et choisissez Actions, Surveiller et dépanner, Gérer les CloudWatch alarmes.

    Vous pouvez également sélectionner le signe plus ( Plus sign. ) dans la colonne Alarm status (Statut de l’alarme) .

  4. Sur la page Gérer les CloudWatch alarmes, procédez comme suit :

    1. Sélectionnez Create an alarm (Créer une alarme).

    2. Pour recevoir un e-mail lorsque l’alarme est déclenchée, sélectionnez une rubrique de Amazon SNS existante pour Alarm notification (Notification d’alarme). Vous devez d’abord créer une rubrique Amazon SNS à l’aide de la console Amazon SNS. Pour plus d'informations, consultez la section Utilisation d'Amazon SNS pour la messagerie application-to-person (A2P) dans le manuel du développeur Amazon Simple Notification Service.

    3. Activer l’option Alarm action (Action d’alarme), puis sélectionnez Reboot (Redémarrer).

    4. Pour Group samples by (Regrouper les échantillons par) et Type of data to sample (Type de données à échantillonner), sélectionnez une statistique et une métrique. Dans cet exemple, sélectionnez Average (Moyenne) et Status check failed: instance (Échec du contrôle de statut : instance).

    5. Pour Consecutive period (Période consécutive) et Period (Période), spécifiez la période d’évaluation de l’alarme. Pour cet exemple, entrez 3 périodes consécutives de 5 minutes.

    6. Amazon crée CloudWatch automatiquement un nom d'alarme pour vous. Pour modifier le nom, saisissez un nouveau nom dans Alarm name (Nom de l’alarme). Les noms d’alarme doivent contenir uniquement des caractères ASCII.

    7. Sélectionnez Créer.

Ajouter des actions de restauration aux CloudWatch alarmes Amazon

Vous pouvez créer une CloudWatch alarme Amazon qui surveille une instance Amazon EC2. Si l'instance est altérée en raison d'une défaillance matérielle sous-jacente ou d'un problème nécessitant une AWS intervention pour être réparée, vous pouvez la récupérer automatiquement. Les instances mises hors service ne peuvent pas être récupérées. Une instance récupérée est identique à l'instance d'origine, y compris pour l'ID d'instance, les adresses IP privées, les adresses IP Elastic et toutes les métadonnées de l'instance.

CloudWatch vous empêche d'ajouter une action de restauration à une alarme qui se trouve sur une instance qui ne prend pas en charge les actions de restauration.

Lorsque l’alarme StatusCheckFailed_System est déclenchée et que l’action de récupération est initiée, vous en êtes averti par la rubrique Amazon SNS que vous avez choisie quand vous avez créé l’alarme et associé l’action de récupération. Lors de la récupération d’instance, l’instance est migrée pendant un redémarrage d’instance, et toutes les données en mémoire sont perdues. Lorsque le processus est terminé, les informations sont publiées dans la rubrique SNS que vous avez configurée pour l’alarme. Toutes les personnes abonnées à cette rubrique SNS reçoivent une notification par e-mail qui inclut le statut de la tentative de récupération et les éventuelles instructions supplémentaires. Vous remarquez un redémarrage d’instance sur l’instance récupérée.

Note

L’action de récupération ne peut être utilisée qu’avec StatusCheckFailed_System, pas avec StatusCheckFailed_Instance.

Les problèmes suivants peuvent entraîner l’échec des contrôles de statut de système :

  • Perte de connectivité réseau

  • Perte d’alimentation système

  • Problèmes logiciels sur un hôte physique

  • Problèmes matériels sur un hôte physique ayant un impact sur l’accessibilité du réseau

L'opération de récupération est prise en charge uniquement sur les instances présentant certaines caractéristiques. Pour plus d’informations, consultez Récupération de votre instance.

Si votre instance a une adresse IP publique, elle la conserve après la récupération.

Important

Pour prévenir toute condition de concurrence entre les actions de redémarrage et de récupération, évitez de définir le même nombre de périodes d’évaluation pour une alarme de redémarrage et une alarme de récupération. Nous vous recommandons de définir des alarmes de récupération sur deux périodes d’évaluation d’une minute chacune. Pour plus d'informations, consultez la section Évaluation d'une alarme dans le guide de CloudWatch l'utilisateur Amazon.

Pour créer une alarme afin de récupérer une instance (console Amazon EC2)
  1. Ouvrez la console Amazon EC2 à l’adresse https://console.aws.amazon.com/ec2/.

  2. Dans le panneau de navigation, sélectionnez Instances.

  3. Sélectionnez l'instance et choisissez Actions, Surveiller et dépanner, Gérer les CloudWatch alarmes.

    Vous pouvez également sélectionner le signe plus ( Plus sign. ) dans la colonne Alarm status (Statut de l’alarme) .

  4. Sur la page Gérer les CloudWatch alarmes, procédez comme suit :

    1. Sélectionnez Create an alarm (Créer une alarme).

    2. Pour recevoir un e-mail lorsque l’alarme est déclenchée, sélectionnez une rubrique de Amazon SNS existante pour Alarm notification (Notification d’alarme). Vous devez d’abord créer une rubrique Amazon SNS à l’aide de la console Amazon SNS. Pour plus d'informations, consultez la section Utilisation d'Amazon SNS pour la messagerie application-to-person (A2P) dans le manuel du développeur Amazon Simple Notification Service.

      Note

      Les utilisateurs doivent s’abonner à la rubrique SNS spécifiée pour recevoir des notifications par e-mail lorsque l’alarme se déclenche. Il reçoit Utilisateur racine d'un compte AWS toujours des notifications par e-mail lorsque des actions de restauration automatique d'instance se produisent, même si aucune rubrique SNS n'est spécifiée ou si l'utilisateur root n'est pas abonné à la rubrique SNS spécifiée.

    3. Activer l’option Alarm action (Action d’alarme), puis sélectionnez Recover (Récupérer).

    4. Pour Group samples by (Regrouper les échantillons par) et Type of data to sample (Type de données à échantillonner), sélectionnez une statistique et une métrique. Dans cet exemple, sélectionnez Average (Moyenne) et Status check failed: system (Échec du contrôle de statut : système).

    5. Pour Consecutive period (Période consécutive) et Period (Période), spécifiez la période d’évaluation de l’alarme. Pour cet exemple, entrez 2 périodes consécutives de 5 minutes.

    6. Amazon crée CloudWatch automatiquement un nom d'alarme pour vous. Pour modifier le nom, saisissez un nouveau nom dans Alarm name (Nom de l’alarme). Les noms d’alarme doivent contenir uniquement des caractères ASCII.

    7. Sélectionnez Créer.

Utilisez la CloudWatch console Amazon pour consulter l'historique des alarmes et des actions

Vous pouvez consulter l'historique des alarmes et des actions dans la CloudWatch console Amazon. Amazon CloudWatch conserve l'historique des alarmes et des actions des deux dernières semaines.

Pour consulter l'historique des alarmes et des actions déclenchées (CloudWatch console)
  1. Ouvrez la CloudWatch console à l'adresse https://console.aws.amazon.com/cloudwatch/.

  2. Dans le panneau de navigation, cliquez sur Alarms.

  3. Sélectionnez une alarme.

  4. L’onglet Détails affiche la transition d’état la plus récente, ainsi que les valeurs de date et de métrique.

  5. Choisissez l’onglet Historique pour afficher les entrées les plus récentes de l’historique.

Scénarios CloudWatch d'action d'alarme Amazon

Vous pouvez utiliser la console Amazon EC2 pour créer des actions d’alarme qui arrêtent ou finissent une instance Amazon EC2 quand certaines conditions sont satisfaites. Dans la capture d’écran suivante de la page de la console où vous avez défini les actions d’alarme, nous avons numéroté les paramètres. Nous avons également numéroté les paramètres des scénarios qui suivent afin de vous aider à créer les actions appropriées.

New console
Page Gérer les alarmes CloudWatch.
Old console
Boîte de dialogue de création d’alarme.

Scénario 1 : arrêter le développement inactif et tester les instances

Créez une alarme qui arrête une instance utilisée pour le développement ou le test de logiciels quand elle a été inactive pendant au moins une heure.

Paramètre Value

1

Arrêter

2

Maximum

3

CPU Utilization

4

<=

5

10 %

6

1

7

1 heure

Scénario 2 : arrêter les instances inactives

Créez une alarme qui arrête une instance et envoie un courrier électronique quand l’instance est inactive depuis 24 heures.

Paramètre Value

1

Arrêter et envoyer un e-mail

2

Moyenne

3

CPU Utilization

4

<=

5

5 %

6

24

7

1 heure

Scénario 3 : envoyer un e-mail relatif aux serveurs Web ayant un trafic inhabituellement élevé

Créez une alarme qui envoie un courrier électronique quand une instance dépasse 10 Go de trafic réseau sortant par jour.

Paramètre Value

1

E-mail

2

Somme

3

Réseau sortant

4

>

5

10 Go

6

24

7

1 heure

Scénario 4 : arrêter les serveurs Web avec un trafic inhabituellement élevé

Créez un alarme qui arrête une instance et envoie un SMS quand le trafic sortant excède 1 Go par heure.

Paramètre Value

1

Arrêter et envoyer un SMS

2

Somme

3

Réseau sortant

4

>

5

1 Go

6

1

7

1 heure

Scénario 5 : arrêter une instance déficiente

Créez une alarme qui arrête une instance après qu’elle a échoué à trois contrôles de statut consécutifs (exécutés à 5 minutes d’intervalle).

Paramètre Value

1

Arrêter

2

Moyenne

3

Échec du contrôle de du statut : Système

4

-

5

-

6

1

7

15 minutes

Scénario 6 : résilier les instances quand les tâches de traitement par batch sont terminés

Créez une alarme qui finit une instance exécutant des traitements par batch quand elle n’envoie plus de données de résultat.

Paramètre Value

1

Terminer

2

Maximum

3

Réseau sortant

4

<=

5

100,000 bytes

6

1

7

5 minutes