

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.

# Stufenskalierungsrichtlinien für Application Auto Scaling
<a name="application-auto-scaling-step-scaling-policies"></a>

Eine schrittweise Skalierungsrichtlinie skaliert die Kapazität Ihrer Anwendung in vordefinierten Schritten auf der Grundlage von CloudWatch Alarmen. Sie können separate Skalierungsrichtlinien definieren, um die Aufskalierung (Erhöhung der Kapazität) und die Abskalierung (Verringerung der Kapazität) zu handhaben, wenn ein Alarmschwellenwert überschritten wird.

Mit Richtlinien zur schrittweisen Skalierung erstellen und verwalten Sie die CloudWatch Alarme, die den Skalierungsprozess auslösen. Wenn ein Alarm ausgelöst wird, initiiert Application Auto Scaling die mit diesem Alarm verbundene Skalierungsrichtlinie.

Die Richtlinie zur schrittweisen Skalierung skaliert die Kapazität anhand einer Reihe von Anpassungen, die als *schrittweise Anpassungen* bezeichnet werden. Die Größe der Anpassung richtet sich nach dem Ausmaß der Alarmüberschreitung.
+ Wenn der Verstoß den ersten Schwellenwert überschreitet, wendet Application Auto Scaling die erste schrittweise Anpassung an.
+ Wenn der Verstoß den zweiten Schwellenwert überschreitet, wendet Application Auto Scaling die zweite schrittweise Anpassung an, und so weiter.

Auf diese Weise kann die Skalierungsrichtlinie sowohl auf kleinere als auch auf größere Änderungen der Alarmmetrik angemessen reagieren.

Die Richtlinie reagiert auch während einer laufenden Skalierungsaktivität auf weitere Alarmverstöße. Das bedeutet, dass Application Auto Scaling alle Alarmverstöße auswertet, sobald sie auftreten. Eine Ruhephase dient zum Schutz vor zu hoher Skalierung aufgrund mehrerer schnell aufeinanderfolgender Alarmverstöße.

Wie die Ziel-Nachverfolgung kann auch die schrittweise Skalierung dazu beitragen, die Kapazität Ihrer Anwendung automatisch zu skalieren, wenn sich der Datenverkehr ändert. Richtlinien für die Ziel-Nachverfolgung sind jedoch einfacher zu implementieren und zu verwalten, wenn eine stetige Skalierung erforderlich ist.

**Unterstützte skalierbare Ziele**

Sie können Richtlinien zur schrittweisen Skalierung mit den folgenden skalierbaren Zielen verwenden:
+ WorkSpaces Anwendungsflotten
+ Aurora-DB-Cluster
+ ECS-Services
+ EMR-Cluster
+ SageMaker Varianten von KI-Endpunkten
+ SageMaker Komponenten der KI-Inferenz
+ SageMaker Serverlos bereitgestellte Parallelität mit KI
+ Spot Flotten
+ Benutzerdefinierte Ressourcen

**Topics**
+ [Wie funktioniert die schrittweise Skalierung](step-scaling-policy-overview.md)
+ [Erstellen Sie eine Skalierungsrichtlinie](create-step-scaling-policy-cli.md)
+ [Beschreiben Sie Richtlinien für die Stufenskalierung](describe-step-scaling-policy.md)
+ [Löschen einer Stufenskalierungsrichtlinie](delete-step-scaling-policy.md)

# So funktioniert Step Scaling für Application Auto Scaling
<a name="step-scaling-policy-overview"></a>

In diesem Thema wird beschrieben, wie die schrittweise Skalierung funktioniert, und es werden die wichtigsten Elemente einer schrittweisen Skalierungsrichtlinie vorgestellt.

