Über Zustandsprüfungen Ihrer Auto-Scaling-Gruppe - 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.

Über Zustandsprüfungen Ihrer Auto-Scaling-Gruppe

Dieses Thema bietet einen Überblick über die verfügbaren Zustandsprüfungstypen und beschreibt die wichtigsten Überlegungen zur Integration von Amazon EC2 Auto Scaling Scaling-Zustandsprüfungen in Ihre Anwendungen.

Health check type (Typ der Zustandsprüfung)

Amazon EC2 Auto Scaling kann den Integritätsstatus einer InService Instance mithilfe einer oder mehrerer der folgenden Zustandsprüfungen ermitteln:

Health check type (Typ der Zustandsprüfung) Was es überprüft

EC2Amazon-Statusprüfungen und geplante Veranstaltungen

  • Überprüft, ob die Instance läuft.

  • Prüft auf zugrunde liegende Hardware- oder Softwareprobleme, die die Instanz beeinträchtigen könnten.

Dies ist der standardmäßige Zustandsprüfungstyp für eine Auto-Scaling-Gruppe.

Elastic Load Balancing-Zustandsprüfungen

  • Überprüft, ob der Load Balancer die Instance als fehlerfrei meldet, und bestätigt, ob die Instance für die Bearbeitung von Anfragen verfügbar ist.

Um diesen Integritätsprüfungstyp auszuführen, müssen Sie ihn für Ihre Auto Scaling Scaling-Gruppe aktivieren.

VPCLattice-Integritätsprüfungen

  • Überprüft, ob VPC Lattice die Instanz als fehlerfrei meldet, und bestätigt, ob die Instanz für die Bearbeitung von Anfragen verfügbar ist.

Um diesen Integritätsprüfungstyp auszuführen, müssen Sie ihn für Ihre Auto Scaling Scaling-Gruppe aktivieren.

EBSAmazon-Gesundheitschecks

  • Überprüft, ob EBS Volumes erreichbar sind, und besteht die I/O-Statusprüfungen.

Um diesen Integritätsprüfungstyp auszuführen, müssen Sie ihn für Ihre Auto Scaling Scaling-Gruppe aktivieren.

Benutzerdefinierte Zustandsprüfungen

  • Sucht gemäß Ihren benutzerdefinierten Integritätsprüfungen nach anderen Problemen, die auf Integritätsprobleme der Instance hinweisen könnten.

EC2Amazon-Gesundheitschecks

Nachdem eine Instance gestartet wurde, wird sie an die Auto-Scaling-Gruppe angefügt und wechselt in den Zustand InService. Weitere Informationen über die verschiedenen Lebenszyklus-Statusse der Instances in einer Auto-Scaling-Gruppe finden Sie unter Lebenszyklus der Amazon EC2 Auto Scaling Scaling-Instance.

Amazon EC2 Auto Scaling überprüft regelmäßig den Integritätsstatus aller Instances innerhalb der Auto Scaling Scaling-Gruppe, um sicherzustellen, dass sie laufen und in gutem Zustand sind.

Statusüberprüfungen

Amazon EC2 Auto Scaling verwendet die Ergebnisse der EC2 Amazon-Instance-Statusprüfungen und Systemstatusprüfungen, um den Integritätsstatus einer Instance zu ermitteln. Befindet sich die Instance in einem anderen EC2 Amazon-Bundesstaat als running oder wird ihr Status für die Statusprüfungen geändertimpaired, betrachtet Amazon EC2 Auto Scaling die Instance als fehlerhaft und ersetzt sie. Dies gilt auch, wenn die Instance einen der folgenden Zustände aufweist:

  • stopping

  • stopped

  • shutting-down

  • terminated

Die EC2 Amazon-Statusprüfungen erfordern keine spezielle Konfiguration und sind immer aktiviert. Weitere Informationen finden Sie unter Arten von Statusprüfungen im EC2Amazon-Benutzerhandbuch.

Wichtig

