Ersetzen Sie die Root-Volumes während der Instanzaktualisierung - Amazon EC2 Auto Scaling

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.

Ersetzen Sie die Root-Volumes während der Instanzaktualisierung

Funktionsweise

Durch den Austausch von Root-Volumes werden Ihre Instances aktualisiert, indem nur das Root-EBS-Volume ersetzt wird, während die Instance weiterhin läuft. Dadurch entfällt die Notwendigkeit, neue Instances zu starten, und potenzielle Kapazitätsengpässe werden vermieden. Durch diesen Prozess werden alle anderen Instance-Ressourcen geschont, einschließlich:

  • Netzwerkschnittstellen und IP-Adressen

  • EBS-Volumes ohne Root-Rechte

  • Instance-Speicher für Volumes und Daten

  • Sicherheitsgruppen und IAM-Rollen

Während des Austauschs des Root-Volumes wird Ihre Anwendung weiterhin auf der vorhandenen Instance ausgeführt. Das ursprüngliche Root-Volume wird getrennt, ein neues Root-Volume wird aus Ihrem angegebenen AMI erstellt und dann an dieselbe Instance angehängt. Die ursprünglichen Root-Volumes werden nach erfolgreichem Austausch automatisch gelöscht.

Wenn Sie die Strategie zum Ersetzen von Root-Volumes verwenden, durchlaufen Instances die folgenden Lebenszyklusstatus:

  1. ReplacingRootVolume- Der Austausch des Root-Volumes beginnt

  2. ReplacingRootVolume:Wait- Wartet auf den Abschluss des Lifecycle-Hooks (falls konfiguriert)

  3. ReplacingRootVolume:Proceed- Wird mit dem Austausch fortgefahren

  4. RootVolumeReplaced- Der Austausch wurde erfolgreich abgeschlossen

Nach Abschluss des Austauschs des Root-Volumes führt Auto Scaling Integritätsprüfungen für aktualisierte Instances durch. Wenn der Austausch des Root-Volumes für eine Instance fehlschlägt, markiert Auto Scaling diese Instance zur Kündigung und ersetzt sie durch eine neue Instance.

Voraussetzungen

  • Ihre Auto Scaling Scaling-Gruppe muss eine Richtlinie für gemischte Instanzen verwenden

  • Für alle Überschreibungen in der Richtlinie für gemischte Instanzen muss Folgendes angegeben werden ImageId

  • AMIs darf nur ein einziges Root-Volume enthalten

  • Alle Instances müssen der Konfiguration der Startvorlage der Gruppe entsprechen

  • Sie müssen die Instanzaktualisierung mit einer gewünschten Konfiguration starten, die über eine Richtlinie für gemischte Instanzen verfügt, die ImageId Überschreibungen enthält.

Starten Sie eine Instanzaktualisierung mit Replace Root Volume

Um eine Instanzaktualisierung mit Replace Root Volume (AWS CLI) zu starten

Verwenden Sie den folgenden start-instance-refreshBefehl, um eine Instanzaktualisierung von der aus zu starten AWS CLI. Sie können alle Voreinstellungen angeben, die Sie in einer JSON-Konfigurationsdatei ändern möchten. Wenn Sie auf die Konfigurationsdatei verweisen, geben Sie den Dateipfad und -namen an, wie im folgenden Beispiel gezeigt.

aws autoscaling start-instance-refresh --cli-input-json file://config.json

Inhalt von config.json:

{ "AutoScalingGroupName": "my-asg", "Strategy" : "ReplaceRootVolume", "DesiredConfiguration":{ "MixedInstancesPolicy":{ "LaunchTemplate": { "LaunchTemplateSpecification": { "LaunchTemplateId":"my-launch-template", "Version": "1" }, "Overrides": [ { "InstanceType":"c5.large", "ImageId":"ami-1234example" }, { "InstanceType":"m5.large", "ImageId":"ami-2345example" } ] } } }, "Preferences": { "InstanceWarmup": 60, "MinHealthyPercentage": 90, "AutoRollback": true, "ScaleInProtectedInstances": Ignore, "StandbyInstances": Ignore } }

Wenn keine Voreinstellungen angegeben werden, werden die Standardwerte verwendet. Weitere Informationen finden Sie unter Die Standardwerte für eine Instance-Aktualisierung verstehen.

Beispielausgabe:

{ "InstanceRefreshId": "08b91cf7-8fa6-48af-b6a6-d227f40f1b9b" }

Einschränkungen

  • Sie können eine Instance-Aktualisierung nicht mit Replace Root Volume starten, wenn die EC2 Auto Scaling Scaling-Gruppe oder die gewünschte Konfiguration für die Instanzaktualisierung die Vorlagenversion verwendet $Latest oder die Vorlagenversion $Default startet.

  • Sie können eine Instance-Aktualisierung nicht mit Replace Root Volume in einer Amazon EC2 Auto Scaling Scaling-Gruppe starten, wenn sie Instances enthält, deren Instance-Typ nicht in der Richtlinie für gemischte Instanzen enthalten ist.

  • Während einer Instance-Aktualisierung mit Replace Root Volume können Sie nur Instances mit Typen anhängen, die in der Richtlinie für gemischte Instanzen der gewünschten Konfiguration enthalten sind.

  • Sie können eine Instanzaktualisierung nicht mit Replace Root Volume in einer EC2 Auto Scaling Scaling-Gruppe starten, die über einen warmen Pool verfügt.

  • Sie können einer Amazon EC2 Auto Scaling Scaling-Gruppe, die über eine aktive Instance-Aktualisierung verfügt, keinen warmen Pool mit Replace Root Volume hinzufügen.