Manuelle Skalierung für Amazon EC2 Auto Scaling - 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.

Manuelle Skalierung für Amazon EC2 Auto Scaling

Sie können die Anzahl der EC2-Instances in Ihrer Auto Scaling Scaling-Gruppe jederzeit manuell anpassen. Dieser Vorgang der manuellen Änderung der Anzahl der Instanzen wird als manuelle Skalierung bezeichnet. Die manuelle Skalierung ist eine Alternative zur auto Skalierung, insbesondere wenn Sie einmalige Kapazitätsänderungen vornehmen möchten.

Nachdem Sie Ihre Gruppe manuell skaliert haben, nimmt Amazon EC2 Auto Scaling die normalen Auto Scaling-Aktivitäten auf der Grundlage der von Ihnen definierten Skalierungsrichtlinien und geplanten Aktionen wieder auf. Bei Gruppen, bei denen das standardmäßige Aufwärmen von Instanzen aktiviert ist, durchlaufen alle neuen Instances eine Aufwärmphase, bevor sie zu den Metriken beitragen, die für die auto Skalierung verwendet werden. Diese Aufwärmphase hilft dabei, die Gruppe auf der neuen Kapazität zu stabilisieren. Weitere Informationen finden Sie unter Legen Sie die standardmäßige Instance-Vorbereitung für eine Auto-Scaling-Gruppe fest.

Manchmal möchten Sie möglicherweise Skalierungsrichtlinien und geplante Aktionen vorübergehend deaktivieren, bevor Sie eine Gruppe manuell skalieren. Dadurch wird verhindert, dass Konflikte zwischen manuellen Skalierungsaktionen und automatisierten Skalierungsaktivitäten entstehen. Weitere Informationen finden Sie unter Skalierungsaktivitäten ausschalten.

Ändern der gewünschten Kapazität einer vorhandenen Auto-Scaling-Gruppe

Wenn Sie die gewünschte Kapazität Ihrer Auto Scaling-Gruppe ändern, verwaltet Amazon EC2 Auto Scaling den Prozess des Startens und Beendens von Instances, um die neue gewünschte Größe zu erreichen.

Console
Ändern der Größe einer Auto-Scaling-Gruppe
  1. Öffnen Sie die Amazon-EC2-Konsole unter https://console.aws.amazon.com/ec2/ und wählen Sie im Navigationsbereich Auto Scaling Groups (Auto-Scaling-Gruppen) aus.

  2. Aktivieren Sie das Kontrollkästchen neben Ihrer Auto-Scaling-Gruppe.

    Am unteren Rand der Seite wird ein geteilter Bereich angezeigt.

  3. Wählen Sie auf der Registerkarte Details die Option Gruppendetails, Bearbeiten.

  4. Erhöhen oder verringern Sie für Gewünschte Kapazität die gewünschte Kapazität. Um beispielsweise die Größe der Gruppe um eins zu erhöhen, geben Sie ein, wenn der aktuelle Wert lautet 12.

    Wenn Ihr neuer Wert für die gewünschte Kapazität größer als die gewünschte Mindestkapazität und die gewünschte Höchstkapazität ist, wird die gewünschte Höchstkapazität automatisch auf den neuen Wert für die gewünschte Kapazität erhöht.

  5. Wählen Sie Aktualisieren aus, wenn Sie fertig sind.

Stellen Sie sicher, dass die von Ihnen angegebene Gruppengröße dazu geführt hat, dass dieselbe Anzahl von Instances gestartet wurde. Wenn Sie beispielsweise die Gruppengröße um eins erhöht haben, stellen Sie sicher, dass Ihre Auto Scaling Scaling-Gruppe eine zusätzliche Instance gestartet hat.

Überprüfen Sie wie folgt, ob sich die Größe der Auto-Scaling-Gruppe geändert hat:
  1. Auf der Registerkarte Aktivität können Sie im Aktivitätsverlauf den Fortschritt der Aktivitäten anzeigen, die der Auto Scaling Scaling-Gruppe zugeordnet sind. In der Status-Spalte wird der aktuelle Status Ihrer Instance angezeigt. Während die Instance gestartet wird, zeigt die Statusspalte Not yet in service an. Nach dem Start der Instance ändert sich der Status in Successful. Sie können auch das Aktualisierungssymbol verwenden, um den aktuellen Status Ihrer Instance zu sehen. Weitere Informationen finden Sie unter Eine Skalierung für eine Auto-Scaling-Gruppe überprüfen.

  2. Auf der Registerkarte Instanzverwaltung unter Instances können Sie den Status der Instance einsehen. Es dauert einige Zeit, bis die Instance startet.

    • In der Spalte Lifecycle (Lebenszyklus) wird Ihnen der Zustand Ihrer Instance angezeigt. Die Instance befindet sich zunächst im Status Pending. Wenn eine Instance für den Empfang von Datenverkehr bereit ist, lautet der Status InService.

    • In der Spalte Health Status wird das Ergebnis der Amazon EC2 Auto Scaling Scaling-Zustandsprüfungen für Ihre Instance angezeigt.

AWS CLI

Im folgenden Beispiel wird davon ausgegangen, dass Sie eine Auto-Scaling-Gruppe mit einer minimalen Größe von 1 und einer maximalen Größe von 5 erstellt haben. Also verfügt die Gruppe derzeit über eine laufenden Instance.

Ändern der Größe einer Auto-Scaling-Gruppe

Verwenden Sie den Befehl set-desired-capacity, um die Größe Ihrer Auto-Scaling-Gruppe wie im folgenden Beispiel zu ändern:

aws autoscaling set-desired-capacity --auto-scaling-group-name my-asg \ --desired-capacity 2