Amazon EC2 Auto Scaling lässt die Statusprüfungen gelegentlich fehlschlagen, ohne dass Maßnahmen ergriffen werden. Wenn eine Statusüberprüfung fehlschlägt, wartet Amazon EC2 Auto Scaling einige Minuten AWS , bis das Problem behoben ist. Es markiert eine Instance nicht sofort als Unhealthy, wenn ihr Status für die Zustandsprüfungen impaired wird.

Wenn Amazon EC2 Auto Scaling jedoch feststellt, dass sich eine Instance nicht mehr im running Status befindet, wird diese Situation als sofortiger Ausfall behandelt. In diesem Fall wird die Instance sofort als markiert Unhealthy und ersetzt.

Geplante Ereignisse

Amazon EC2 kann gelegentlich Ereignisse auf Ihren Instances so planen, dass sie nach einem bestimmten Zeitstempel ausgeführt werden. Weitere Informationen finden Sie unter Geplante Ereignisse für Ihre Instances im EC2Amazon-Benutzerhandbuch.

Wenn eine Ihrer Instances von einem geplanten Ereignis betroffen ist, betrachtet Amazon EC2 Auto Scaling die Instance als fehlerhaft und ersetzt sie. Die Instance wird erst heruntergefahren, wenn das im Zeitstempel angegebene Datum und die Uhrzeit erreicht sind.

Elastic Load Balancing-Zustandsprüfungen

Wenn Sie Elastic Load Balancing Health Checks für Ihre Auto Scaling-Gruppe aktivieren, kann Amazon EC2 Auto Scaling die Ergebnisse dieser Zustandsprüfungen verwenden, um den Integritätsstatus einer Instance zu ermitteln.

Bevor Sie Elastic Load Balancing Health Checks für Ihre Auto Scaling Scaling-Gruppe aktivieren können, müssen Sie einen Elastic Load Balancing Load Balancer konfigurieren und dafür eine Integritätsprüfung konfigurieren, um festzustellen, ob Ihre Instances fehlerfrei sind. Weitere Informationen finden Sie unter Bereiten Sie den Anschluss eines Elastic Load Balancing Balancing-Load Balancers vor.

Nachdem Sie den Load Balancer Ihrer Auto Scaling Scaling-Gruppe hinzugefügt haben, passiert Folgendes:

  • Amazon EC2 Auto Scaling registriert die Instances in der Auto Scaling Scaling-Gruppe beim Load Balancer.

  • Nachdem eine Instance die Registrierung beendet hat, wechselt sie in den Status InService und wird für die Verwendung mit dem Load Balancer verfügbar.

Standardmäßig ignoriert Amazon EC2 Auto Scaling die Ergebnisse der Elastic Load Balancing Balancing-Zustandsprüfungen. Wenn Sie diese Zustandsprüfungen für Ihre Auto Scaling-Gruppe aktiviert haben und Elastic Load Balancing eine registrierte Instance als meldetUnhealthy, markiert Amazon EC2 Auto Scaling die Instance Unhealthy bei der nächsten regelmäßigen Integritätsprüfung und ersetzt sie.

Wenn der Verbindungsabbau (Verzögerung bei der Abmeldung) für Ihren Load Balancer aktiviert ist, wartet Amazon EC2 Auto Scaling, bis entweder die laufenden Anfragen abgeschlossen sind oder das maximale Timeout abgelaufen ist, bevor fehlerhafte Instances beendet werden.

Anmerkung

Anweisungen, wie Sie den Load Balancer anhängen und Elastic Load Balancing Health Checks für Ihre Auto Scaling Scaling-Gruppe aktivieren, finden Sie unterFügen Sie Ihrer Auto Scaling Scaling-Gruppe einen Elastic Load Balancing Load Balancer hinzu.

Wenn Sie Elastic Load Balancing Health Checks für eine Gruppe aktivieren, kann Amazon EC2 Auto Scaling Instances ersetzen, die Elastic Load Balancing als fehlerhaft meldet, aber erst, nachdem sich der Load Balancer im InService Status befindet. Weitere Informationen finden Sie unter Überprüfen des Anhangsstatus Ihres Load Balancers.

VPCLattice-Zustandsprüfungen

