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.
Steuern Sie die Aufbewahrung von Instances mit Richtlinien für den Instance-Lebenszyklus
Richtlinien für den Instance-Lebenszyklus bieten Schutz vor der Kündigung von Amazon EC2 Auto Scaling, wenn eine Aktion zum Beenden des Lebenszyklus abgebrochen wird. Im Gegensatz zu Lifecycle-Hooks allein sollen Richtlinien für den Instance-Lebenszyklus sicherstellen, dass Instances in einen beibehaltenen Zustand übergehen, wenn das ordnungsgemäße Herunterfahren nicht erfolgreich abgeschlossen werden kann.
Wann sollten Instance-Lifecycle-Richtlinien verwendet werden
Verwenden Sie Richtlinien für den Instanzlebenszyklus, wenn ein ordnungsgemäßes Herunterfahren Ihrer Anwendung nicht optional, sondern obligatorisch ist und ein fehlgeschlagenes Herunterfahren ein manuelles Eingreifen erfordert. Häufige Anwendungsfälle umfassen:
-
Stateful-Anwendungen, die vor der Kündigung die Datenpersistenz abschließen müssen.
-
Anwendungen, die längere Entladezeiten erfordern, die das maximale Lifecycle-Hook-Timeout von 48 Stunden überschreiten können.
-
Workloads, die sensible Daten verarbeiten und bei denen die Bereinigung fehlschlägt oder unvollständig ist, können zu Datenverlust oder -beschädigung führen.
-
Geschäftskritische Dienste, bei denen ein abruptes Herunterfahren die Verfügbarkeit beeinträchtigt.
Weitere Informationen zur ordnungsgemäßen Handhabung der Instanzbeendigung finden Sie unter. Gestalten Sie Ihre Anwendungen so, dass sie die Instance-Kündigung ordnungsgemäß handhaben
So funktionieren Instance-Lebenszyklus-Richtlinien mit Terminierungs-Lifecycle-Hooks
Richtlinien für den Instanzlebenszyklus funktionieren in Kombination mit Terminierungs-Lifecycle-Hooks, nicht als Ersatz. Der Prozess besteht aus mehreren Phasen:
-
Die Aktionen im Lebenszyklus der Kündigung werden ausgeführt. Wenn Amazon EC2 Auto Scaling eine Instance zur Kündigung auswählt, werden Ihre Terminierungs-Lifecycle-Hooks aufgerufen und die Instance wechselt in den
Terminating:WaitStatus, in dem sie mit der Ausführung der Terminierungslebenszyklus-Aktionen beginnen kann. -
Der Versuch, das System ordnungsgemäß herunterzufahren, beginnt. Ihre Anwendung, die entweder auf der Instance oder über eine Steuerungsebene ausgeführt wird, erhält die Benachrichtigung über die Aktion zum Beenden des Lebenszyklus und beginnt mit Verfahren zum ordnungsgemäßen Herunterfahren, wie z. B. das Löschen von Verbindungen, das Abschließen laufender Arbeiten oder das Übertragen von Daten.
-
Die Aktionen im Lebenszyklus der Kündigung sind abgeschlossen. Eine Aktion im Lebenszyklus einer Kündigung kann mit
CONTINUEoder mit einemABANDONErgebnis abgeschlossen werden. -
Die Richtlinie für den Instanzlebenszyklus bewertet die Situation. Wenn keine Instance-Lebenszyklus-Richtlinie konfiguriert ist, wird die Instance sofort beendet, auch wenn die Aktion zum Beenden des Lebenszyklus erfolgreich abgeschlossen wurde
ABANDON. Wenn eine Instance-Lebenszyklus-Richtlinie so konfiguriert ist, dass Instances aktiviert bleibenTerminateHookAbandon, wechselt die Instance in den Status Beibehalten, wenn die Aktion zum Beenden des Lebenszyklus erfolgreich abgeschlossenABANDONwurde. -
Beibehaltene Instances warten auf manuelle Maßnahmen. Für Instances in den beibehaltenen Staaten fallen weiterhin die Standardgebühren von Amazon EC2 an. Diese Instances werden nicht auf die gewünschte Kapazität Ihrer Auto Scaling-Gruppe angerechnet, sodass Auto Scaling Ersatz-Instances startet, um die gewünschte Größe beizubehalten. Auto Scaling Scaling-Funktionen wie Instanzaktualisierung und maximale Instanzlebensdauer ignorieren ebenfalls beibehaltene Instances. Auf diese Weise können Sie Bereinigungsvorgänge manuell abschließen, Daten wiederherstellen oder untersuchen, warum das automatische Herunterfahren fehlgeschlagen ist, bevor Sie die Instance manuell beenden.
-
Es erfolgt eine manuelle Kündigung. Nachdem Sie die erforderlichen Aktionen für die beibehaltene Instance abgeschlossen haben, müssen Sie die
TerminateInstanceInAutoScalingGroupAPI aufrufen, um die Instance zu beenden.