**Topics**
+ [Funktionsweise](#step-scaling-how-it-works)
+ [Schrittweise Anpassungen](#as-scaling-steps)
+ [Skalierungsanpassungstypen](#as-scaling-adjustment)
+ [Ruhephase](#step-scaling-cooldown)
+ [Häufig verwendete Befehle](#step-scaling-policy-commonly-used-commands)
+ [Überlegungen](#step-scaling-considerations)
+ [Zugehörige Ressourcen](#step-scaling-related-resources)
+ [Konsolenzugriff](#step-scaling-console-access)

## Funktionsweise
<a name="step-scaling-how-it-works"></a>

Um Step Scaling zu verwenden, erstellen Sie einen CloudWatch Alarm, der eine Metrik für Ihr skalierbares Ziel überwacht. Sie definieren die Metrik, den Schwellenwert und die Anzahl der Bewertungszeiträume, die einen Alarmverstoß bestimmen. Außerdem erstellen Sie eine Richtlinie zur schrittweisen Skalierung, die definiert, wie die Kapazität skaliert werden soll, wenn der Alarmschwellenwert überschritten wird, und verknüpfen sie mit Ihrem skalierbaren Ziel.

Sie fügen die schrittweisen Anpassungen in der Richtlinie hinzu. Sie können verschiedene schrittweise Anpassungen basierend auf der Größe der Alarmüberschreitung definieren. Beispiel:
+ Aufskalierung um 10 Kapazitätseinheiten, wenn die Alarmmetrik 60 Prozent erreicht
+ Aufskalierung um 30 Kapazitätseinheiten, wenn die Alarmmetrik 75 Prozent erreicht
+ Aufskalierung um 40 Kapazitätseinheiten, wenn die Alarmmetrik 85 Prozent erreicht

Wenn der Alarmschwellenwert für die angegebene Anzahl von Auswertungszeiträumen überschritten wird, wendet Application Auto Scaling die in der Richtlinie definierten schrittweisen Anpassungen an. Die Anpassungen können bei weiteren Überschreitungen des Alarms fortgesetzt werden, bis der Alarmstatus `OK` wieder erreicht ist. 

Zwischen den Skalierungsaktivitäten liegen Ruhephasen, um schnelle Kapazitätsschwankungen zu vermeiden. Sie können die Ruhephasen für Ihre Richtlinie optional konfigurieren. 

## Schrittweise Anpassungen
<a name="as-scaling-steps"></a>

Wenn Sie eine Richtlinie zur schrittweise Skalierung erstellen, geben Sie eine oder mehrere Stufenanpassungen an, die automatisch die Kapazität des Ziels dynamisch basierend auf der Größe der Alarmüberschreitung skalieren. Jede Schrittanpassung gibt Folgendes an:
+ Eine Untergrenze für den Metrikwert
+ Eine Obergrenze für den Metrikwert
+ Den Skalierungswert basierend auf dem Skalierungsanpassungstyp

CloudWatch aggregiert metrische Datenpunkte auf der Grundlage der Statistik für die mit Ihrem CloudWatch Alarm verknüpfte Metrik. Wenn der Alarm ausgelöst wird, wird die entsprechende Skalierungsrichtlinie ausgelöst. Application Auto Scaling wendet den angegebenen Aggregationstyp auf die neuesten metrischen Datenpunkte von an CloudWatch (im Gegensatz zu den metrischen Rohdaten). Dieser aggregierte Metrikwert wird anschließend mit der Ober- und der Untergrenze verglichen, die durch die Schrittanpassungen definiert wurden. Dadurch wird ermittelt, welche Schrittanpassung auszuführen ist. 

Sie geben die Ober- und Untergrenzen relativ zum Verletzungsschwellenwert an. Nehmen wir zum Beispiel an, Sie haben einen CloudWatch Alarm ausgelöst und eine Scale-Out-Richtlinie für den Fall festgelegt, dass die Metrik über 50 Prozent liegt. Dann haben Sie einen zweiten Alarm und eine Abskalierungsrichtlinie für den Fall erstellt, dass die Metrik unter 50 Prozent liegt. Sie haben eine Reihe von schrittweisen Anpassungen mit dem Anpassungstyp `PercentChangeInCapacity` für jede Richtlinie vorgenommen: 


**Beispiel: Schrittanpassungen für die Richtlinie zur horizontalen Skalierung nach oben**  

| **Untergrenze** | **Obergrenze** | **Anpassung** | 
| --- | --- | --- | 
|  0  |  10  |  0  | 
|  10  |  20  |  10  | 
|  20  |  Null  |  30  | 


**Beispiel: Schrittanpassungen für die Richtlinie zur horizontalen Skalierung nach unten**  

| **Untergrenze** | **Obergrenze** | **Anpassung** | 
| --- | --- | --- | 
|  -10  |  0  |  0  | 
|  -20  |  -10  |  -10  | 
|  Null  |  -20  |  -30  | 

Dadurch wird die folgende Skalierungskonfiguration erstellt.

```
Metric value

-infinity          30%    40%          60%     70%             infinity
-----------------------------------------------------------------------
          -30%      | -10% | Unchanged  | +10%  |       +30%        
-----------------------------------------------------------------------
```

Angenommen, Sie verwenden diese Skalierungskonfiguration für ein skalierbares Ziel mit einer Kapazität von 10. Die folgenden Punkte fassen das Verhalten der Skalierungskonfiguration in Bezug auf die Kapazität des skalierbaren Ziels zusammen:
+ Die ursprüngliche Kapazität wird aufrechterhalten, solange der aggregierte Metrikwert größer als 40 und kleiner als 60 ist.
+ Wenn der Metrikwert 60 erreicht, erhöht Application Auto Scaling die Kapazität des skalierbaren Ziels um 1 auf 11. Dies basiert auf der zweiten Schrittanpassung der Richtlinie für die horizontale Skalierung nach oben (Erhöhen um 10 Prozent von 10). Nachdem die neue Kapazität hinzugefügt wurde, erhöht Application Auto Scaling die aktuelle Kapazität auf 11. Steigt der metrische Wert auch nach dieser Kapazitätserhöhung auf 70, erhöht Application Auto Scaling die Zielkapazität um 3 auf 14. Dies basiert auf der dritten Schrittanpassung der Richtlinie für die horizontale Skalierung nach oben (Erhöhen um 30 Prozent von 11, 3,3 abgerundet auf 3).
+ Wenn der Metrikwert 40 erreicht, verringert Application Auto Scaling die Kapazität des skalierbaren Ziels um 1 auf 13, basierend auf der zweiten Anpassungsstufe der Scale-in-Richtlinie (Entfernen von 10 Prozent von 14, 1,4, abgerundet auf 1). Wenn der metrische Wert auch nach dieser Kapazitätsverringerung auf 30 fällt, verringert Application Auto Scaling die Zielkapazität um 3 auf 10, basierend auf der dritten Anpassungsstufe der Scale-in-Richtlinie (Entfernen von 30 Prozent von 13, 3,9, abgerundet auf 3).

Wenn Sie die Schrittanpassungen für Ihre Skalierungsrichtlinie angeben, beachten Sie Folgendes:
+ Die Bereiche der Schrittanpassungen dürfen sich nicht überschneiden oder Lücken aufweisen.
+ Nur eine Schrittanpassung darf über einen Nullwert als Untergrenze verfügen (negative Unendlichkeit). Verfügt eine Schrittanpassung über eine negative Untergrenze, muss eine Schrittanpassung mit einem Nullwert als Untergrenze vorhanden sein.
+ Nur eine Schrittanpassung darf über einen Nullwert als Obergrenze verfügen (positive Unendlichkeit). Verfügt eine Schrittanpassung über eine positive Obergrenze, muss eine Schrittanpassung mit einem Nullwert als Obergrenze vorhanden sein.
+ Ober- und Untergrenze einer Schrittanpassung können nicht gleichzeitig über einen Nullwert verfügen.
+ Liegt der Metrikwert oberhalb des Verletzungsschwellenwerts, wird die Untergrenze eingeschlossen und die Obergrenze ausgeschlossen. Liegt der Metrikwert unterhalb des Verletzungsschwellenwerts, wird die Untergrenze ausgeschlossen und die Obergrenze eingeschlossen.

## Skalierungsanpassungstypen
<a name="as-scaling-adjustment"></a>

Sie können eine Skalierungsrichtlinie definieren, welche die optimale Skalierungsaktion basierend auf dem von Ihnen gewählten Skalierungsanpassungstyp ausführt. Sie können den Anpassungstyp als Prozentsatz der aktuellen Kapazität Ihres skalierbaren Ziels oder in absoluten Zahlen angeben.

Application Auto Scaling unterstützt die folgenden Anpassungstypen für Stufenskalierungsrichtlinien:
+ **ChangeInCapacity**— Erhöht oder verringert die aktuelle Kapazität des skalierbaren Ziels um den angegebenen Wert. Ein positiver Wert erhöht die Kapazität, ein negativer Anpassungswert verringert die Kapazität. Ein Beispiel: Wenn die aktuelle Kapazität 3 ist und die Anpassung 5 beträgt, fügt Application Auto Scaling der Kapazität 5 hinzu, so dass sie insgesamt 8 beträgt.
+ **ExactCapacity**— Ändert die aktuelle Kapazität des skalierbaren Ziels auf den angegebenen Wert. Geben Sie bei diesem Anpassungstyp einen nicht-negativen Wert an. Ein Beispiel: Wenn die aktuelle Kapazität 3 ist und die Anpassung 5 beträgt, ändert Application Auto Scaling die Kapazität auf 5.
+ **PercentChangeInCapacity**— Erhöht oder verringert die aktuelle Kapazität des skalierbaren Ziels um den angegebenen Prozentsatz. Ein positiver Wert erhöht die Kapazität, ein negativer Anpassungswert verringert die Kapazität. Ein Beispiel: Wenn die aktuelle Kapazität 10 ist und die Anpassung 10 Prozent beträgt, fügt Application Auto Scaling 1 zur Kapazität hinzu, so dass sie insgesamt 11 beträgt.

  Wenn der resultierende Wert keine ganze Zahl ist, rundet Application Auto Scaling ihn wie folgt:
  + Werte größer als 1 werden abgerundet. Beispielsweise wird `12.7` auf `12` gerundet.
  + Werte zwischen 0 und 1 werden auf 1 gerundet. Beispielsweise wird `.67` auf `1` gerundet.
  + Werte zwischen 0 und -1 werden auf -1 gerundet. Beispielsweise wird `-.58` auf `-1` gerundet.
  + Werte kleiner als -1 werden aufgerundet. Beispielsweise wird `-6.67` auf `-6` gerundet.

  Mit **PercentChangeInCapacity**können Sie auch den Mindestbetrag für die Skalierung mithilfe des `MinAdjustmentMagnitude` Parameters angeben. Angenommen, Sie erstellen eine Richtlinie zum Hinzufügen von 25 Prozent und geben an, dass mindestens 2 hinzugefügt werden sollen. Hat das skalierbare Ziel eine Kapazität von 4 und wird die Skalierungsrichtlinie ausgeführt, ist 25 Prozent von 4 gleich 1. Da Sie jedoch eine Mindestschrittweite von 2 angegeben haben, fügt Application Auto Scaling 2 hinzu.

## Ruhephase
<a name="step-scaling-cooldown"></a>

In Ihrer Richtlinie für die schrittweise Skalierung können Sie optional eine Ruhephase definieren.

Eine Ruhephase ist die Zeitspanne, die die Skalierungsrichtlinie warten muss, bis eine vorherige Skalierungsaktivität wirksam wird.

Es gibt zwei Möglichkeiten, die Verwendung von Ruhephasen für eine Konfiguration mit schrittweiser Skalierung zu planen:
+ Mit den Richtlinien zur Ruhephase der Aufskalierung wird beabsichtigt, kontinuierlich (aber nicht übermäßig) aufzuskalieren. Nachdem Application Auto Scaling unter Verwendung einer Skalierungsrichtlinie erfolgreich aufskaliert wurde, wird die Berechnung der Ruhezeit gestartet. Eine Skalierungsrichtlinie erhöht die gewünschte Kapazität nicht erneut, es sei denn, es wird eine größere Aufskalierung ausgelöst oder die Ruhephase endet. Während die Scale-Out-Ruhephase wirksam ist, wird die durch die initiierende horizontale Skalierung nach oben (Scale-Out) hinzugefügte Kapazität als Teil der gewünschten Kapazität für die nächste horizontale Skalierung nach oben berechnet.
+ Mit den Richtlinien der Ruhephase für die Abskalierung ist beabsichtigt, die Abskalierung konservativ durchzuführen, um die Verfügbarkeit Ihrer Anwendung zu schützen, sodass Abskalierungsaktivitäten blockiert werden, bis die Ruhephase für die Abskalierung abgelaufen ist. Wenn jedoch ein anderer Alarm während der Abkühlphase nach einer Abskalier-Aktivität eine Aufskalier-Aktivität auslöst, wird das Ziel durch Application Auto Scaling sofort abskaliert. In diesem Fall wird die Ruhephase für die Abskalierung angehalten und nicht abgeschlossen.

Wenn beispielsweise eine Spitze im Datenverkehr auftritt, wird ein Alarm ausgelöst und Application Auto Scaling fügt automatisch Kapazität hinzu, um die erhöhte Last zu bewältigen. Wenn Sie eine Ruhephase für Ihre Richtlinie für Aufskalierung festlegen und der Alarm die Richtlinie auslöst, um die Kapazität um 2 zu erhöhen, wird die Skalierung erfolgreich abgeschlossen und die Ruhephase für die Aufskalierung beginnt. Wenn ein Alarm die gleiche Richtlinie, aber mit einer aggressiveren Stufenanpassung, z. B. um 3, während der Ruhephase erneut auslöst, wird die vorherige Erhöhung um 2 als Teil der aktuellen Kapazität betrachtet. Daher wird der Kapazität nur 1 hinzugefügt. Dies ermöglicht eine schnellere Skalierung als das Warten auf den Ablauf der Ruhephase, ohne dass Sie mehr Kapazität hinzufügen, als Sie benötigen.

Die Ruhephase wird in Sekunden gemessen und gilt nur für Skalierungsrichtlinien-bezogene Skalierungen. Wenn eine geplante Aktion während einer Ruhephase zum geplanten Zeitpunkt beginnt, kann sie umgehend eine Skalierung auslösen, ohne das Ablaufen der Ruhephase abzuwarten.

Der Standardwert ist 300, wenn kein Wert angegeben wird.

## Häufig verwendete Befehle zur Erstellung, Verwaltung und Löschung von Skalierungsrichtlinien
<a name="step-scaling-policy-commonly-used-commands"></a>

Zu den häufig verwendeten Befehlen für die Arbeit mit Skalierungsrichtlinien gehören: 
+ [register-scalable-target](https://docs.aws.amazon.com/cli/latest/reference/application-autoscaling/register-scalable-target.html)um Ressourcen als skalierbare Ziele zu registrieren AWS oder anzupassen (eine Ressource, die Application Auto Scaling skalieren kann) und die Skalierung auszusetzen und wieder aufzunehmen. 
+ [put-scaling-policy](https://docs.aws.amazon.com/cli/latest/reference/application-autoscaling/put-scaling-policy.html)um Skalierungsrichtlinien für ein vorhandenes skalierbares Ziel hinzuzufügen oder zu ändern.
+  [describe-scaling-activities](https://docs.aws.amazon.com/cli/latest/reference/application-autoscaling/describe-scaling-activities.html)um Informationen über Skalierungsaktivitäten in einer AWS Region zurückzugeben. 
+ [describe-scaling-policies](https://docs.aws.amazon.com/cli/latest/reference/application-autoscaling/describe-scaling-policies.html)um Informationen über Skalierungsrichtlinien in einer AWS Region zurückzugeben.
+ [delete-scaling-policy](https://docs.aws.amazon.com/cli/latest/reference/application-autoscaling/delete-scaling-policy.html)um eine Skalierungsrichtlinie zu löschen. 

## Überlegungen
<a name="step-scaling-considerations"></a>

Bei der Arbeit mit Richtlinien zur schrittweisen Skalierung ist Folgendes zu beachten:
+ Überlegen Sie, ob Sie die Schrittanpassungen in der Anwendung genau genug vorhersagen können, um die schrittweise Skalierung zu verwenden. Wenn Ihre Skalierungsmetrik die Kapazität des skalierbaren Ziels proportional vergrößert oder verkleinert, raten wir stattdessen zur Verwendung einer Skalierungsrichtlinie für die Ziel-Nachverfolgung. Sie haben weiterhin die Möglichkeit, die Schrittskalierung als zusätzliche Richtlinie für eine erweiterte Konfiguration zu verwenden. Beispiel: Sie können eine striktere Antwort konfigurieren, sobald die Auslastung ein bestimmtes Niveau erreicht.
+ Achten Sie darauf, einen angemessenen Abstand zwischen den Schwellenwerten für Scale-Out und Scale-In zu wählen, um ein Flattern zu verhindern. Flattern beschreibt eine Endlosschleife aus Auf- und Abwärtsskalieren. Das heißt, wenn eine Skalierungsaktion durchgeführt wird, würde sich der Metrikwert ändern und eine weitere Skalierungsaktion in der umgekehrten Richtung starten.

## Zugehörige Ressourcen
<a name="step-scaling-related-resources"></a>

Informationen zum Erstellen von Richtlinien zur schrittweisen Skalierung für Auto Scaling-Gruppen finden Sie unter [Schrittweise und einfache Skalierungsrichtlinien für Amazon EC2 Auto Scaling](https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-scaling-simple-step.html) im *Benutzerhandbuch zu Amazon EC2 Auto Scaling*. 

## Konsolenzugriff
<a name="step-scaling-console-access"></a>

Der Konsolenzugriff zum Anzeigen, Hinzufügen, Aktualisieren oder Entfernen von Richtlinien zur schrittweisen Skalierung für die Ziel-Nachverfolgung auf skalierbaren Ressourcen hängt von der verwendeten Ressource ab. Weitere Informationen finden Sie unter [AWS-Services die Sie mit Application Auto Scaling verwenden können](integrated-services-list.md).

# Erstellen Sie eine Step Scaling-Richtlinie für Application Auto Scaling mit dem AWS CLI
<a name="create-step-scaling-policy-cli"></a>

In diesem Beispiel AWS CLI werden Befehle verwendet, um eine schrittweise Skalierungsrichtlinie für einen Amazon ECS-Service zu erstellen. Geben Sie für ein anderes skalierbares Ziel seinen Namespace in`--service-namespace`, seine skalierbare Dimension in `--scalable-dimension` und seine Ressourcen-ID in `--resource-id` an.

Denken Sie bei der Verwendung von daran AWS CLI, dass Ihre Befehle in der für Ihr Profil AWS-Region konfigurierten Version ausgeführt werden. Wenn Sie die Befehle in einer anderen Region ausführen möchten, ändern Sie entweder die Standardregion für Ihr Profil, oder verwenden Sie den `--region`-Parameter mit dem Befehl.

**Topics**
+ [Schritt 1: Registrieren Sie ein skalierbares Ziel](#step-scaling-register-scalable-target)
+ [Schritt 2: Erstellen Sie eine Richtlinie zur schrittweisen Skalierung](#create-step-scaling-policy)
+ [Schritt 3: Erstellen Sie einen Alarm, der eine Skalierungsrichtlinie aufruft](#step-scaling-create-alarm)

## Schritt 1: Registrieren Sie ein skalierbares Ziel
<a name="step-scaling-register-scalable-target"></a>

Wenn Sie dies noch nicht getan haben, registrieren Sie das skalierbare Ziel. Verwenden Sie den [register-scalable-target](https://docs.aws.amazon.com/cli/latest/reference/application-autoscaling/register-scalable-target.html)Befehl, um eine bestimmte Ressource im Zieldienst als skalierbares Ziel zu registrieren. Im folgenden Beispiel wird ein Amazon ECS-Service mit Application Auto Scaling registriert. Application Auto Scaling kann die Anzahl der Aufgaben auf ein Minimum von 2 und ein Maximum von 10 skalieren. Ersetzen Sie jeden *user input placeholder* durch Ihre Informationen.

**Linux, macOS oder Unix**

```
aws application-autoscaling register-scalable-target --service-namespace ecs \
  --scalable-dimension ecs:service:DesiredCount \
  --resource-id service/my-cluster/my-service \
  --min-capacity 2 --max-capacity 10
```

**Windows**

```
aws application-autoscaling register-scalable-target --service-namespace ecs ^
  --scalable-dimension ecs:service:DesiredCount ^
  --resource-id service/my-cluster/my-service ^
  --min-capacity 2 --max-capacity 10
```

**Ausgabe**  
Bei Erfolg gibt dieser Befehl den ARN des skalierbaren Ziels zurück. Es folgt eine Beispielausgabe.

```
{
    "ScalableTargetARN": "arn:aws:application-autoscaling:region:account-id:scalable-target/1234abcd56ab78cd901ef1234567890ab123"
}
```

## Schritt 2: Erstellen Sie eine Richtlinie zur schrittweisen Skalierung
<a name="create-step-scaling-policy"></a>

Um eine Richtlinie zur schrittweisen Skalierung für Ihr skalierbares Ziel zu erstellen, können Sie die folgenden Beispiele verwenden, um Ihnen den Einstieg zu erleichtern.

------
#### [ Scale out ]

**So erstellen Sie eine Richtlinie zur schrittweisen Skalierung für Scale-Out (Kapazitätserhöhung)**

1. Verwenden Sie den folgenden `cat` Befehl, um eine Konfiguration einer Step Scaling-Richtlinie in einer JSON-Datei mit dem Namen `config.json` in Ihrem Home-Verzeichnis zu speichern. Im Folgenden finden Sie eine Beispielkonfiguration mit einem Anpassungstyp von`PercentChangeInCapacity`, die die Kapazität des skalierbaren Ziels auf der Grundlage der folgenden schrittweisen Anpassungen erhöht (unter der Annahme eines CloudWatch Alarmschwellenwerts von 70): 
   + Erhöhen Sie die Kapazität um 10 Prozent, wenn der Wert der Metrik größer oder gleich 70, aber kleiner als 85 ist
   + Erhöhen Sie die Kapazität um 20 Prozent, wenn der Wert der Metrik größer oder gleich 85, aber kleiner als 95 ist
   + Erhöhen Sie die Kapazität um 30 Prozent, wenn der Wert der Metrik größer oder gleich 95 ist

   ```
   $ cat ~/config.json
   {
     "AdjustmentType": "PercentChangeInCapacity",
     "MetricAggregationType": "Average",
     "Cooldown": 60,
     "MinAdjustmentMagnitude": 1,
     "StepAdjustments": [ 
       {
         "MetricIntervalLowerBound": 0.0,
         "MetricIntervalUpperBound": 15.0,
         "ScalingAdjustment": 10
       },
       {
         "MetricIntervalLowerBound": 15.0,
         "MetricIntervalUpperBound": 25.0,
         "ScalingAdjustment": 20
       },
       {
         "MetricIntervalLowerBound": 25.0,
         "ScalingAdjustment": 30
       }
     ]
   }
   ```

   Weitere Informationen finden Sie [StepScalingPolicyConfiguration](https://docs.aws.amazon.com/autoscaling/application/APIReference/API_StepScalingPolicyConfiguration.html)in der *API-Referenz für Application Auto Scaling*.

1. Verwenden Sie den folgenden [put-scaling-policy](https://docs.aws.amazon.com/cli/latest/reference/application-autoscaling/put-scaling-policy.html)Befehl zusammen mit der `config.json` Datei, die Sie erstellt haben, um eine Skalierungsrichtlinie mit dem Namen zu erstellen`my-step-scaling-policy`.

   **Linux, macOS oder Unix**

   ```
   aws application-autoscaling put-scaling-policy --service-namespace ecs \
     --scalable-dimension ecs:service:DesiredCount \
     --resource-id service/my-cluster/my-service \
     --policy-name my-step-scaling-policy --policy-type StepScaling \
     --step-scaling-policy-configuration file://config.json
   ```

   **Windows**

   ```
   aws application-autoscaling put-scaling-policy --service-namespace ecs ^
     --scalable-dimension ecs:service:DesiredCount ^
     --resource-id service/my-cluster/my-service ^
     --policy-name my-step-scaling-policy --policy-type StepScaling ^
     --step-scaling-policy-configuration file://config.json
   ```

**Ausgabe**  
Die Ausgabe enthält den ARN, der als eindeutiger Name für die Richtlinie dient. Sie benötigen ihn, um einen CloudWatch Alarm für Ihre Richtlinie zu erstellen. Es folgt eine Beispielausgabe.

   ```
   {
       "PolicyARN": "arn:aws:autoscaling:region:123456789012:scalingPolicy:ac542982-cbeb-4294-891c-a5a941dfa787:resource/ecs/service/my-cluster/my-service:policyName/my-step-scaling-policy"
   }
   ```

------
#### [ Scale in ]

**Um eine schrittweise Skalierungsrichtlinie für die Skalierung (Kapazitätsreduzierung) zu erstellen**

1. Verwenden Sie den folgenden `cat` Befehl, um eine Konfiguration einer schrittweisen Skalierungsrichtlinie in einer JSON-Datei mit dem Namen `config.json` in Ihrem Home-Verzeichnis zu speichern. Im Folgenden finden Sie eine Beispielkonfiguration mit einem Anpassungstyp von`ChangeInCapacity`, der die Kapazität des skalierbaren Ziels auf der Grundlage der folgenden schrittweisen Anpassungen verringert (unter der Annahme eines CloudWatch Alarmschwellenwerts von 50): 
   + Verringern Sie die Kapazität um 1, wenn der Wert der Metrik kleiner oder gleich 50, aber größer als 40 ist
   + Verringern Sie die Kapazität um 2, wenn der Wert der Metrik kleiner oder gleich 40, aber größer als 30 ist
   + Verringern Sie die Kapazität um 3, wenn der Wert der Metrik kleiner oder gleich 30 ist

   ```
   $ cat ~/config.json
   {
     "AdjustmentType": "ChangeInCapacity",
     "MetricAggregationType": "Average",
     "Cooldown": 60,
     "StepAdjustments": [ 
       {
         "MetricIntervalUpperBound": 0.0,
         "MetricIntervalLowerBound": -10.0,
         "ScalingAdjustment": -1
       },
       {
         "MetricIntervalUpperBound": -10.0,
         "MetricIntervalLowerBound": -20.0,
         "ScalingAdjustment": -2
       },
       {
         "MetricIntervalUpperBound": -20.0,
         "ScalingAdjustment": -3
       }
     ]
   }
   ```

   Weitere Informationen finden Sie [StepScalingPolicyConfiguration](https://docs.aws.amazon.com/autoscaling/application/APIReference/API_StepScalingPolicyConfiguration.html)in der *API-Referenz für Application Auto Scaling*.

1. Verwenden Sie den folgenden [put-scaling-policy](https://docs.aws.amazon.com/cli/latest/reference/application-autoscaling/put-scaling-policy.html)Befehl zusammen mit der `config.json` Datei, die Sie erstellt haben, um eine Skalierungsrichtlinie mit dem Namen zu erstellen`my-step-scaling-policy`.

   **Linux, macOS oder Unix**

   ```
   aws application-autoscaling put-scaling-policy --service-namespace ecs \
     --scalable-dimension ecs:service:DesiredCount \
     --resource-id service/my-cluster/my-service \
     --policy-name my-step-scaling-policy --policy-type StepScaling \
     --step-scaling-policy-configuration file://config.json
   ```

   **Windows**

   ```
   aws application-autoscaling put-scaling-policy --service-namespace ecs ^
     --scalable-dimension ecs:service:DesiredCount ^
     --resource-id service/my-cluster/my-service ^
     --policy-name my-step-scaling-policy --policy-type StepScaling ^
     --step-scaling-policy-configuration file://config.json
   ```

**Ausgabe**  
Die Ausgabe enthält den ARN, der als eindeutiger Name für die Richtlinie dient. Sie benötigen diesen ARN, um einen CloudWatch Alarm für Ihre Richtlinie zu erstellen. Es folgt eine Beispielausgabe.

   ```
   {
       "PolicyARN": "arn:aws:autoscaling:region:123456789012:scalingPolicy:ac542982-cbeb-4294-891c-a5a941dfa787:resource/ecs/service/my-cluster/my-service:policyName/my-step-scaling-policy"
   }
   ```

------

## Schritt 3: Erstellen Sie einen Alarm, der eine Skalierungsrichtlinie aufruft
<a name="step-scaling-create-alarm"></a>

Verwenden Sie abschließend den folgenden CloudWatch [put-metric-alarm](https://docs.aws.amazon.com/cli/latest/reference/cloudwatch/put-metric-alarm.html)Befehl, um einen Alarm zu erstellen, der mit Ihrer schrittweisen Skalierungsrichtlinie verwendet werden kann. In diesem Beispiel haben Sie einen Alarm, der auf der durchschnittlichen CPU-Auslastung basiert. Der Alarm ist so konfiguriert, dass er sich in einem ALARM-Zustand befindet, wenn er für mindestens zwei aufeinanderfolgende Auswerteperioden von 60 Sekunden einen Schwellenwert von 70 Prozent erreicht. Um eine andere CloudWatch Metrik anzugeben oder Ihre eigene benutzerdefinierte Metrik zu verwenden, geben Sie ihren Namen `--metric-name` und ihren Namespace in `--namespace` an. 

**Linux, macOS oder Unix**

```
aws cloudwatch put-metric-alarm --alarm-name Step-Scaling-AlarmHigh-ECS:service/my-cluster/my-service \
  --metric-name CPUUtilization --namespace AWS/ECS --statistic Average \
  --period 60 --evaluation-periods 2 --threshold 70 \
  --comparison-operator GreaterThanOrEqualToThreshold \
  --dimensions Name=ClusterName,Value=default Name=ServiceName,Value=sample-app-service \
  --alarm-actions PolicyARN
```

**Windows**

```
aws cloudwatch put-metric-alarm --alarm-name Step-Scaling-AlarmHigh-ECS:service/my-cluster/my-service ^
  --metric-name CPUUtilization --namespace AWS/ECS --statistic Average ^
  --period 60 --evaluation-periods 2 --threshold 70 ^
  --comparison-operator GreaterThanOrEqualToThreshold ^
  --dimensions Name=ClusterName,Value=default Name=ServiceName,Value=sample-app-service ^
  --alarm-actions PolicyARN
```

# Beschreiben Sie die schrittweisen Skalierungsrichtlinien für Application Auto Scaling mithilfe der AWS CLI
<a name="describe-step-scaling-policy"></a>

Mit dem [describe-scaling-policies](https://docs.aws.amazon.com/cli/latest/reference/application-autoscaling/describe-scaling-policies.html)Befehl können Sie alle Skalierungsrichtlinien für einen Service-Namespace beschreiben. Das folgende Beispiel beschreibt alle Skalierungsrichtlinien für alle Amazon ECS-Services. Um sie nur für einen bestimmten Amazon ECS-Service aufzulisten, fügen Sie die `--resource-id` Option hinzu.

```
aws application-autoscaling describe-scaling-policies --service-namespace ecs
```

Sie können die Ergebnisse mithilfe des Parameters `--query` filtern, um nur die Richtlinien zur schrittweisen Skalierung zu erhalten. Weitere Informationen über die Syntax von `query` finden Sie unter [Steuerung der Befehlsausgabe vom AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-usage-output.html) im *AWS Command Line Interface Benutzerhandbuch*.

**Linux, macOS oder Unix**

```
aws application-autoscaling describe-scaling-policies --service-namespace ecs \
  --query 'ScalingPolicies[?PolicyType==`StepScaling`]'
```

**Windows**

```
aws application-autoscaling describe-scaling-policies --service-namespace ecs ^
  --query "ScalingPolicies[?PolicyType==`StepScaling`]"
```

**Ausgabe**  
Es folgt eine Beispielausgabe.

```
[
    {
        "PolicyARN": "PolicyARN",
        "StepScalingPolicyConfiguration": {
            "MetricAggregationType": "Average",
            "Cooldown": 60,
            "StepAdjustments": [
                {
                    "MetricIntervalLowerBound": 0.0,
                    "MetricIntervalUpperBound": 15.0,
                    "ScalingAdjustment": 1
                },
                {
                    "MetricIntervalLowerBound": 15.0,
                    "MetricIntervalUpperBound": 25.0,
                    "ScalingAdjustment": 2
                },
                {
                    "MetricIntervalLowerBound": 25.0,
                    "ScalingAdjustment": 3
                }
            ],
            "AdjustmentType": "ChangeInCapacity"
        },
        "PolicyType": "StepScaling",
        "ResourceId": "service/my-cluster/my-service",
        "ServiceNamespace": "ecs",
        "Alarms": [
            {
                "AlarmName": "Step-Scaling-AlarmHigh-ECS:service/my-cluster/my-service",
                "AlarmARN": "arn:aws:cloudwatch:region:012345678910:alarm:Step-Scaling-AlarmHigh-ECS:service/my-cluster/my-service"
            }
        ],
        "PolicyName": "my-step-scaling-policy",
        "ScalableDimension": "ecs:service:DesiredCount",
        "CreationTime": 1515024099.901
    }
]
```

# Löschen Sie eine Step Scaling-Richtlinie für Application Auto Scaling mit dem AWS CLI
<a name="delete-step-scaling-policy"></a>

Wenn Sie keine Richtlinie für eine schrittweise Skalierung mehr benötigen, können Sie diese löschen. Führen Sie die folgenden Aufgaben aus, um sowohl die Skalierungsrichtlinie als auch den zugehörigen CloudWatch Alarm zu löschen.

**So löschen Sie Ihre Skalierungsrichtlinie**  
Verwenden Sie den Befehl [delete-scaling-policy](https://docs.aws.amazon.com/cli/latest/reference/application-autoscaling/delete-scaling-policy.html).

**Linux, macOS oder Unix**

```
aws application-autoscaling delete-scaling-policy --service-namespace ecs \
  --scalable-dimension ecs:service:DesiredCount \
  --resource-id service/my-cluster/my-service \
  --policy-name my-step-scaling-policy
```

**Windows**

```
aws application-autoscaling delete-scaling-policy --service-namespace ecs ^
  --scalable-dimension ecs:service:DesiredCount ^
  --resource-id service/my-cluster/my-service ^
  --policy-name my-step-scaling-policy
```

**Um den CloudWatch Alarm zu löschen**  
Verwenden Sie den [delete-alarms](https://docs.aws.amazon.com/cli/latest/reference/cloudwatch/delete-alarms.html)-Befehl. Sie können einen oder mehrere Alarme gleichzeitig löschen. Sie können beispielsweise den folgenden Befehl verwenden, um die Alarme `Step-Scaling-AlarmHigh-ECS:service/my-cluster/my-service` und `Step-Scaling-AlarmLow-ECS:service/my-cluster/my-service` zu löschen.

```
aws cloudwatch delete-alarms --alarm-name Step-Scaling-AlarmHigh-ECS:service/my-cluster/my-service Step-Scaling-AlarmLow-ECS:service/my-cluster/my-service
```