Standardmäßig ignoriert Amazon EC2 Auto Scaling die Ergebnisse der VPC Lattice-Zustandsprüfungen. Sie können diese Integritätsprüfungen optional für Ihre Auto Scaling Scaling-Gruppe aktivieren. Wenn Sie dies getan haben und VPC Lattice eine registrierte Instance als meldetUnhealthy, markiert Amazon EC2 Auto Scaling die Instance Unhealthy bei der nächsten regelmäßigen Zustandsprüfung und ersetzt sie. Der Prozess des Registrierens von Instances und der anschließenden Überprüfung ihres Zustands entspricht der Funktionsweise von Elastic-Load-Balancing-Zustandsprüfungen.

Anmerkung

Anweisungen zum Anhängen der VPC Lattice-Zielgruppe und zum Aktivieren der Lattice-Zustandsprüfungen für Ihre Auto Scaling Scaling-Gruppe finden Sie unterVPC. Ordnen Sie Ihrer Auto Scaling Scaling-Gruppe eine VPC Lattice-Zielgruppe zu

Wenn Sie VPC Lattice-Zustandsprüfungen für eine Gruppe aktivieren, kann Amazon EC2 Auto Scaling Instances ersetzen, die VPC Lattice als fehlerhaft meldet, aber erst, nachdem sich die Zielgruppe im Status befindet. InService Weitere Informationen finden Sie unter Überprüfen Sie den Anhangsstatus Ihrer VPC Lattice-Zielgruppe.

Wie Amazon EC2 Auto Scaling Ausfallzeiten minimiert

Standardmäßig werden neue Instances zur gleichen Zeit bereitgestellt, zu der Ihre bestehenden Instances beendet werden. Dadurch können neue Anfragen möglicherweise nicht akzeptiert werden, bis die neuen Instances voll funktionsfähig sind.

Wenn Amazon EC2 Auto Scaling feststellt, dass Instances nicht mehr laufen (oder sie Unhealthy mit dem set-instance-healthBefehl markiert wurden), werden sie sofort ersetzt. Wenn sich jedoch herausstellt, dass andere Instances fehlerhaft sind, verwendet Amazon EC2 Auto Scaling den folgenden Ansatz, um sich nach Ausfällen zu erholen. Dieser Ansatz minimiert Ausfallzeiten, die aufgrund vorübergehender Probleme oder falsch konfigurierter Integritätsprüfungen auftreten können.

  • Wenn gerade eine Skalierungsaktivität läuft und Ihre Auto Scaling-Gruppe die gewünschte Kapazität um 10 Prozent oder mehr unterschreitet, wartet Amazon EC2 Auto Scaling auf die laufende Skalierungsaktivität, bevor es die fehlerhaften Instances ersetzt.

  • Beim Skalieren wartet Amazon EC2 Auto Scaling darauf, dass die Instances eine erste Zustandsprüfung bestehen. Es wartet auch darauf, dass die Standard-Instance-Aufwärmphase beendet ist, um sicherzustellen, dass die neuen Instances bereit sind.

  • Nachdem die Instances das Warmlaufen abgeschlossen haben und die Gruppe auf mehr als 90 Prozent der gewünschten Kapazität angewachsen ist, ersetzt Amazon EC2 Auto Scaling die fehlerhaften Instances wie folgt:

    • Amazon EC2 Auto Scaling ersetzt jeweils nur bis zu 10 Prozent der gewünschten Kapazität der Gruppe. Dies geschieht, bis alle fehlerhaften Instances ersetzt wurden.

    • Beim Ersetzen von Instances wird gewartet, bis die neuen Instances eine erste Zustandsprüfung bestanden haben. Es wartet auch darauf, dass das Aufwärmen der Standard-Instance abgeschlossen ist, bevor es fortfährt.

Anmerkung

Wenn die Größe einer Auto Scaling-Gruppe klein genug ist, dass der resultierende Wert von 10 Prozent kleiner als eins ist, ersetzt Amazon EC2 Auto Scaling stattdessen die fehlerhaften Instances nacheinander. Dies kann zu Ausfallzeiten für die Gruppe führen.

