Erstellen Sie eine Richtlinie zur schrittweisen Skalierung für die horizontale Skalierung - 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.

Erstellen Sie eine Richtlinie zur schrittweisen Skalierung für die horizontale Skalierung

Verwenden Sie eine der folgenden Methoden, um eine schrittweise Skalierungsrichtlinie für die horizontale Skalierung für Ihre Auto Scaling-Gruppe zu erstellen:

Console
Schritt 1: Erstellen Sie einen CloudWatch Alarm für den hohen Schwellenwert der Metrik
  1. Öffnen Sie die CloudWatch Konsole unter https://console.aws.amazon.com/cloudwatch/.

  2. Ändern Sie, falls erforderlich, die Region. Wählen Sie auf der Navigationsleiste die Region aus, in der sich Ihre Auto-Scaling-Gruppe befindet.

  3. Wählen Sie im Navigationsbereich Alarms > All alarms (Alarme > Alle Alarme) und anschließend Create alarm (Alarm erstellen) aus.

  4. Wählen Sie Select metric (Metrik auswählen) aus.

  5. Wählen Sie auf der Registerkarte Alle Metriken die Option EC2 und Nach Auto-Scaling-Gruppe aus und geben Sie den Namen der Auto-Scaling-Gruppe in das Suchfeld ein. Wählen Sie dann CPUUtilization und anschließend Metrik auswählen aus. Die Seite Specify metric and conditions (Metrik und Bedingungen festlegen) mit einem Diagramm und weiteren Informationen über die Metrik werden anzeigt.

  6. Wählen Sie unter Period (Zeitraum) den Auswertungszeitraum für den Alarm aus, z. B. 1 Minute. Beim Auswerten des Alarms wird jeder Zeitraum in einem Datenpunkt zusammengefasst.

    Anmerkung

    Ein kürzerer Zeitraum erzeugt eine höhere Alarmempfindlichkeit.

  7. Führen Sie unter Bedingungen die folgenden Schritte aus:

    • Wählen Sie für Threshold type (Schwellenwerttyp) die Option Static (Statisch) aus.

    • Geben Sie für Whenever CPUUtilization is an, ob der Wert der Metrik größer oder größer als oder gleich dem Schwellenwert sein soll, ab dem der Alarm überschritten werden kann. Geben Sie dann unter than (als) den Schwellenwert ein, der den Alarm auslösen soll.

      Wichtig

      Für einen Alarm, der mit einer Scale-Out-Richtlinie (Metrik hoch) verwendet werden soll, stellen Sie sicher, dass Sie nicht weniger als oder weniger als oder gleich dem Schwellenwert wählen.

  8. Führen Sie unter Zusätzliche Konfiguration die folgenden Schritte aus:

    • Geben Sie unter Datenpunkte zum Alarm die Anzahl der Datenpunkte (Auswertungszeiträume) ein, während denen der Metrikwert die Schwellenbedingungen des Alarms erfüllen muss. So würde es bei zwei aufeinanderfolgenden Zeiträume von je 5 Minuten z. B. 10 Minuten dauern, den Alarmstatus auszulösen.

    • Wählen Sie für Fehlende Datenbehandlung die Option Fehlende Daten als ungültig behandeln (Überschreitungsschwelle) aus. Weitere Informationen finden Sie unter Konfiguration der Behandlung fehlender Daten durch CloudWatch Alarme im CloudWatch Amazon-Benutzerhandbuch.

  9. Wählen Sie Weiter aus.

    Die Seite Configure actions (Konfigurieren von Aktionen) wird angezeigt.

  10. Wählen Sie unter Notification (Benachrichtigung) ein Amazon-SNS-Thema aus, das benachrichtigt werden soll, wenn sich der Alarm im Zustand ALARM, OK oder INSUFFICIENT_DATA befindet.

    Um zu erreichen, dass der Alarm mehrere Benachrichtigungen für den gleichen Alarmstatus oder für verschiedene Statuswerte sendet, wählen Sie Benachrichtigung hinzufügen.

    Damit der Alarm keine Benachrichtigungen sendet, wählen Sie Remove (Entfernen).

  11. Sie können die anderen Abschnitte der Seite Configure actions (Konfigurieren von Aktionen) leer lassen. Wenn Sie die anderen Abschnitte leer lassen, wird ein Alarm erstellt, ohne diesen einer Skalierungsrichtlinie zuzuordnen. Sie können den Alarm dann über die Amazon EC2 Auto Scaling-Konsole mit einer Skalierungsrichtlinie verknüpfen.

  12. Wählen Sie Weiter aus.

  13. Geben Sie einen Namen (beispielsweise Step-Scaling-AlarmHigh-AddCapacity) und optional eine Beschreibung des Alarms ein. Wählen Sie anschließend Next (Weiter) aus.

  14. Wählen Sie Alarm erstellen aus.

