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.
Skalierung der Abklingzeiten für Amazon EC2 Auto Scaling
Wichtig
Als bewährte Methode empfehlen wir Ihnen, keine einfachen Skalierungsrichtlinien und Skalierungs-Cooldowns zu verwenden. Eine Skalierungsrichtlinie für die Zielverfolgung oder eine Richtlinie für die schrittweise Skalierung ist besser für die Skalierung der Leistung. Für eine Skalierungsrichtlinie, welche die Größe Ihrer Auto-Scaling-Gruppe proportional verändert, wenn der Wert der Skalierungsmetrik ab- oder zunimmt, sollte eine Zielverfolgung statt einer einfachen oder Schrittskalierung verwendet werden.
Wenn Sie einfache Skalierungsrichtlinien für Ihre Auto-Scaling-Gruppe erstellen, empfehlen wir, dass Sie gleichzeitig die Skalierungs-Ruhephase konfigurieren.
Nachdem Ihre Auto-Scaling-Gruppe Instances gestartet oder beendet hat, wartet sie auf das Ende der Ruhephase, bevor weitere Skalierungsaktivitäten gestartet werden können, die durch einfache Skalierungsrichtlinien initiiert werden. Der Zweck der Ruhephase besteht darin, dass sich Ihre Auto-Scaling-Gruppe stabilisiert und verhindert, dass weitere Instances gestartet oder beendet werden, bevor die Auswirkungen der vorherigen Skalierungsaktivität sichtbar sind.
Nehmen wir zum Beispiel an, dass eine einfache Skalierungsrichtlinie für die CPU Nutzung empfiehlt, zwei Instances zu starten. Amazon EC2 Auto Scaling startet zwei Instances und unterbricht dann die Skalierungsaktivitäten, bis die Abklingzeit endet. Nach Ende der Ruhephase können alle Skalierungen, die durch einfache Skalierungsrichtlinien ausgelöst werden, fortgesetzt werden. Wenn die CPU Auslastung erneut den höchsten Alarmschwellenwert überschreitet, wird die Auto Scaling Scaling-Gruppe wieder skaliert und die Abklingzeit wird erneut wirksam. Wenn jedoch zwei Instances ausgereicht haben, um den Metrikwert zu verringern, bleibt die aktuelle Größe der Gruppe erhalten.
Inhalt
Überlegungen
Die folgenden Überlegungen gelten bei der Arbeit mit einfachen Skalierungsrichtlinien und Skalierung von Cooldowns:
-
Richtlinien zur Zielverfolgung und zur Schrittskalierung können sofort eine Aufskalierungs-Aktivität initiieren, ohne auf das Ende der Ruhephase zu warten. Stattdessen haben die einzelnen Instances immer dann, wenn Ihre Auto Scaling Scaling-Gruppe Instances startet, eine Aufwärmphase. Weitere Informationen finden Sie unter Legen Sie die standardmäßige Instance-Vorbereitung für eine Auto-Scaling-Gruppe fest.
-
Wenn eine geplante Aktion während einer Ruhephase zum geplanten Zeitpunkt beginnt, kann sie umgehend eine Skalierung auslösen, ohne das Ende der Ruhephase abzuwarten.
-
Wenn eine Instance fehlerhaft wird, wartet Amazon EC2 Auto Scaling nicht auf das Ende der Abklingzeit, bevor die fehlerhafte Instance ersetzt wird.
-
Wenn mehrere Instances launchen oder beenden, beginnt die Ruhephase (sei es die standardmäßige oder die Skalierungsrichtlinienspezifische Ruhephase) nach erfolgtem Start oder erfolgter Beendigung der letzten Instance.
-
Wenn Sie Ihre Auto-Scaling-Gruppe manuell skalieren, wird standardmäßig nicht auf das Ende eines Cooldown-Vorgangs gewartet. Sie können dieses Verhalten jedoch außer Kraft setzen und die Standard-Abklingzeit beibehalten, wenn Sie AWS CLI oder an SDK zur manuellen Skalierung verwenden.
-
Standardmäßig wartet Elastic Load Balancing 300 Sekunden, um den Abmeldeprozess (Connection Draining) abzuschließen. Wenn sich die Gruppe hinter einer Elastic Load Balancing-Load-Balancer befindet, wartet sie, bis sich die abschließenden Instances abmelden, bevor die Ruhephase beginnt.
Lebenszyklus-Hooks können zusätzliche Verzögerungen verursachen
Wenn ein Lebenszyklus-Hook aufgerufen wird, beginnt die Ruhephase, nachdem Sie die Lebenszyklus-Aktion abgeschlossen haben oder nach Ende des Timeout-Zeitraums. Angenommen, eine Auto-Scaling-Gruppe besitzt einen Lebenszyklus-Hook für den Instance-Start. Steigt die Auslastung der Anwendung, startet die Gruppe eine Instance, um die Kapazität zu erhöhen. Da es einen Lebenszyklus-Hook gibt, wird die Instance in einen Wartezustand versetzt und Skalierungen aufgrund einfacher Skalierungsrichtlinien werden angehalten. Die Ruhephase beginnt, wenn die Instance in den Status InService
versetzt wird. Nach Ablauf der Ruhephase werden einfache Skalierungsrichtlinien wieder aufgenommen.
Wenn Elastic Load Balancing für die Skalierung aktiviert ist, beginnt die Abklingzeit, wenn die für die Kündigung ausgewählte Instance mit dem Verbindungsabbau beginnt (Abmeldeverzögerung). Die Abklingzeit wartet nicht darauf, dass der Verbindungsabbau abgeschlossen ist oder der Lifecycle-Hook seine Aktion abgeschlossen hat. Das bedeutet, dass alle Skalierungsaktivitäten aufgrund einfacher Skalierungsrichtlinien wieder aufgenommen werden können, sobald sich das Ergebnis der Skalierung in der Kapazität der Gruppe niederschlägt. Andernfalls erhöht das Warten auf den Abschluss aller drei Aktivitäten (Connection-Draining, Lebenszyklus-Hook und Ruhephase) die Zeit, welche die Auto-Scaling-Gruppe benötigt, um die Skalierung zu unterbrechen.
Ändern der standardmäßigen Ruhephase
Sie können die Standard-Abklingzeit nicht festlegen, wenn Sie zum ersten Mal eine Auto Scaling Scaling-Gruppe in der Amazon EC2 Auto Scaling Scaling-Konsole erstellen. Standardmäßig ist diese Ruhephase auf 300 Sekunden (5 Minuten) festgelegt. Bei Bedarf können Sie dies aktualisieren, nachdem die Gruppe erstellt wurde.
So ändern Sie die standardmäßige Ruhephase (Konsole)
Nach dem Erstellen der Auto-Scaling-Gruppe wählen Sie auf der Registerkarte Details, Advances configurations (Erweiterte Konfigurationen) und dann Edit (Bearbeiten) aus. Für Default cooldown (Standardmäßige Ruhephase/Cooldown-Vorgang) wählen Sie die gewünschte Zeit auf der Grundlage der Startzeit für Ihre Instance oder anderer Anwendungsanforderungen aus.
Ändern der standardmäßigen Ruhephase (AWS CLI)
Verwenden Sie die folgenden Befehle, um die standardmäßige Ruhephase für neue oder vorhandene Auto-Scaling-Gruppen zu ändern. Wenn die standardmäßige Ruhephase nicht definiert ist, wird der Standardwert von 300 Sekunden verwendet.
Verwenden Sie den Befehl, um den Wert der Standard-Abklingzeit zu bestätigen. describe-auto-scaling-groups
Festlegen einer Ruhephase für bestimmte einfache Skalierungsrichtlinien
Standardmäßig verwenden alle einfachen Skalierungsrichtlinien die für die Auto-Scaling-Gruppe definierte Standard-Ruhephase. Wenn Sie eine Ruhephase für bestimmte einfache Skalierungsrichtlinien angeben möchten, verwenden Sie den optionalen Parameter für die Ruhephase beim Erstellen oder Aktualisieren der Richtlinie. Wenn für eine Richtlinie eine Ruhephase angegeben wird, überschreibt sie die standardmäßige Ruhephase.
Eine allgemeine Verwendung für eine skalierungsrichtlinienspezifische Abklingzeit ist die Verwendung einer Richtlinienskala. Da diese Richtlinie Instances beendet, benötigt Amazon EC2 Auto Scaling weniger Zeit, um zu entscheiden, ob weitere Instances beendet werden sollen. Die Beendigung von Instances sollte viel schneller als der Start von Instances erfolgen. Die standardmäßige Ruhephase von 300 Sekunden ist daher zu lang. In diesem Fall kann eine für die Skalierungsrichtlinie spezifische Abklingzeit mit einem niedrigeren Wert für Ihre Skalierungsrichtlinie Ihnen helfen, die Kosten zu senken, da die Gruppe schneller skalieren kann.
Um einfache Skalierungsrichtlinien in der Konsole zu erstellen oder zu aktualisieren, wählen Sie die Auto Scaling (Automatische Skalierung) nachdem Sie die Gruppe erstellt haben. Verwenden Sie den Befehl, um einfache Skalierungsrichtlinien mithilfe von zu erstellen oder zu aktualisieren. AWS CLIput-scaling-policy Weitere Informationen finden Sie unter Schrittweise und einfache Skalierungsrichtlinien.