Wie behebe ich Skalierungsprobleme mit meiner Amazon EC2 Auto Scaling-Gruppe?

Lesedauer: 5 Minute
0

Meine Amazon Elastic Compute Cloud (Amazon EC2) Auto Scaling-Gruppe skaliert nicht richtig. Wie behebe ich das Problem?

Lösung

Führen Sie auf der Grundlage Ihrer Skalierungsprobleme die folgenden Überprüfungen Ihrer Amazon EC2 Auto Scaling-Konfigurationen durch:

Meine Amazon EC2 Auto Scaling-Gruppe folgt nicht der von mir konfigurierten Skalierungsrichtlinie

Überprüfen Sie Ihre Skalierungsrichtlinien, um festzustellen, ob ein Ereignis mehr als eine Richtlinie auslöst. Wenn zwei Richtlinien gleichzeitig bewertet werden, folgt Amazon EC2 Auto Scaling der Richtlinie mit der größeren Wirkung. Nehmen wir beispielsweise an, Sie haben eine Richtlinie zum Hinzufügen von zwei Instances und eine weitere Richtlinie zum Hinzufügen von vier Instances. In diesem Fall fügt Amazon EC2 Auto Scaling vier Instances hinzu, wenn beide Richtlinien gleichzeitig ausgelöst werden.

Meine Amazon EC2 Auto Scaling-Gruppe skaliert auf statt ab

Überprüfen Sie, ob eine Scale-Out-Richtlinie und eine Scale-In-Richtlinie gleichzeitig ausgelöst werden. Wenn sowohl Scale-Out- als auch Scale-In-Richtlinien gleichzeitig ausgelöst werden, folgt Amazon EC2 Auto Scaling der Scale-Out-Richtlinie, um die Verfügbarkeit zu bestätigen.

Gehen Sie wie folgt vor, um zu überprüfen, ob Scale-Out- und Scale-In-Richtlinien gleichzeitig ausgelöst werden:

  • Überprüfen Sie Ihren Alarmverlauf von der Amazon CloudWatch-Konsole aus, um zu überprüfen, ob die beiden zugehörigen Alarme gleichzeitig ausgelöst wurden.
  • Überprüfen Sie den Aktivitätsverlauf Ihrer Auto-Scaling-Gruppe von der Amazon EC2-Konsole aus, um zu überprüfen, ob die zugehörigen geplanten Aktionen gleichzeitig ausgelöst wurden.

Meine Amazon EC2 Auto Scaling-Gruppe reagiert nicht auf einen CloudWatch-Alarm oder einen Ersatz für eine Zustandsprüfung

  • Prüfen Sie, ob Ihre Auto-Scaling-Gruppe ihre Mindest- oder Höchstanzahl an Instances bereits erreicht hat. Um die angegebene Mindest- oder Höchstkapazität zu ermitteln, überprüfen Sie die Details Ihrer Amazon EC2 Auto Scaling-Gruppe mithilfe der Amazon EC2-Konsole. Amazon EC2 Auto Scaling zeigt im Aktivitätsverlauf der Gruppe keine Fehlermeldung an, wenn die Skalierung aufgrund der Mindest- oder Maximalkapazität blockiert ist.
  • Überprüfen Sie die unterbrochenen Prozesse für Ihre Auto Scaling-Gruppe. Amazon EC2 Auto Scaling kann eine CloudWatch-Skalierungsrichtlinie für unterbrochene Prozesse zum Beenden, Starten oder für Alarmmeldungen nicht auswerten. Amazon EC2 Auto Scaling kann keinen Ersatz für eine Zustandsprüfung für unterbrochene ReplaceUnhealthy- oder HealthCheck-Prozesse evaluieren.
  • Wenn Sie eine einfache Skalierungsrichtlinie verwenden, überprüfen Sie, ob sich Ihre Instances in einer Ruhephase befinden. Einfache Skalierungsrichtlinien bleiben bis nach Ablauf der Ruhephase ausgesetzt.
  • Wenn Sie eine Richtlinie zur schrittweisen Skalierung oder eine Richtlinie zur Zielverfolgung verwenden, suchen Sie nach einem gerade ausgeführten Instance-Warmup. Wenn Sie eine Warmup-Zeit angegeben haben, zählt die Auto-Scaling-Gruppe Instances erst nach dem Warmup zu den Gruppen-Metriken.
  • Überprüfen Sie Ihren CloudWatch-Alarm, um sicherzustellen, dass er die Skalierungsaktivität korrekt auslöst. Weitere Informationen finden Sie unter Wie stelle ich sicher, dass Amazon CloudWatch-Alarme die Skalierung meiner Auto-Scaling-Gruppe auslösen?
  • Prüfen Sie, ob für Ihre Amazon EC2 Auto Scaling-Gruppe ein Lebenszyklus-Hook konfiguriert ist. Wenn ein Lebenszyklus-Hook vorhanden ist, müssen Sie möglicherweise entweder den Lebenszyklus-Hook abschließen oder warten, bis der Timeout-Zeitraum abgelaufen ist. Weitere Informationen finden Sie im folgenden Abschnitt „Meine Instance bleibt während der Skalierungsaktivität im Status Pending:Wait oder Terminating:Wait hängen“.

