Wie entferne ich eine beendete EC2-Instance aus meiner Auto-Scaling-Gruppe?

Lesedauer: 3 Minute
0

Ich habe eine Amazon Elastic Compute Cloud (Amazon EC2)-Instance beendet. Die Instance wird jedoch in der Amazon EC2-Konsole als fehlerfrei (Healthy) und im Standby-Status (InStandby) angezeigt.

Kurze Beschreibung

EC2 Auto Scaling führt keine Zustandsprüfungen für Instances im Standby-Zustand durch. EC2 Auto Scaling ist sich der Instance-Beendigungen für Instances im Standby-Modus nicht bewusst.

Verwenden Sie eine der folgenden Methoden, um beendete Instances aus Ihrer EC2 Auto-Scaling-Gruppe zu entfernen, die immer noch als Healthy und InStandby aufgeführt sind:

  • Verwenden Sie die AWS Command Line Interface (AWS CLI), um die Instance zu beenden.
  • Trennen Sie die Instance von Ihrer EC2 Auto-Scaling-Gruppe, um sie aus der EC2 Auto-Scaling-Konsole zu entfernen.
  • Entfernen Sie die Instance aus InStandby, damit Auto Scaling mithilfe von Zustandsprüfungen feststellen kann, ob die Instance beendet wurde.

Lösung

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

Beenden Sie die Instance

Führen Sie den folgenden Befehl aus, um Ihre Instance zu beenden. Ersetzen Sie YOUR-INSTANCE-ID durch die Ressourcen-ID Ihrer Instance.

aws autoscaling terminate-instance-in-auto-scaling-group --instance-id YOUR-INSTANCE-ID --no-should-decrement-desired-capacity

**Wichtig:**Wenn Sie den Lebenszyklus-Hook EC2\ _INSTANCE\ _TERMINATING für Ihre EC2 Auto-Scaling-Gruppe konfiguriert haben, verwenden Sie CompleteLifecycleAction, um die Instance sofort aus der Gruppe zu entfernen.

Trennen Sie die Instance

Führen Sie den folgenden Befehl aus, um Ihre Instance von der EC2 Auto-Scaling-Gruppe zu trennen. Ersetzen Sie YOUR-INSTANCE-ID durch die Ressourcen-ID Ihrer Instance und YOUR_ASG_NAME durch den Namen Ihrer EC2 Auto-Scaling-Gruppe.

aws autoscaling detach-instances --instance-ids YOUR-INSTANCE-ID --no-should-decrement-desired-capacity --auto-scaling-group-name YOUR-ASG-NAME

Instance aus dem Standbymodus nehmen

1.Verwenden Sie die AWS-CLI oder die Amazon EC2-Konsole, um die maximale Größe Ihrer EC2 Auto-Scaling-Gruppe zu bearbeiten. Wenn Sie die Instance wieder in Betrieb nehmen, wird die gewünschte Kapazität um eins erhöht und darf den Maximalgrößenwert für die Gruppe nicht überschreiten. Setzen Sie die maximale Größe auf den aktuellen Wert plus die Anzahl der Instances, die an Service (1) zurückgegeben werden, oder Sie erhalten möglicherweise eine Fehlermeldung ähnlich der folgenden:

An error occurred (ValidationError) when calling the ExitStandby operation: AutoScalingGroup YOUR-ASG-NAME has min-size=1, max-size=1, and desired-size=1. To place in service 1 instance, please update the AutoScalingGroup sizes appropriately.

**Hinweis:**Nachdem Sie Ihre Instance beendet haben, startet Amazon EC2 eine Ersatz-Instance, die der gewünschten Kapazität entspricht.

2.Beenden Sie Ihre Instance mit dem folgenden Befehl aus dem Standbymodus. Achten Sie darauf, YOUR-INSTANCE-ID durch die Ressourcen-ID Ihrer Instance und YOUR\ _ASG\ _NAME durch den Namen Ihrer EC2 Auto-Scaling-Gruppe zu ersetzen.

aws autoscaling exit-standby --instance-ids YOUR-INSTANCE-ID --auto-scaling-group-name YOUR-ASG-NAME

Ähnliche Informationen

Instances vorübergehend aus Ihrer Auto-Scaling-Gruppe entfernen

AWS OFFICIAL
AWS OFFICIALAktualisiert vor einem Jahr