Gehen Sie wie folgt vor, um dort weiterzumachen, wo Sie nach der Erstellung Ihres CloudWatch Alarms aufgehört haben.

Schritt 2: Erstellen Sie eine Richtlinie zur schrittweisen Skalierung für die horizontale Skalierung
  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.

    Im unteren Teil der Seite wird ein geteilter Bereich geöffnet.

  3. Stellen Sie sicher, dass die Skalierungslimits entsprechend festgelegt sind. Wenn die gewünschte Kapazität der Gruppe z. B. bereits erreicht ist, müssen Sie ein neues Maximum angeben, um eine Aufskalierung durchführen zu können. Weitere Informationen finden Sie unter Festlegen von Skalierungslimits für Ihre Auto-Scaling-Gruppe.

  4. Wählen Sie auf der Registerkarte Automatic scaling (Automatische Skalierung) unter Dynamic scaling policies (Dynamische Skalierungsrichtlinien) die Option Create dynamic scaling policy (Richtlinie für die dynamische Skalierung erstellen) aus.

  5. Wählen Sie als Richtlinientyp die Option Step Scaling aus, und geben Sie dann einen Namen für die Richtlinie an.

  6. Wählen Sie für CloudWatch Alarm Ihren Alarm aus. Wenn Sie noch keinen Alarm erstellt haben, wählen Sie Alarm erstellen und führen Sie die Schritte 4 bis 14 des vorherigen Verfahrens aus, um einen Alarm zu erstellen. CloudWatch

  7. Geben Sie die Änderung der aktuellen Gruppengröße an, die diese Richtlinie vornehmen soll, wenn sie mit Take the action (Aktion ausführen) ausgeführt wird. Sie können eine bestimmte Anzahl von Instances oder einen Prozentsatz der vorhandenen Gruppengröße hinzufügen, oder die Gruppe auf eine genaue Größe festlegen.

    Um beispielsweise eine Scale-Out-Richtlinie zu erstellen, die die Kapazität der Gruppe um 30 Prozent erhöht, wählen SieAdd, geben Sie 30 in das nächste Feld ein, und wählen Sie dann. percent of group Standardmäßig ist die Untergrenze dieser Schrittanpassung der Alarmschwellenwert, und die Obergrenze ist positive (+) Unendlichkeit.

  8. Um einen weiteren Schritt hinzuzufügen, wählen Sie Add step (Schritt hinzufügen) und definieren dann den Betrag, um den skaliert werden soll, sowie die untere und obere Grenze des Schritts relativ zum Alarmschwellenwert.

  9. Um eine Mindestanzahl von zu skalierenden Instances festzulegen, aktualisieren Sie das Zahlenfeld unter Add capacity units in increments of at least (Kapazitätseinheiten hinzufügen in Schritten von mindestens) 1 Kapazitätseinheiten.

  10. (Optional) Aktualisieren Sie für Instance-Warmup den Instanz-Warmup-Wert nach Bedarf.

  11. Wählen Sie Erstellen.

AWS CLI