Wenn alle Instances in einer Auto Scaling-Gruppe durch Elastic Load Balancing Balancing-Integritätsprüfungen als fehlerhaft gemeldet werden und der Load Balancer sich im InService Status befindet, markiert Amazon EC2 Auto Scaling möglicherweise weniger Instances gleichzeitig als fehlerhaft. Dies kann dazu führen, dass viel weniger Instances gleichzeitig ersetzt werden als die 10 Prozent, die in anderen Szenarien angewendet wurden. Dadurch haben Sie Zeit, das Problem zu beheben, ohne dass Amazon EC2 Auto Scaling automatisch die gesamte Gruppe beendet.

Gesundheitschecks für Instanzen in einem warmen Pool

Amazon EC2 Auto Scaling führt auch Integritätsprüfungen für Instances in einem warmen Pool durch. Weitere Informationen finden Sie unter Anzeigen des Status der Zustandsprüfung und dem Grund für Zustandsprüfungsfehler.

Überlegungen zur Zustandsprüfung

Im Folgenden finden Sie Überlegungen zur Verwendung von Amazon EC2 Auto Scaling Scaling-Zustandsprüfungen.

  • Sie Lebenszyklus-Hooks verwenden, wenn auf der Instance, die beendet wird, oder auf der Instance, die gestartet wird, etwas passieren muss. Mit diesen Hooks können Sie eine benutzerdefinierte Aktion ausführen, wenn Amazon EC2 Auto Scaling Instances startet oder beendet. Weitere Informationen finden Sie unter Lebenszyklus-Hooks bei Amazon EC2 Auto Scaling.

  • Amazon EC2 Auto Scaling bietet keine Möglichkeit, die EC2 Amazon-Statusprüfungen und geplanten Ereignisse aus seinen Zustandsprüfungen zu entfernen. Wenn Sie nicht möchten, dass Instances ersetzt werden, empfehlen wir Ihnen, den ReplaceUnhealthy- und HealthCheck-Prozess für einzelne Auto-Scaling-Gruppen auszusetzen. Weitere Informationen finden Sie unter Amazon EC2 Auto Scaling Scaling-Prozesse aussetzen und fortsetzen.

  • Um den Gesundheitsstatus einer fehlerhaften Instance manuell wieder auf den Status zurückzusetzenHealthy, können Sie versuchen, den set-instance-healthBefehl zu verwenden. Wenn Sie eine Fehlermeldung erhalten, liegt das wahrscheinlich daran, dass die Instance bereits beendet ist. Im Allgemeinen ist das Zurücksetzen des Integritätsstatus einer Instanz Healthy mit dem set-instance-healthBefehl nur dann sinnvoll, wenn entweder der ReplaceUnhealthy Prozess oder der Terminate Prozess unterbrochen ist.

  • Wenn Sie Fehler bei einer Instanz beheben müssen, ohne dass es zu Störungen durch Integritätsprüfungen kommt, können Sie die Instanz in den Standby Status versetzen. Amazon EC2 Auto Scaling führt keine Zustandsprüfungen für Instances durch, die sich im Standby Status befinden, bis Sie die Instances wieder in Betrieb nehmen. Weitere Informationen finden Sie unter Vorübergehendes Entfernen von Instances aus einer Auto-Scaling-Gruppe.

  • Wenn die Instance beendet wird, werden alle zugehörigen Elastic IP-Adressen von ihr getrennt und der neuen Instance nicht automatisch zugeordnet. Sie müssen die elastische IP-Adressen manuell mit der neuen Instance verknüpfen oder dies automatisch mit einer auf Lebenszyklus-Hook-basierten Lösung tun. Weitere Informationen finden Sie unter Elastic IP-Adressen im EC2Amazon-Benutzerhandbuch.

  • In ähnlicher Weise werden beim Beenden Ihrer Instance die angehängten EBS Volumes getrennt (oder je nach dem DeleteOnTermination Attribut des Volumes gelöscht). Sie müssen diese EBS Volumes manuell oder automatisch mit einer Lifecycle-Hook-basierten Lösung an die neue Instance anhängen. Weitere Informationen finden Sie unter Anhängen eines EBS Amazon-Volumes an eine Instance im EBSAmazon-Benutzerhandbuch.