AWSPremiumSupport-ChangeInstanceTypeIntelToAMD - AWS Systems Manager Référence du manuel d'automatisation

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.

AWSPremiumSupport-ChangeInstanceTypeIntelToAMD

Description

Le AWSPremiumSupport-ChangeInstanceTypeIntelToAMD runbook automatise les migrations des instances Amazon Elastic Compute Cloud (Amazon EC2) optimisées par Intel vers des types d'instances équivalents optimisés par AMD. Ce runbook prend en charge les instances à usage général (M), les instances à usage général burstable (T), les instances optimisées pour le calcul (C) et les instances optimisées pour la mémoire (R) créées sur le système Nitro. Ce runbook peut être utilisé sur des instances qui ne sont pas gérées par Systems Manager.

Pour réduire le risque potentiel de perte de données et de temps d'arrêt, le runbook vérifie le comportement d'arrêt de l'instance, si l'instance appartient à un groupe Amazon EC2 Auto Scaling, son état de santé et la disponibilité du type d'instance équivalent alimenté par AMD dans la même zone de disponibilité. Par défaut, ce runbook ne changera pas le type d'instance si des volumes de stockage d'instance sont attachés ou si l'instance fait partie d'une AWS CloudFormation pile. Si vous souhaitez modifier ce comportement, spécifiez yes l'un des AllowCloudFormationInstances paramètres AllowInstanceStoreInstances et.

Important

L'accès aux AWSPremiumSupport-* runbooks nécessite un abonnement Business + Support, Enterprise Support ou Unified Operations. Pour plus d'informations, voir Comparer les AWS Support forfaits.

Considérations

  • Nous vous recommandons de sauvegarder votre instance avant d'utiliser ce runbook.

  • Pour modifier le type d'instance, le runbook doit arrêter votre instance. Lorsqu'une instance est arrêtée, toutes les données stockées dans la RAM ou dans les volumes de stockage de l'instance sont perdues et l' IPv4 adresse publique automatique est libérée. Pour plus d’informations, consultez Arrêt et démarrage de votre instance.

  • Si vous ne spécifiez aucune valeur pour le TargetInstanceType paramètre, le runbook tente d'identifier l'instance AMD équivalente en termes de virtualisation CPUs et de mémoire au sein de la même famille d'instances. Le runbook se termine s'il n'est pas en mesure d'identifier un type d'instance AMD équivalent.

  • En utilisant DryRun cette option, vous pouvez capturer le type d'instance AMD équivalent et valider les exigences sans réellement modifier le type d'instance.

Exécuter cette automatisation (console)

Type de document

 Automatisation

Propriétaire

Amazon

Plateformes

LinuxmacOS, Windows

Paramètres

  • AutomationAssumeRole

    Type : Chaîne

    Description : (Facultatif) Le nom de ressource Amazon (ARN) du rôle Gestion des identités et des accès AWS (IAM) qui permet à Systems Manager Automation d'effectuer les actions en votre nom. Si aucun rôle n'est spécifié, Systems Manager Automation utilise les autorisations de l'utilisateur qui lance ce runbook.

  • Reconnaître

    Type : Chaîne

    Description : (Obligatoire) Entrez yes pour confirmer que votre instance cible sera arrêtée si elle est en cours d'exécution.

  • InstanceId

    Type : Chaîne

    Description : (Obligatoire) L'ID de l'instance Amazon EC2 dont vous souhaitez modifier le type.

  • TargetInstanceType

    Type : Chaîne

    Par défaut : automatique

    Description : (Facultatif) Le type d'instance AMD auquel vous souhaitez remplacer votre instance. La automatic valeur par défaut utilise le type d'instance équivalent en termes de virtuel CPUs et de mémoire. Par exemple, un m5.large serait remplacé par m5a.large.

  • AllowInstanceStoreInstances

    Type : Chaîne

    Valeurs valides : non | oui

    Par défaut : non

    Description : (Facultatif) Si vous le spécifiezyes, le runbook s'exécute sur des instances auxquelles des volumes de stockage d'instance sont attachés.

  • AllowCloudFormationInstances

    Type : Chaîne

    Valeurs valides : non | oui

    Par défaut : non

    Description : (Facultatif) S'il est défini suryes, le runbook s'exécute sur des instances faisant partie d'une CloudFormation pile.

  • AllowCrossGeneration

    Type : Chaîne

    Valeurs valides : non | oui

    Par défaut : non

    Description : (Facultatif) Si ce paramètre est défini suryes, le runbook tente de trouver le type d'instance AMD équivalent le plus récent au sein de la même famille d'instances.

  • DryRun

    Type : Chaîne

    Valeurs valides : non | oui

    Par défaut : non

    Description : (Facultatif) Si ce paramètre est défini suryes, le runbook renvoie le type d'instance AMD équivalent et valide les exigences de migration sans apporter de modifications au type d'instance.

  • SleepWait

    Type : Chaîne

    Par défaut : PT3 S

    Description : (Facultatif) Le temps que le runbook doit attendre avant de démarrer une nouvelle automatisation. La valeur que vous fournissez pour ce paramètre doit correspondre à la norme ISO 8601. Pour plus d'informations sur la création de chaînes ISO 8601, consultez Formatage des chaînes de date et d'heure pour Systems Manager.

Autorisations IAM requises