Um eine Richtlinie zur schrittweisen Skalierung für die horizontale Skalierung (Erhöhung der Kapazität) zu erstellen, können Sie die folgenden Beispielbefehle verwenden. Ersetzen Sie jedes Platzhalter für Benutzereingaben durch Ihre eigenen Informationen.

Wenn Sie die verwenden AWS CLI, erstellen Sie zunächst eine Richtlinie zur schrittweisen Skalierung, die Amazon EC2 Auto Scaling Anweisungen zur Skalierung bei steigendem Wert einer Metrik bereitstellt. Anschließend erstellen Sie den Alarm, indem Sie die zu überwachende Metrik identifizieren, den Schwellenwert für die Metrik und andere Details für die Alarme definieren und den Alarm der Skalierungsrichtlinie zuordnen.

Schritt 1: Erstellen Sie eine Richtlinie für Scale-Out

Verwenden Sie den folgenden put-scaling-policyBefehl, um eine schrittweise Skalierungsrichtlinie mit dem Namen zu erstellenmy-step-scale-out-policy, deren Anpassungstyp die Kapazität der Gruppe auf der Grundlage der folgenden schrittweisen Anpassungen erhöht (unter der Annahme eines CloudWatch Alarmschwellenwerts von 60 Prozent): PercentChangeInCapacity

  • Erhöhen Sie die Anzahl der Instances um 10 Prozent, wenn der Wert der Metrik größer oder gleich 60 Prozent, aber kleiner als 75 Prozent ist.

  • Erhöhen Sie die Anzahl der Instances um 20 Prozent, wenn der Wert der Metrik größer oder gleich 75 Prozent, aber kleiner als 85 Prozent ist.

  • Erhöhen Sie die Anzahl der Instances um 30 Prozent, wenn der Wert der Metrik größer oder gleich 85 Prozent ist.

aws autoscaling put-scaling-policy \ --auto-scaling-group-name my-asg \ --policy-name my-step-scale-out-policy \ --policy-type StepScaling \ --adjustment-type PercentChangeInCapacity \ --metric-aggregation-type Average \ --step-adjustments MetricIntervalLowerBound=0.0,MetricIntervalUpperBound=15.0,ScalingAdjustment=10 \ MetricIntervalLowerBound=15.0,MetricIntervalUpperBound=25.0,ScalingAdjustment=20 \ MetricIntervalLowerBound=25.0,ScalingAdjustment=30 \ --min-adjustment-magnitude 1

Notieren Sie sich den Amazon-Ressourcennamen (ARN) der Richtlinie. Sie benötigen ihn, um einen CloudWatch Alarm für die Richtlinie zu erstellen.

{ "PolicyARN": "arn:aws:autoscaling:region:123456789012:scalingPolicy:4ee9e543-86b5-4121-b53b-aa4c23b5bbcc:autoScalingGroupName/my-asg:policyName/my-step-scale-in-policy }
Schritt 2: Erstellen Sie einen CloudWatch Alarm für den hohen Schwellenwert der Metrik

Verwenden Sie den folgenden CloudWatch put-metric-alarmBefehl, um einen Alarm zu erstellen, der die Auto Scaling Scaling-Gruppe auf der Grundlage eines durchschnittlichen CPU-Schwellenwerts von 60 Prozent für mindestens zwei aufeinanderfolgende Evaluierungsperioden von zwei Minuten vergrößert. Geben Sie zum Verwenden einer selbst erstellten Metrik den Namen der Metrik im Feld --metric-name und ihren Namespace im Feld --namespace an.

aws cloudwatch put-metric-alarm --alarm-name Step-Scaling-AlarmHigh-AddCapacity \ --metric-name CPUUtilization --namespace AWS/EC2 --statistic Average \ --period 120 --evaluation-periods 2 --threshold 60 \ --comparison-operator GreaterThanOrEqualToThreshold \ --dimensions "Name=AutoScalingGroupName,Value=my-asg" \ --alarm-actions PolicyARN