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 mithilfe von Richtlinien für den Instance-Lebenszyklus
Richtlinien für den Instanzlebenszyklus bieten Schutz vor Amazon EC2 Auto Scaling-Terminierungen, wenn eine Aktion im Lebenszyklus der Beendigung abgebrochen wird. Im Gegensatz zu Lifecycle-Hooks allein sind die Richtlinien für den Instance-Lebenszyklus so konzipiert, dass sie sicherstellen, dass Instances in den Zustand „Beibehaltung“ übergehen, wenn das ordnungsgemäße Herunterfahren nicht erfolgreich abgeschlossen wird.
Wann sollten Richtlinien für den Instanzlebenszyklus verwendet werden
Verwenden Sie Richtlinien für den Instanzlebenszyklus, wenn ein ordnungsgemäßes Herunterfahren Ihrer Anwendung nicht optional, sondern zwingend erforderlich ist und ein fehlgeschlagenes Herunterfahren ein manuelles Eingreifen erfordert. Häufige Anwendungsfälle umfassen:
-
Stateful-Anwendungen, bei denen die Datenpersistenz abgeschlossen sein muss, bevor sie beendet werden.
-
Anwendungen, die längere Belastungszeiträume erfordern, die das maximale Lifecycle-Hook-Timeout von 48 Stunden überschreiten können.
-
Workloads, bei denen sensible Daten verarbeitet werden und bei denen eine fehlgeschlagene oder unvollständige Bereinigung zu Datenverlust oder -beschädigung führen kann.
-
Mission-critical Dienste, bei denen ein abruptes Herunterfahren die Verfügbarkeit beeinträchtigt.
Weitere Informationen zum ordnungsgemäßen Umgang mit der Instanzbeendigung finden Sie unter. Gestalten Sie Ihre Anwendungen so, dass sie die Instance-Kündigung ordnungsgemäß handhaben
So funktionieren Richtlinien für den Instanzlebenszyklus mit Hooks zum Beenden des Lebenszyklus
Richtlinien für den Instanzlebenszyklus funktionieren in Kombination mit Hooks für den Kündigungslebenszyklus, nicht als Ersatz. Der Prozess besteht aus mehreren Schritten:
-
Aktionen im Lebenszyklus der Kündigung werden ausgeführt. Wenn Amazon EC2 Auto Scaling eine Instance zum Beenden auswählt, werden Ihre Terminierungs-Lifecycle-Hooks aufgerufen und die Instance wechselt in den
Terminating:WaitZustand, in dem sie mit der Ausführung der Terminierungslebenszyklus-Aktionen beginnt. -
Der Versuch, das System herunterzufahren, beginnt. Ihre Anwendung, die entweder auf der Instance oder über eine Steuerungsebene ausgeführt wird, erhält die Benachrichtigung über eine Aktion zur Beendigung des Lebenszyklus und leitet ein ordnungsgemäßes Herunterfahren ein, z. B. das Trennen 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
CONTINUEoderABANDONErgebnis abgeschlossen werden. -
Die Richtlinie zum Instanzlebenszyklus bewertet die Situation. Ohne eine konfigurierte Instanzlebenszyklusrichtlinie wird die Instance sofort beendet, auch wenn die Aktion zum Kündigungslebenszyklus mit einem
ABANDONErgebnis abgeschlossen wurde. Wenn eine Richtlinie für den Instanzlebenszyklus so konfiguriert ist, dass Instances aktiviert bleibenTerminateHookAbandon, wechselt die Instance in den Status „Beibehalten“, wenn die Aktion im Lebenszyklus der Kündigung mit einemABANDONErgebnis abgeschlossen wurde. -
Beibehaltene Instanzen warten auf manuelle Maßnahmen. Für Instances in beibehaltenen Bundesstaaten fallen weiterhin die Amazon EC2-Standardgebühren an. Diese Instances werden nicht auf die gewünschte Kapazität Ihrer Auto Scaling-Gruppe angerechnet. Daher startet Auto Scaling Ersatz-Instances, um die gewünschte Größe beizubehalten. Auto Scaling-Funktionen wie die Aktualisierung von Instanzen und die maximale Lebensdauer der Instance 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.
-
Die manuelle Beendigung erfolgt. Nachdem Sie die erforderlichen Aktionen für die beibehaltene Instance abgeschlossen haben, müssen Sie die
TerminateInstanceInAutoScalingGroupAPI aufrufen, um die Instance zu beenden.