Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
AWSSupport-CloneXenEC2InstanceAndMigrateToNitro
Beschreibung
Die beiden AWSSupport-CloneXenEC InstanceAndMigrateToNitro Runbooks klonen, bereiten die geklonte Amazon Elastic Compute Cloud (Amazon EC2) Linux-Instance, die derzeit auf der Amazon EC2 Xen-Plattform läuft, vor und migrieren sie für die Ausführung auf der Amazon EC2 Nitro-Plattform. Diese Automatisierung ist in drei verschiedene Bereiche unterteilt:
-
Vorläufige Prüfungen: Evaluiert alle Voraussetzungen, um mit der Migration fortzufahren, einschließlich der Prüfung, ob die Amazon EC2 EC2-Zielinstanz bereits auf der Nitro-Plattform läuft, ermittelt den Lebenszyklusstatus, validiert das Betriebssystem und überprüft die Systems Manager Manager-Konnektivität.
-
Test: Erstellt einen Test AMI aus der Amazon EC2 EC2-Zielinstanz und startet eine Amazon EC2 EC2-Testinstanz, um den Migrationsprozess zu validieren, bevor Sie fortfahren.
-
CloneAndMigrate: Erstellt einen Klon der Amazon EC2 EC2-Zielinstanz, installiert die erforderlichen Treiber, konfiguriert das System für die Nitro-Plattform und ändert den Instance-Typ in den gewünschten Nitro-Typ.
Wichtig
Bevor Sie die Genehmigung zum Stoppen der Amazon EC2 EC2-Zielinstanz erteilen, stellen Sie sicher, dass alle Anwendungen, die auf der Instance ausgeführt werden, ordnungsgemäß geschlossen wurden. Wenn der Amazon EC2 EC2-Instance keine Elastic IP-Adresse zugeordnet ist, ändert sich die automatische öffentliche IPv4 Adresse, sobald die Instance gestoppt und gestartet wird.
Wichtig
Haftungsausschluss: Bei der Ausführung dieses Runbooks können zusätzliche Gebühren für Ihr Konto für die Amazon EC2 EC2-Instance, Amazon EBS Volumes & s. anfallen. AMI Weitere Informationen finden Sie in den Amazon EC2 EC2-Preisen
Wichtig
Voraussetzungen
Die Amazon EC2 EC2-Zielinstanz benötigt ausgehenden Zugriff auf die Repositorys, um Treiber und Abhängigkeiten wiekernel-devel,,,,,,,gcc,,patch,rpm-build, wget dracut makelinux-headers, zu installieren und bei Bedarf den Paketmanager zu unzip verwenden.
Unterstützte Betriebssysteme
Red Hat Enterprise Linux (RHEL) 8 und 9
Amazon Linux 2 und AL2023
Ubuntu Server 18.04 LTS, 20.04 und 22.04
Debian 11 und 12 (nur Partition)AWS
SUSE12SP5 und SUSE15 SP (5,6)
Wie funktioniert es?
Das Runbook führt die folgenden allgemeinen Schritte aus:
Validiert die Voraussetzungen und prüft, ob die Instanz für die Migration geeignet ist.
Erstellt und testet eineAMI, um sicherzustellen, dass die Migration erfolgreich ist.
Aktiviert das ENA-Attribut (Enhanced Networking) und installiert die neuesten ENA-Treiber.
Überprüft und konfiguriert das NVMe Modul in initramfs.
Analysiert und modifiziert /etc/fstab, um Gerätenamen durch zu ersetzen. UUIDs
Deaktiviert vorhersehbare Schnittstellenbenennungen und entfernt persistente Netzwerkregeln.
Ändert den Typ der geklonten Instanz in den gewünschten Nitro-Typ.
Erstellt ein FinalAMI, das als Golden Image für den Start von Nitro-Instanzen verwendet werden kann.
Führen Sie diese Automatisierung aus (Konsole)
Art des Dokuments
Automatisierung
Eigentümer
Amazon
Plattformen
Linux
Parameter
Erforderliche IAM-Berechtigungen
Der AutomationAssumeRole Parameter erfordert die folgenden Aktionen, um das Runbook erfolgreich zu verwenden.
autoscaling:DescribeAutoScalingInstancesec2:CreateImageec2:CreateTagsec2:DescribeImagesec2:DescribeInstanceAttributeec2:DescribeInstancesec2:DescribeInstanceStatusec2:DescribeInstanceTypeOfferingsec2:DescribeInstanceTypesec2:DeregisterImageec2:ModifyInstanceAttributeec2:RunInstancesec2:StartInstancesec2:StopInstancesec2:TerminateInstancesiam:PassRolesns:Publishssm:DescribeAutomationExecutionsssm:DescribeInstanceInformationssm:SendCommand
Beispiel für eine IAM-Richtlinie:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "autoscaling:DescribeAutoScalingInstances", "ec2:CreateImage", "ec2:CreateTags", "ec2:DescribeImages", :ec2:DescribeInstanceAttribute:, "ec2:DescribeInstances", "ec2:DescribeInstanceStatus", "ec2:DescribeInstanceTypes", "ec2:DeregisterImage", "ec2:ModifyInstanceAttribute", "ec2:RunInstances", "ec2:StartInstances", "ec2:StopInstances", "ec2:TerminateInstances", "iam:PassRole", "ssm:DescribeAutomationExecutions", "ssm:DescribeInstanceInformation", "ssm:SendCommand" ], "Resource": "*" } ] }
Anweisungen
Gehen Sie wie folgt vor, um die Automatisierung zu konfigurieren:
-
Navigieren Sie
AWSSupport-CloneXenEC2InstanceAndMigrateToNitroim Systems Manager unter Dokumente zu. -
Wählen Sie
Execute automation. -
Geben Sie für die Eingabeparameter Folgendes ein:
-
AutomationAssumeRole (Fakultativ):
Beschreibung: (Optional) Der ARN der AWS Identity and Access Management (IAM) -Rolle, mit der Systems Manager Automation die Aktionen in Ihrem Namen ausführen kann. Wenn keine Rolle angegeben ist, verwendet Systems Manager Automation die Berechtigungen des Benutzers, der dieses Runbook startet.
Typ:
AWS::IAM::Role::Arn
-
TargetInstanceId (Erforderlich):
Beschreibung: (Erforderlich) Instance-ID der Amazon EC2 EC2-Zielinstanz, die Sie zur Nitro-Plattform migrieren möchten.
Typ:
AWS::EC2::Instance::Id
-
NitroInstanceType (Optional):
Beschreibung: (Optional) Geben Sie den Nitro-Zielinstanztyp ein. Es werden nur Nitro M5-, M6-, C5-, C6-, R5-, R6- und T3-Instances unterstützt (z. B. t3.small). Standard: m5.xlarge.
Typ:
String-
Zulässiges Muster:
^(m5a?z?d?n?|c5a?d?n?|r5a?d?n?b?|(c|m|r)6(a|i)?d?)\\.(2|4|8|12|16|24|32)?xlarge$|^t3a?\\.((x|2x)?large|nano|micro|small|medium)$ Standard:
m5.xlarge
-
SNSTopicArn (erforderlich):
Beschreibung: (Erforderlich) Geben Sie den ARN des Amazon SNS SNS-Themas für die Genehmigungsbenachrichtigung an. Dieses Amazon SNS SNS-Thema wird verwendet, um Genehmigungsbenachrichtigungen während der Ausführung der Automatisierung zu senden.
Typ:
String-
Zulässiges Muster:
^arn:(aws|aws-cn|aws-us-gov|aws-iso(-[a-z])?):sns:(us(-gov|-isob?)?|ap|ca|af|me|cn|eu|sa)-(central|(north|south)?(east|west)?)-\\d:\\d{12}:[a-zA-Z0-9_.-]{1,256}$
-
approverIAM (erforderlich):
Beschreibung: (Erforderlich) Geben Sie eine Liste der AWS authentifizierten Principals an, die die Aktion entweder genehmigen oder ablehnen können. Die maximale Anzahl an Genehmigern ist 10.
Typ:
StringList-
Zulässiges Muster:
^[a-zA-Z0-9_+=,.@\\-\/]{1,128}$|^arn:(aws|aws-cn|aws-us-gov|aws-iso(-[a-z])?):(sts|iam)::[0-9]{12}:[a-zA-Z0-9_+=,.@\\-\/]{1,256}$
-
MinimumRequiredApprovals (Fakultativ):
Beschreibung: (Optional) Die Mindestanzahl von Genehmigungen, die erforderlich sind, um die Automatisierung wieder aufzunehmen. Standard: 1
Typ: Ganzzahl
Standard: 1
-
DeleteResourcesOnFailure (Fakultativ):
Beschreibung: (Optional) Ob die geklonte Amazon EC2 EC2-Instance beendet werden soll und AMI ob die Automatisierung fehlschlägt.
Typ:
Boolean-
Zulässige Werte:
[true, false] Standard:
true
-
Bestätigung (erforderlich):
Beschreibung: (Erforderlich) Bitte lesen Sie die vollständigen Einzelheiten der Aktionen, die von diesem Automatisierungs-Runbook ausgeführt werden, und schreiben Sie „Ja, ich verstehe und bestätige“, wenn Sie die Schritte bestätigen.
Typ:
String-
Zulässiges Muster:
^Yes, I understand and acknowledge$
-
AllowInstanceStoreInstances (Fakultativ):
Beschreibung: (Optional) Wenn Sie angeben
yes, wird das Runbook auf Instances ausgeführt, denen Instance-Speicher-Volumes angehängt sind. Warnung: Daten in den Instance-Speicher-Volumes gehen verloren, wenn die Instance gestoppt wird. Dieser Parameter hilft, versehentlichen Datenverlust zu vermeiden.Typ:
Boolean-
Zulässige Werte:
[yes, no] Standard:
no
-
-
Wählen Sie Ausführen aus.
-
Die Automatisierung wird eingeleitet.
-
Das Dokument führt die folgenden Schritte aus:
-
checkConcurrency:Stellt sicher, dass dieses Runbook nur einmal ausgeführt wird, das auf die aktuelle Amazon EC2 EC2-Instance abzielt.
-
getTargetInstanceProperties:Ruft die Details der Amazon EC2 EC2-Zielinstanz ab.
-
checkIfNitroInstanceTypeIsSupportedInAZ:Ermittelt, ob der Nitro-Zielinstanztyp in derselben Availability Zone wie die Amazon EC2 EC2-Zielinstanz unterstützt wird.
-
createTestImage:Erstellt einen Test anhand AMI der bereitgestellten Instance.
-
launchTestInstanceInSameSubnet:Startet eine Amazon EC2-Testinstanz aus dem Test AMI mit derselben Konfiguration wie die Amazon EC2 EC2-Zielinstanz.
-
approvalToStopTargetInstance:Wartet auf die Genehmigung der zuständigen Principals, die Ziel-Instance zu beenden.
-
createBackupImage:Erstellt eine AMI aus der bereitgestellten Instanz für das Backup.
-
launchInstanceInSameSubnet:Startet eine neue Amazon EC2 EC2-Instance aus dem Backup AMI mit derselben Konfiguration wie die Amazon EC2 EC2-Quell-Instance.
-
checkAndInstallENADrivers:Ermittelt die Verfügbarkeit von ENA-Treibern (Enhanced Networking Adapter) auf der Amazon EC2 EC2-Instance und installiert sie, falls sie fehlen.
-
checkAndAddNVMEDrivers:Ermittelt die Verfügbarkeit von NVMe-Treibern auf der geklonten Amazon EC2 EC2-Instance und installiert sie, falls sie fehlen.
-
checkAndModifyFSTABEntries:Ermittelt, ob die Gerätenamen in verwendet werden,
/etc/fstabund ersetzt sie durch ihre eigenen UUIDs, falls sie gefunden werden. -
setNitroInstanceTypeForClonedInstance:Legt den angegebenen Amazon EC2 EC2-Zielinstanztyp für die geklonte Amazon EC2 EC2-Instance fest.
-
approvalForCreatingImageAfterDriversInstallation:Wartet auf die Genehmigung durch den Benutzer, wenn die geklonte Amazon EC2 EC2-Instance erfolgreich auf der Nitro-Plattform gestartet wurde.
-
createImageAfterDriversInstallation:Erstellt nur dann ein Image aus der neuen Amazon EC2 EC2-Instance, wenn die neue Amazon EC2 EC2-Instance erfolgreich auf der Nitro Platform gestartet wurde.
-
-
Wenn der Vorgang abgeschlossen ist, finden Sie im Abschnitt Outputs die detaillierten Ergebnisse der Ausführung.
Referenzen
AWS Systems Manager -Automatisierung