Wenn Sie die standardmäßige Ruhephase für Ihre Auto-Scaling-Gruppe berücksichtigen möchten, müssen Sie die Option –-honor-cooldown wie im folgenden Beispiel dargestellt angeben. Weitere Informationen finden Sie unter Skalierungsruhephasen für Amazon EC2 Auto Scaling.

aws autoscaling set-desired-capacity --auto-scaling-group-name my-asg \ --desired-capacity 2 --honor-cooldown
So überprüfen Sie die Größe Ihrer Auto-Scaling-Gruppe

Verwenden Sie den Befehl describe-auto-scaling-groups, um wie im folgenden Beispiel zu bestätigen, dass sich die Größe der Auto-Scaling-Gruppe geändert hat:

aws autoscaling describe-auto-scaling-groups --auto-scaling-group-name my-asg

Im Folgenden finden Sie eine Beispielausgabe, die Details zur Gruppe und den gestarteten Instances enthält.

{ "AutoScalingGroups": [ { "AutoScalingGroupName": "my-asg", "AutoScalingGroupARN": "arn", "LaunchTemplate": { "LaunchTemplateName": "my-launch-template", "Version": "1", "LaunchTemplateId": "lt-050555ad16a3f9c7f" }, "MinSize": 1, "MaxSize": 5, "DesiredCapacity": 2, "DefaultCooldown": 300, "AvailabilityZones": [ "us-west-2a" ], "LoadBalancerNames": [], "TargetGroupARNs": [], "HealthCheckType": "EC2", "HealthCheckGracePeriod": 300, "Instances": [ { "ProtectedFromScaleIn": false, "AvailabilityZone": "us-west-2a", "LaunchTemplate": { "LaunchTemplateName": "my-launch-template", "Version": "1", "LaunchTemplateId": "lt-050555ad16a3f9c7f" }, "InstanceId": "i-05b4f7d5be44822a6", "InstanceType": "t3.micro", "HealthStatus": "Healthy", "LifecycleState": "Pending" }, { "ProtectedFromScaleIn": false, "AvailabilityZone": "us-west-2a", "LaunchTemplate": { "LaunchTemplateName": "my-launch-template", "Version": "1", "LaunchTemplateId": "lt-050555ad16a3f9c7f" }, "InstanceId": "i-0c20ac468fa3049e8", "InstanceType": "t3.micro", "HealthStatus": "Healthy", "LifecycleState": "InService" } ], "CreatedTime": "2019-03-18T23:30:42.611Z", "SuspendedProcesses": [], "VPCZoneIdentifier": "subnet-c87f2be0", "EnabledMetrics": [], "Tags": [], "TerminationPolicies": [ "Default" ], "NewInstancesProtectedFromScaleIn": false, "ServiceLinkedRoleARN": "arn", "TrafficSources": [] } ] }

DesiredCapacity zeigt den neuen Wert. Ihre Auto-Scaling-Gruppe hat eine zusätzliche Instance gestartet.

Beenden einer Instance in Ihrer Auto-Scaling-Gruppe (AWS CLI)

Es kann vorkommen, dass Sie Ihre Auto-Scaling-Gruppe manuell abskalieren möchten, aber eine bestimmte Instance beenden möchten. Sie können Ihre Auto-Scaling-Gruppe manuell skalieren, indem Sie den terminate-instance-in-auto-scaling-group-Befehl verwenden und die ID der Instance, die Sie beenden möchten, sowie die Option --should-decrement-desired-capacity angeben, wie im folgenden Beispiel gezeigt.

aws autoscaling terminate-instance-in-auto-scaling-group \ --instance-id i-026e4c9f62c3e448c --should-decrement-desired-capacity

Im Folgenden finden Sie eine Beispielausgabe, die Details zur Skalierungsaktivität enthält.

{ "Activities": [ { "ActivityId": "b8d62b03-10d8-9df4-7377-e464ab6bd0cb", "AutoScalingGroupName": "my-asg", "Description": "Terminating EC2 instance: i-026e4c9f62c3e448c", "Cause": "At 2023-09-23T06:39:59Z instance i-026e4c9f62c3e448c was taken out of service in response to a user request, shrinking the capacity from 1 to 0.", "StartTime": "2023-09-23T06:39:59.015000+00:00", "StatusCode": "InProgress", "Progress": 0, "Details": "{\"Subnet ID\":\"subnet-6194ea3b\",\"Availability Zone\":\"us-west-2c\"}" } ] }

Diese Option ist in der Konsole nicht verfügbar. Sie können jedoch die Instance-Seite der Amazon EC2 EC2-Konsole verwenden, um eine Instance in Ihrer Auto Scaling Scaling-Gruppe zu beenden. Wenn Sie dies tun, erkennt Amazon EC2 Auto Scaling, dass die Instance nicht mehr läuft, und ersetzt sie automatisch im Rahmen der Zustandsprüfung. Nach dem Beenden der Instance dauert es ein oder zwei Minuten, bis eine neue Instance gestartet wird. Informationen zum Beenden einer Instance finden Sie unter Terminate an Instance im Amazon EC2 EC2-Benutzerhandbuch.

Wenn Sie Instances in Ihrer Gruppe beenden und dies zu einer ungleichmäßigen Verteilung auf die Availability Zones führt, gleicht Amazon EC2 Auto Scaling die Gruppe neu aus, um eine gleichmäßige Verteilung wiederherzustellen, sofern Sie den Vorgang nicht unterbrechen. AZRebalance Weitere Informationen finden Sie unter Amazon EC2 Auto Scaling Scaling-Prozesse aussetzen und fortsetzen.