Le AutomationAssumeRole paramètre nécessite les actions suivantes pour utiliser correctement le runbook.

  • ssm:DescribeAutomationExecutions

  • ssm:GetAutomationExecution

  • ssm:StartAutomationExecution

  • ec2:GetInstanceTypesFromInstanceRequirements

  • ec2:DescribeInstanceAttribute

  • ec2:DescribeInstances

  • ec2:DescribeInstanceStatus

  • ec2:DescribeInstanceTypeOfferings

  • ec2:DescribeInstanceTypes

  • ec2:DescribeTags

  • ec2:ModifyInstanceAttribute

  • ec2:StartInstances

  • ec2:StopInstances

Étapes de document

  1. aws:assertAwsResourceProperty: confirme que le statut de l'instance Amazon EC2 cible est running pendingstopped, ou. stopping Dans le cas contraire, l'automatisation prend fin.

  2. aws:executeAwsApi: rassemble les propriétés de l'instance Amazon EC2 cible.

  3. aws:branch: répartit l'automatisation en fonction de l'état de l'instance Amazon EC2.

    1. Dans l'stoppedaffirmativestopping, l'automatisation s'exécute aws:waitForAwsResourceProperty jusqu'à ce que l'instance Amazon EC2 soit complètement arrêtée.

    2. Dans l'runningaffirmativepending, l'automatisation s'exécute aws:waitForAwsResourceProperty jusqu'à ce que l'instance Amazon EC2 passe les vérifications de statut.

  4. aws:assertAwsResourceProperty: confirme que l'instance Amazon EC2 ne fait pas partie d'un groupe Auto Scaling en vérifiant si la aws:autoscaling:groupName balise est appliquée.

  5. aws:executeAwsApi: rassemble les propriétés du type d'instance actuel pour trouver le type d'instance AMD équivalent.

  6. aws:assertAwsResourceProperty: confirme qu'aucun code AWS Marketplace produit n'est associé à l'instance Amazon EC2. Certains produits ne sont pas disponibles sur tous les types d'instances.

  7. aws:branch: répartit l'automatisation selon que vous souhaitez que l'automatisation vérifie si l'instance Amazon EC2 fait partie d'une pile CloudFormation

    1. Si la aws:cloudformation:stack-name balise est appliquée à l'instance, l'automatisation s'exécute aws:assertAwsResourceProperty pour confirmer que l'instance ne fait pas partie d'une CloudFormation pile.

  8. aws:branch: répartit l'automatisation selon que le type de volume racine de l'instance est Amazon Elastic Block Store (Amazon EBS).

  9. aws:assertAwsResourceProperty: confirme que le comportement d'arrêt de l'instance est stop ou nonterminate.

  10. aws:executeScript: confirme qu'il n'existe qu'une seule automatisation de ce runbook ciblant l'instance actuelle. Si une autre automatisation est déjà en cours ciblant la même instance, elle renvoie une erreur et se termine.

  11. aws:executeAwsApi: Renvoie une liste des types d'instances AMD avec la même quantité de mémoire et CPUs v.

  12. aws:executeScript: Vérifie si le type d'instance actuel est pris en charge et renvoie son type d'instance AMD équivalent. S'il n'y a pas d'équivalent, l'automatisation prend fin.

  13. aws:executeScript: confirme que le type d'instance AMD est disponible dans la même zone de disponibilité et vérifie les autorisations IAM fournies.

  14. aws:branch: Branche l'automatisation selon que la valeur du DryRun paramètre est ou nonyes.

  15. aws:branch: Vérifie si le type d'instance d'origine et le type d'instance cible sont identiques. S'ils sont identiques, l'automatisation prend fin.

  16. aws:executeAwsApi: obtient l'état actuel de l'instance.

  17. aws:changeInstanceState: arrête l'instance Amazon EC2.

  18. aws:changeInstanceState: force l'instance à s'arrêter si elle est bloquée en état d'arrêt.

  19. aws:executeAwsApi: remplace le type d'instance par le type d'instance AMD cible.

  20. aws:sleep: Attend 3 secondes après avoir changé le type d'instance pour une cohérence éventuelle.

  21. aws:branch: répartit l'automatisation en fonction de l'état de l'instance précédent. Si c'est le casrunning, l'instance est démarrée.

    1. aws:changeInstanceState: démarre l'instance Amazon EC2 si elle était en cours d'exécution avant de modifier le type d'instance.

    2. aws:waitForAwsResourceProperty: attend que l'instance Amazon EC2 passe les vérifications de statut. Si l'instance ne passe pas les vérifications de statut, le type d'instance d'origine est rétabli.

      1. aws:changeInstanceState: arrête l'instance Amazon EC2 avant de lui redonner son type d'instance d'origine.

      2. aws:changeInstanceState: force l'instance Amazon EC2 à s'arrêter avant de la remplacer par son type d'instance d'origine au cas où elle resterait bloquée dans un état d'arrêt.

      3. aws:executeAwsApi: remplace le type d'origine de l'instance Amazon EC2.

      4. aws:sleep: Attend 3 secondes après le changement de type d'instance pour une cohérence éventuelle.

      5. aws:changeInstanceState: démarre l'instance Amazon EC2 si elle était en cours d'exécution avant de modifier le type d'instance.

      6. aws:waitForAwsResourceProperty: attend que l'instance Amazon EC2 passe les vérifications de statut.

  22. aws:sleep: Attend avant de terminer le runbook.