Meine Instance bleibt während der Skalierungsaktivität im Status Pending:Wait oder Terminating:Wait hängen

Wenn Sie einen Lebenszyklus-Hook für Ihre Amazon EC2 Auto Scaling-Gruppe konfiguriert haben, wird eine Instance möglicherweise im Status Pending:Wait oder Terminating:Wait angehalten. Mit Ausnahme von Richtlinien zur schrittweisen Skalierung werden andere Skalierungsaktivitäten ausgesetzt, bis die Instance den Status Pending:Wait oder Terminating:Wait verlässt.

Führen Sie den folgenden Befehl der AWS Command Line Interface (AWS CLI) aus, um festzustellen, ob Sie einen Lebenszyklus-Hook konfiguriert haben:

aws autoscaling describe-lifecycle-hooks --auto-scaling-group-name my-asg-name

Hinweis: Wenn Sie beim Ausführen von AWS-CLI-Befehlen Fehler erhalten, stellen Sie sicher, dass Sie die neueste Version der AWS-CLI verwenden.

Um den Skalierungsprozess fortzusetzen, warten Sie, bis der Timeout-Zeitraum abgelaufen ist (standardmäßig eine Stunde), oder schließen Sie den Lebenszyklus-Hook ab.

Informationen zur Verwaltung von Lebenszyklus-Hooks über die Amazon EC2-Konsole finden Sie unter Amazon EC2 Auto Scaling Lebenszyklus-Hooks.

Meine Amazon EC2 Auto Scaling-Gruppe reagiert nicht auf eine geplante Aktion

  • Überprüfen Sie die Zeitzone, die Sie für die geplante Aktion konfiguriert haben. Sie müssen Aktionen in koordinierter Weltzeit (UTC) planen.
  • Überprüfen Sie den Aktivitätsverlauf Ihrer Amazon EC2 Auto Scaling-Gruppe von der Amazon EC2-Konsole aus.Überprüfen Sie, ob es Skalierungsaktivitäten gibt, die mit Ihrer geplanten Aktion in Konflikt stehen.
  • Wenn Sie Scale-Out- und Scale-In-Aktionen planen, überprüfen Sie, ob Sie eine Aktion für die Aufskalierung und eine weitere Aktion für die Abskalierung geplant haben. Sie können nicht dieselbe geplante Aktion sowohl für die Abskalierung als auch für die Aufskalierung verwenden.

Ich habe mein Amazon EC2-Instance-Kontingent erreicht

Wenn Ihre Amazon EC2 Auto Scaling-Gruppe aufgrund Ihres EC2-Instance-Kontingents nicht skaliert, erhalten Sie eine Meldung ähnlich der folgenden:

Launching a new EC2 instance. Status Reason: Your quota allows for 0 more running instance(s).
You requested at least 1. Launching EC2 instance failed.

Um das Kontingent zu erhöhen, wenden Sie sich an den AWS Support. Weitere Informationen zu Kontingenten finden Sie unter AWS Service Quotas.


Ähnliche Informationen

Auto Scaling Lebenszyklus

Problembehandlung bei Amazon EC2 Auto Scaling

AWS OFFICIAL
AWS OFFICIALAktualisiert vor 3 Jahren