Verwenden von Amazon Aurora Auto Scaling mit Aurora Replicas - Amazon Aurora

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.

Verwenden von Amazon Aurora Auto Scaling mit Aurora Replicas

Um Ihre Konnektivitäts- und Workload-Anforderungen zu erfüllen, passt Aurora Auto Scaling dynamisch die Anzahl der Aurora-Replicas (Reader-DB-Instances) an, die für einen Aurora-DB-Cluster bereitgestellt werden. Aurora Auto Scaling ist für Aurora MySQL und Aurora PostgreSQL verfügbar. Mithilfe von Aurora Auto Scaling kann Ihr Aurora-DB-Cluster plötzliche Konnektivitäts- oder Workloaderhöhungen bewältigen. Wenn die Konnektivität oder Workload abnimmt, entfernt Aurora Auto Scaling unnötige Aurora-Replicas, sodass Sie nicht für nicht genutzte bereitgestellte DB-Instances zahlen müssen.

Sie definieren und wenden eine Skalierungsrichtlinie auf einen Aurora DB-Cluster an. Die Skalierungsrichtlinie definiert die minimale und maximale Anzahl von Aurora-Replicas, die Aurora Auto Scaling verwalten kann. Basierend auf der Richtlinie passt Aurora Auto Scaling die Anzahl der Aurora Replicas als Reaktion auf die tatsächlichen Workloads, die anhand von CloudWatch Amazon-Metriken und Zielwerten bestimmt werden, nach oben oder unten an.

Sie können die verwenden AWS Management Console , um eine Skalierungsrichtlinie anzuwenden, die auf einer vordefinierten Metrik basiert. Alternativ können Sie entweder die AWS CLI oder die Aurora Auto Scaling Scaling-API verwenden, um eine Skalierungsrichtlinie anzuwenden, die auf einer vordefinierten oder benutzerdefinierten Metrik basiert.

Bevor Sie beginnen

Bevor Sie Aurora Auto Scaling mit einem Aurora-DB-Cluster verwenden können, müssen Sie zunächst einen Aurora-DB-Cluster mit einer primären (Writer-)DB-Instance erstellen. Weitere Informationen zum Erstellen eines Aurora-DB-Clusters finden Sie unter Erstellen eines Amazon Aurora-DB Clusters.

Aurora Auto Scaling skaliert einen DB-Cluster nur, wenn sich der DB-Cluster im verfügbaren Status befindet.

Wenn Aurora Auto Scaling eine neue Aurora-Replica hinzufügt, gehört die neue Aurora-Replica derselben DB-Instance-Klasse an, die auch von der primären Instance verwendet wird. Weitere Informationen zu DB-Instance-Klassen finden Sie unter Aurora DB-Instance-Klassen. Die Hochstufungsebene für neue Aurora Replicas ist auf die niedrigste Priorität eingestellt, die standardmäßig 15 ist. Dies bedeutet, dass während eines Failovers eine Replica mit einer höheren Priorität, wie beispielsweise eine manuell erstellte, zuerst hochgestuft wird. Weitere Informationen finden Sie unter Fehlertoleranz für einen Aurora-DB-Cluster.

Aurora Auto Scaling entfernt nur die Aurora-Replicas, die es selbst erstellt hat.

Um von Aurora Auto Scaling zu profitieren, müssen Ihre Anwendungen Verbindungen zu neuen Aurora-Replicas unterstützen. Hierfür empfehlen wir die Verwendung des Aurora-Reader-Endpunkts. Sie können einen Treiber wie den AWS JDBC-Treiber verwenden. Weitere Informationen finden Sie unter Herstellen einer Verbindung mit einem Amazon Aurora-DB-Cluster.

Anmerkung

Aurora Global Databases unterstützen derzeit kein Aurora Auto Scaling für sekundäre DB-Cluster.

Aurora-Auto Scaling-Richtlinien

Aurora Auto Scaling verwendet eine Skalierungsrichtlinie, um die Anzahl der Aurora-Replicas in einem Aurora-DB-Cluster anzupassen. Aurora-Auto Scaling besteht aus folgenden Komponenten:

  • Eine serviceverknüpfte Rolle

  • Eine Zielmetrik

  • Minimale und maximale Kapazität

  • Eine Ruhephase

Serviceverknüpfte Rolle

Aurora Auto Scaling verwendet die serviceverknüpfte Rolle AWSServiceRoleForApplicationAutoScaling_RDSCluster. Weitere Informationen finden Sie unter Serviceverknüpfte Rollen für Application Auto Scaling im Benutzerhandbuch zu Application Auto Scaling.

Zielmetrik

Bei dieser Art von Richtlinien wird eine vordefinierte oder benutzerdefinierte Metrik und ein Zielwert für die Metrik in einer Konfiguration der Skalierungsrichtlinien für die Zielverfolgung festgelegt. Aurora Auto Scaling erstellt und verwaltet CloudWatch Alarme, die die Skalierungsrichtlinie auslösen, und berechnet die Skalierungsanpassung auf der Grundlage der Metrik und des Zielwerts. Die Skalierungsrichtlinie fügt Aurora-Repliken hinzu oder entfernt sie, wenn erforderlich, um die Metrik auf dem angegebenen Zielwert oder in der Nähe davon zu halten. Abgesehen davon, dass eine Skalierungsrichtlinie für die Ziel-Nachverfolgung die Metrik nahe an dem Zielwert hält, passt sie sich auch an die Schwankungen in der Metrik aufgrund einer sich ändernden Workload an. Eine solche Richtlinie minimiert auch schnelle Schwankungen in der Anzahl der verfügbaren Aurora-Repliken für Ihren DB-Cluster.

Nehmen wir zum Beispiel eine Skalierungsrichtlinie, die die vordefinierte durchschnittliche CPU-Auslastung verwendet. Eine solche Richtlinie kann die CPU-Auslastung bei einem bestimmten Prozentsatz der Auslastung halten, z. B. bei 40 Prozent.

Anmerkung

Für jeden Aurora DB-Cluster können Sie nur eine Auto-Scaling-Richtlinie für jede Zielmetrik erstellen.

Minimale und maximale Kapazität

Sie können die maximale Anzahl von Aurora-Replicas angeben, die von Application Auto Scaling verwaltet werden sollen. Dieser Wert muss auf 0 – 15 gesetzt werden und gleich oder größer als der für die Mindestanzahl von Aurora-Replicas angegebene Wert sein.

Sie können auch die minimale Anzahl von Aurora-Replicas angeben, die von Application Auto Scaling verwaltet werden sollen. Dieser Wert muss auf 0 – 15 gesetzt werden und gleich oder kleiner als der für die maximal Anzahl von Aurora-Replicas angegebene Wert sein.

Anmerkung

Die minimale und maximale Kapazität wird für einen Aurora DB-Cluster festgelegt. Die angegebenen Werte gelten für alle mit diesem Aurora DB-Cluster verknüpften Richtlinien.

Ruhephase

Sie können die Reaktionsfähigkeit einer Skalierungsrichtlinie für die Zielverfolgung anpassen, indem Sie Ruhephasen hinzufügen, nachdem eine Skalierung Ihres Aurora DB-Clusters erfolgt ist. Eine Ruhephase blockiert nachfolgende Scale-in- oder Scale-out-Anforderungen bis zum Ablauf der Frist. Diese Blockierungen verlangsamen das Löschen von Aurora-Replicas in Ihrem Aurora-DB-Cluster für Scale-In-Anforderungen und das Erstellen von Aurora-Replicas für Scale-Out-Anforderungen.

Sie können die folgenden Ruhephasen angeben:

  • Eine Scale-In-Aktivität reduziert die Anzahl der Aurora-Replicas in Ihrem Aurora-DB-Cluster. Eine Scale-In-Ruhephase gibt die Zeitspanne in Sekunden an, nach der eine Scale-In-Aktivität abgeschlossen sein muss, bevor eine weitere Scale-In-Aktivität gestartet werden kann.

  • Eine Scale-Out-Aktivität erhöht die Anzahl der Aurora-Replicas in Ihrem Aurora-DB-Cluster. Eine Scale-Out-Ruhephase gibt die Zeitspanne in Sekunden an, nach der eine Scale-Out-Aktivität abgeschlossen sein muss, bevor eine weitere Scale-Out-Aktivität gestartet werden kann.

    Anmerkung

    Eine Ruhephase zum Aufskalieren wird ignoriert, wenn eine nachfolgende Anforderung zum Aufskalieren für eine größere Anzahl von Aurora-Replikaten gilt als die erste Anforderung.

Wenn Sie keine Ruhephase für das Ab- bzw. Aufskalieren festlegen, wird jeweils der Standardwert von 300 Sekunden verwendet.

Aktivieren oder Deaktivieren von Scale-In-Aktivitäten

Sie können die Scale-In-Aktivitäten für eine Richtlinie aktivieren oder deaktivieren. Die Aktivierung von Scale-In-Aktivitäten ermöglicht es der Skalierungsrichtlinie, Aurora-Repliken zu löschen. Wenn die Scale-In-Aktivitäten aktiviert sind, gilt für die Scale-In-Aktivitäten die Scale-In-Ruhezeit in der Skalierungsrichtlinie. Das Deaktivieren von Scale-In-Aktivitäten verhindert das Löschen von Aurora-Repliken durch die Skalierungsrichtlinie.

Anmerkung

Scale-Out-Aktivitäten sind immer aktiviert, so dass die Skalierungsrichtlinie bei Bedarf Aurora-Replicas erstellen kann.

Hinzufügen einer Skalierungsrichtlinie zu einem Aurora-DB-Cluster

Sie können eine Skalierungsrichtlinie mithilfe der AWS Management Console, der oder der AWS CLI Application Auto Scaling API hinzufügen.

Anmerkung

Ein Beispiel für das Hinzufügen einer Skalierungsrichtlinie mithilfe von AWS CloudFormation finden Sie unter Deklarieren einer Skalierungsrichtlinie für einen Aurora-DB-Cluster im AWS CloudFormation Benutzerhandbuch.

Sie können einem Aurora-DB-Cluster eine Skalierungsrichtlinie hinzufügen, indem Sie den verwenden AWS Management Console.

So fügen Sie eine automatische Skalierungsrichtlinie zu einem Aurora DB-Cluster hinzu:
  1. Melden Sie sich bei der Amazon RDS-Konsole an AWS Management Console und öffnen Sie sie unter https://console.aws.amazon.com/rds/.

  2. Wählen Sie im Navigationsbereich Databases (Datenbanken) aus.

  3. Wählen Sie den Aurora DB-Cluster aus, zu dem Sie die Richtlinie hinzufügen möchten.

  4. Wählen Sie die Registerkarte Logs & events (Protokolle und Ereignisse).

  5. Wählen Sie im Abschnitt Auto scaling policies (Automatische Skalierungsrichtlinien) die Option Add (Hinzufügen) aus.

    Das Dialogfeld Add Auto Scaling policy (Auto Scaling-Richtlinie hinzufügen) wird aufgerufen.

  6. Geben Sie unter Policy Name (Richtlinienname) den Namen der Richtlinie ein.

  7. Wählen Sie für die Zielmetrik eine der nachstehenden Optionen aus:

    • Average CPU utilization of Aurora Replicas (Durchschnittliche CPU-Nutzung von Aurora-Replicas), um eine Richtlinie zu erstellen, die auf der durchschnittlichen CPU-Auslastung basiert.

    • Average connections of Aurora Replicas (Durchschnittliche Verbindungen von Aurora-Repliken), um eine Richtlinie zu erstellen, die auf der durchschnittlichen Anzahl der Verbindungen zu den Aurora-Replicas basiert.

  8. Geben Sie für den Zielwert eine der nachstehenden Optionen an:

    • Wenn Sie im vorherigen Schritt Average CPU utilization of Aurora Replicas (Durchschnittliche CPU-Nutzung von Aurora-Replicas) ausgewählt haben, geben Sie den Prozentsatz der CPU-Auslastung ein, den Sie auf Aurora-Replicas aufrechterhalten möchten.

    • Wenn Sie im vorherigen Schritt Average connections of Aurora Replicas (Durchschnittliche Verbindungen von Aurora-Replicas) ausgewählt haben, geben Sie die Anzahl der Verbindungen ein, die Sie aufrechterhalten möchten.

    Aurora-Replicas werden hinzugefügt oder entfernt, um die Metrik in der Nähe des angegebenen Wertes zu halten.

  9. (Optional) Erweitern Sie Zusätzliche Konfigurationen, um eine Ruhephase zum Ab- oder Aufskalieren zu erstellen.

  10. Geben Sie für Minimale Kapazität die minimale Anzahl von Aurora-Replicas ein, die die Aurora Auto Scaling-Richtlinie beibehalten soll.

  11. Geben Sie für Maximale Kapazität die maximale Anzahl von Aurora-Replicas ein, die die Aurora Auto Scaling-Richtlinie beibehalten soll.

  12. Wählen Sie Richtlinie hinzufügen aus.

Im folgenden Dialogfeld wird eine Auto Scaling-Richtlinie erstellt, die auf einer durchschnittlichen CPU-Auslastung von 40 Prozent basiert. Die Richtlinie legt ein Minimum von 5 Aurora-Replicas und ein Maximum von 15 Aurora-Replicas fest.

Erstellen einer automatischen Skalierungsrichtlinie auf Basis der durchschnittlichen CPU-Auslastung

Das folgende Dialogfeld erstellt eine automatische Skalierungsrichtlinie, die auf einer durchschnittlichen Verbindungszahl von 100 basiert. Die Richtlinie legt ein Minimum von zwei Aurora-Replicas und ein Maximum von acht Aurora-Replicas fest.

Erstellen einer Auto Scaling-Richtlinie basierend auf durchschnittlichen Verbindungen

Sie können eine Skalierungsrichtlinie anwenden, die entweder auf einer vordefinierten oder einer benutzerdefinierten Metrik basiert. Dazu können Sie die AWS CLI oder die Application Auto Scaling API verwenden. Der erste Schritt ist die Registrierung Ihres Aurora-DB-Clusters mit Application Auto Scaling.

Registrieren eines Aurora-DB-Clusters

Bevor Sie Aurora Auto Scaling mit einem Aurora-DB-Cluster verwenden können, müssen Sie zunächst Ihren Aurora-DB-Cluster mit Application Auto Scaling registrieren. Damit legen Sie die Skalierungsdimension und die Grenzen fest, die auf diesen Cluster angewendet werden sollen. Application Auto Scaling skaliert den Aurora-DB-Cluster dynamisch entlang der skalierbaren rds:cluster:ReadReplicaCount-Dimension, die die Anzahl der Aurora-Replikate darstellt.

Um Ihren Aurora-DB-Cluster zu registrieren, können Sie entweder die AWS CLI oder die Application Auto Scaling Scaling-API verwenden.

AWS CLI

Verwenden Sie den register-scalable-target AWS CLI Befehl mit den folgenden Parametern, um Ihren Aurora-DB-Cluster zu registrieren:

  • --service-namespace – Legen Sie diesen Wert auf fest rds.

  • --resource-id – Die Ressourcenkennung für den Aurora-DB-Cluster. Für diesen Parameter lautet der Ressourcentyp cluster und die eindeutige Kennung ist der Name des Aurora-DB-Clusters, beispielsweise cluster:myscalablecluster.

  • --scalable-dimension – Legen Sie diesen Wert auf fest rds:cluster:ReadReplicaCount.

  • --min-capacity – Die minimale Anzahl an Reader-DB-Instances, die von Application Auto Scaling verwaltet werden sollen. Informationen zur Beziehung zwischen --min-capacity, --max-capacity und der Anzahl der DB-Instances in Ihrem Cluster finden Sie unter Minimale und maximale Kapazität.

  • --max-capacity – Die maximale Anzahl an Reader-DB-Instances, die von Application Auto Scaling verwaltet werden sollen. Informationen zur Beziehung zwischen --min-capacity, --max-capacity und der Anzahl der DB-Instances in Ihrem Cluster finden Sie unter Minimale und maximale Kapazität.

Im folgenden Beispiel registrieren Sie einen Aurora-DB-Cluster mit dem Namen myscalablecluster. Die Registrierung zeigt an, dass der DB-Cluster dynamisch skaliert werden soll, um zwischen einer und acht Aurora-Replicas zu haben.

Für LinuxmacOS, oderUnix:

aws application-autoscaling register-scalable-target \ --service-namespace rds \ --resource-id cluster:myscalablecluster \ --scalable-dimension rds:cluster:ReadReplicaCount \ --min-capacity 1 \ --max-capacity 8 \

Windows:

aws application-autoscaling register-scalable-target ^ --service-namespace rds ^ --resource-id cluster:myscalablecluster ^ --scalable-dimension rds:cluster:ReadReplicaCount ^ --min-capacity 1 ^ --max-capacity 8 ^
API für Application Auto Scaling

Um Ihren Aurora-DB-Cluster mit Auto Scaling von Anwendungen zu registrieren, verwenden Sie die Application Auto Scaling-API-Operation RegisterScalableTarget mit den folgenden Parametern:

  • ServiceNamespace – Legen Sie diesen Wert auf fest rds.

  • ResourceID – Die Ressourcenkennung für den Aurora-DB-Cluster. Für diesen Parameter lautet der Ressourcentyp cluster und die eindeutige Kennung ist der Name des Aurora-DB-Clusters, beispielsweise cluster:myscalablecluster.

  • ScalableDimension – Legen Sie diesen Wert auf fest rds:cluster:ReadReplicaCount.

  • MinCapacity – Die minimale Anzahl an Reader-DB-Instances, die von Application Auto Scaling verwaltet werden sollen. Informationen zur Beziehung zwischen MinCapacity, MaxCapacity und der Anzahl der DB-Instances in Ihrem Cluster finden Sie unter Minimale und maximale Kapazität.

  • MaxCapacity – Die maximale Anzahl an Reader-DB-Instances, die von Application Auto Scaling verwaltet werden sollen. Informationen zur Beziehung zwischen MinCapacity, MaxCapacity und der Anzahl der DB-Instances in Ihrem Cluster finden Sie unter Minimale und maximale Kapazität.

Im folgenden Beispiel registrieren Sie einen Aurora-DB-Cluster mit dem Namen myscalablecluster mit der Application Auto Scaling API. Diese Registrierung zeigt an, dass der DB-Cluster dynamisch skaliert werden soll, um zwischen eins bis acht Aurora-Repliken zu haben.

POST / HTTP/1.1 Host: autoscaling.us-east-2.amazonaws.com Accept-Encoding: identity Content-Length: 219 X-Amz-Target: AnyScaleFrontendService.RegisterScalableTarget X-Amz-Date: 20160506T182145Z User-Agent: aws-cli/1.10.23 Python/2.7.11 Darwin/15.4.0 botocore/1.4.8 Content-Type: application/x-amz-json-1.1 Authorization: AUTHPARAMS { "ServiceNamespace": "rds", "ResourceId": "cluster:myscalablecluster", "ScalableDimension": "rds:cluster:ReadReplicaCount", "MinCapacity": 1, "MaxCapacity": 8 }

Definieren einer Skalierungsrichtlinie für einen Aurora-DB-Cluster

Eine Konfiguration der Skalierungsrichtlinie für die Zielverfolgung wird durch einen JSON-Block repräsentiert, in dem die Metriken und Zielwerte definiert sind. Sie können die Konfiguration einer Skalierungsrichtlinie als JSON-Block in einer Textdatei speichern. Sie verwenden diese Textdatei, wenn Sie die AWS CLI oder die Application Auto Scaling Scaling-API aufrufen. Weitere Informationen zur Syntax der Richtlinienkonfiguration finden Sie unter TargetTrackingScalingPolicyConfiguration in der API-Referenz für Application Auto Scaling.

Die folgenden Optionen stehen zur Verfügung, um eine Konfiguration der Skalierungsrichtlinien für die Zielverfolgung zu definieren.

Verwenden einer vordefinierten Metrik

Durch die Verwendung vordefinierter Metriken können Sie schnell eine Skalierungsrichtlinie für die Zielverfolgung für einen Aurora-DB-Cluster definieren, die sowohl mit der Zielverfolgung als auch mit der dynamischen Skalierung in Aurora Auto Scaling gut funktioniert.

Derzeit unterstützt Aurora die folgenden vordefinierten Metriken in Aurora Auto Scaling:

  • ReaderAverageRDS-CPUUtilization — Der Durchschnittswert der CPUUtilization Metrik in CloudWatch allen Aurora Replicas im Aurora-DB-Cluster.

  • RDS ReaderAverageDatabaseConnections — Der Durchschnittswert der DatabaseConnections Metrik in CloudWatch allen Aurora Replicas im Aurora-DB-Cluster.

Weitere Informationen über die Metriken CPUUtilization und DatabaseConnections finden Sie unter CloudWatch Amazon-Metriken für Amazon Aurora.

Um eine vordefinierte Metrik in Ihrer Skalierungsrichtlinie zu verwenden, erstellen Sie eine Zielverfolgungskonfiguration für Ihre Skalierungsrichtlinie. Diese Konfiguration muss eine PredefinedMetricSpecification für die vordefinierte Metrik und einen TargetValue für den Zielwert dieser Metrik enthalten.

Beispiel

Das folgende Beispiel beschreibt eine typische Richtlinienkonfiguration für die Skalierung der Zielverfolgung für einen Aurora DB-Cluster. In dieser Konfiguration wird die vordefinierte Metrik RDSReaderAverageCPUUtilization verwendet, um den Aurora-DB-Cluster basierend auf einer durchschnittlichen CPU-Auslastung von 40 Prozent über alle Aurora-Replicas hinweg anzupassen.

{ "TargetValue": 40.0, "PredefinedMetricSpecification": { "PredefinedMetricType": "RDSReaderAverageCPUUtilization" } }
Verwenden einer benutzerdefinierten Metrik

Durch die Verwendung von benutzerdefinierten Metriken können Sie eine Skalierungsrichtlinie für die Zielverfolgung definieren, die Ihren individuellen Anforderungen entspricht. Sie können eine benutzerdefinierte Metrik basierend auf einer beliebigen Aurora-Metrik definieren, die sich proportional zur Skalierung ändert.

Nicht alle Aurora-Metriken funktionieren für die Zielverfolgung. Die Metrik muss eine gültige Auslastungsmetrik sein und beschreiben, wie ausgelastet eine Instance ist. Der Wert der Metrik muss sich proportional zur Anzahl der Aurora-Replicas im Aurora-DB-Cluster erhöhen oder verringern. Diese proportionale Erhöhung oder Verminderung ist notwendig, um die metrischen Daten zur proportionalen Skalierung oder in der Anzahl der Aurora-Repliken zu verwenden.

Beispiel

Das folgende Beispiel beschreibt die Konfiguration einer Zielverfolgung für eine Skalierungsrichtlinie. In dieser Konfiguration passt eine benutzerdefinierte Metrik einen Aurora-DB-Cluster basierend auf einer durchschnittlichen CPU-Auslastung von 50 Prozent über alle Aurora-Replicas in einem Aurora-DB-Cluster namens a my-db-cluster.

{ "TargetValue": 50, "CustomizedMetricSpecification": { "MetricName": "CPUUtilization", "Namespace": "AWS/RDS", "Dimensions": [ {"Name": "DBClusterIdentifier","Value": "my-db-cluster"}, {"Name": "Role","Value": "READER"} ], "Statistic": "Average", "Unit": "Percent" } }
Verwenden von Ruhephasen

Sie können einen Wert in Sekunden für ScaleOutCooldown angeben, um eine Ruhephase für die Hochskalierung Ihres Aurora-DB-Clusters hinzuzufügen. Ähnlich können Sie einen Wert in Sekunden für ScaleInCooldown angeben, um eine Ruhephase für die Herunterskalierung Ihres Aurora-DB-Clusters hinzuzufügen. Weitere Informationen über ScaleInCooldown und ScaleOutCooldown finden Sie unter TargetTrackingScalingPolicyConfiguration in der API-Referenz für Application Auto Scaling.

Das folgende Beispiel beschreibt die Konfiguration einer Zielverfolgung für eine Skalierungsrichtlinie. In dieser Konfiguration wird die vordefinierte Metrik RDSReaderAverageCPUUtilization verwendet, um einen Aurora DB-Cluster anzupassen, basierend auf einer durchschnittlichen CPU-Auslastung von 40 Prozent über alle Aurora -Repliken hinweg in diesem Aurora DB-Cluster. Die Konfiguration sieht eine Scale-In-Ruhephase von 10 Minuten und eine Scale-Out-Ruhephase von 5 Minuten vor.

{ "TargetValue": 40.0, "PredefinedMetricSpecification": { "PredefinedMetricType": "RDSReaderAverageCPUUtilization" }, "ScaleInCooldown": 600, "ScaleOutCooldown": 300 }
Deaktivieren der Scale-In-Aktivität

Sie können durch die Konfiguration der Skalierungsrichtlinie für die Zielverfolgung verhindern, dass in Ihrem Aurora DB-Cluster ein Scale-In erfolgt, indem Sie die Scale-In-Aktivität deaktivieren. Das Deaktivieren der Scale-In-Aktivität verhindert das Löschen von Aurora-Repliken durch die Skalierungsrichtlinie, und erlaubt der Skalierungsrichtlinie dennoch, Repliken nach Bedarf zu erstellen.

Sie können einen booleschen Wert für DisableScaleIn angeben, um die Scale-In-Aktivität für Ihren Aurora-DB-Cluster zu aktivieren oder zu deaktivieren. Weitere Informationen über DisableScaleIn finden Sie unter TargetTrackingScalingPolicyConfiguration in der API-Referenz für Application Auto Scaling.

Das folgende Beispiel beschreibt die Konfiguration einer Zielverfolgung für eine Skalierungsrichtlinie. In dieser Konfiguration passt die vordefinierte Metrik RDSReaderAverageCPUUtilization einen Aurora-DB-Cluster basierend auf einer durchschnittlichen CPU-Auslastung von 40 Prozent über alle Aurora-Replicas in diesem Aurora-DB-Cluster hinweg an. Die Konfiguration deaktiviert die Scale-In-Aktivität für die Skalierungsrichtlinie.

{ "TargetValue": 40.0, "PredefinedMetricSpecification": { "PredefinedMetricType": "RDSReaderAverageCPUUtilization" }, "DisableScaleIn": true }

Anwenden einer Skalierungsrichtlinie für einen Aurora-DB-Cluster

Nach der Registrierung Ihres Aurora-DB-Clusters mit Application Auto Scaling und der Definition einer Skalierungsrichtlinie wenden Sie die Skalierungsrichtlinie auf den registrierten Aurora-DB-Cluster an. Um eine Skalierungsrichtlinie auf einen Aurora-DB-Cluster anzuwenden, können Sie die AWS CLI oder die Application Auto Scaling Scaling-API verwenden.

Um eine Skalierungsrichtlinie auf Ihren Aurora-DB-Cluster anzuwenden, verwenden Sie den put-scaling-policy AWS CLI Befehl mit den folgenden Parametern:

  • --policy-name – Der Name der Skalierungsrichtlinie.

  • --policy-type – Legen Sie diesen Wert auf fest TargetTrackingScaling.

  • --resource-id – Die Ressourcenkennung für den Aurora-DB-Cluster. Für diesen Parameter lautet der Ressourcentyp cluster und die eindeutige Kennung ist der Name des Aurora-DB-Clusters, beispielsweise cluster:myscalablecluster.

  • --service-namespace – Legen Sie diesen Wert auf fest rds.

  • --scalable-dimension – Legen Sie diesen Wert auf fest rds:cluster:ReadReplicaCount.

  • --target-tracking-scaling-policy-configuration – Die Konfiguration der Skalierungsrichtlinie für die Zielverfolgung, die für den Aurora-DB-Cluster verwendet werden soll.

Im folgenden Beispiel wenden Sie eine Zielverfolgungs-Skalierungsrichtlinie namens myscalablepolicy auf einen Aurora-DB-Cluster namens myscalablecluster mit Application Auto Scaling an. Dazu verwenden Sie eine Richtlinienkonfiguration, die in einer Datei mit dem Namen gespeichert is config.json.

Für LinuxmacOS, oderUnix:

aws application-autoscaling put-scaling-policy \ --policy-name myscalablepolicy \ --policy-type TargetTrackingScaling \ --resource-id cluster:myscalablecluster \ --service-namespace rds \ --scalable-dimension rds:cluster:ReadReplicaCount \ --target-tracking-scaling-policy-configuration file://config.json

Windows:

aws application-autoscaling put-scaling-policy ^ --policy-name myscalablepolicy ^ --policy-type TargetTrackingScaling ^ --resource-id cluster:myscalablecluster ^ --service-namespace rds ^ --scalable-dimension rds:cluster:ReadReplicaCount ^ --target-tracking-scaling-policy-configuration file://config.json

Um eine Skalierungsrichtlinie auf Ihren Aurora-DB-Cluster über die Application Auto Scaling API anzuwenden, verwenden Sie die Application Auto Scaling-API-Operation PutScalingPolicy mit den folgenden Parametern:

  • PolicyName – Der Name der Skalierungsrichtlinie.

  • ServiceNamespace – Legen Sie diesen Wert auf fest rds.

  • ResourceID – Die Ressourcenkennung für den Aurora-DB-Cluster. Für diesen Parameter lautet der Ressourcentyp cluster und die eindeutige Kennung ist der Name des Aurora-DB-Clusters, beispielsweise cluster:myscalablecluster.

  • ScalableDimension – Legen Sie diesen Wert auf fest rds:cluster:ReadReplicaCount.

  • PolicyType – Legen Sie diesen Wert auf fest TargetTrackingScaling.

  • TargetTrackingScalingPolicyConfiguration – Die Konfiguration der Skalierungsrichtlinie für die Zielverfolgung, die für den Aurora-DB-Cluster verwendet werden soll.

Im folgenden Beispiel wenden Sie eine Zielverfolgungs-Skalierungsrichtlinie namens myscalablepolicy auf einen Aurora-DB-Cluster namens myscalablecluster mit Auto Scaling von Anwendungen an. Sie verwenden die Richtlinienkonfiguration RDSReaderAverageCPUUtilization basierend auf einer vordefinierten Metrik.

POST / HTTP/1.1 Host: autoscaling.us-east-2.amazonaws.com Accept-Encoding: identity Content-Length: 219 X-Amz-Target: AnyScaleFrontendService.PutScalingPolicy X-Amz-Date: 20160506T182145Z User-Agent: aws-cli/1.10.23 Python/2.7.11 Darwin/15.4.0 botocore/1.4.8 Content-Type: application/x-amz-json-1.1 Authorization: AUTHPARAMS { "PolicyName": "myscalablepolicy", "ServiceNamespace": "rds", "ResourceId": "cluster:myscalablecluster", "ScalableDimension": "rds:cluster:ReadReplicaCount", "PolicyType": "TargetTrackingScaling", "TargetTrackingScalingPolicyConfiguration": { "TargetValue": 40.0, "PredefinedMetricSpecification": { "PredefinedMetricType": "RDSReaderAverageCPUUtilization" } } }

Bearbeiten einer Skalierungsrichtlinie

Sie können eine Skalierungsrichtlinie mit der AWS Management Console, der oder der AWS CLI Application Auto Scaling API bearbeiten.

Sie können eine Skalierungsrichtlinie bearbeiten, indem Sie die verwenden AWS Management Console.

So bearbeiten Sie eine automatische Skalierungsrichtlinie für einen Aurora DB-Cluster:
  1. Melden Sie sich bei der Amazon RDS-Konsole an AWS Management Console und öffnen Sie sie unter https://console.aws.amazon.com/rds/.

  2. Wählen Sie im Navigationsbereich Databases (Datenbanken) aus.

  3. Wählen Sie den Aurora DB-Cluster aus, dessen automatische Skalierungsrichtlinie Sie bearbeiten möchten.

  4. Wählen Sie die Registerkarte Logs & events (Protokolle und Ereignisse).

  5. Wählen Sie im Abschnitt Auto scaling policies (Automatische Skalierungsrichtlinien) die betreffende automatische Skalierungsrichtlinie und dann Edit (Bearbeiten) aus.

  6. Nehmen Sie die Änderungen an der Richtlinie vor.

  7. Wählen Sie Save aus.

Im Folgenden sehen Sie ein Beispiel für das Dialogfeld Edit Auto Scaling policy (Auto Scaling-Richtlinie bearbeiten).

Bearbeiten einer automatischen Skalierungsrichtlinie auf Basis der durchschnittlichen CPU-Auslastung

Sie können die AWS CLI oder die Application Auto Scaling Scaling-API verwenden, um eine Skalierungsrichtlinie auf die gleiche Weise zu bearbeiten, wie Sie eine Skalierungsrichtlinie anwenden:

  • Wenn Sie die verwenden AWS CLI, geben Sie den Namen der Richtlinie, die Sie bearbeiten möchten, im --policy-name Parameter an. Legen Sie neue Werte für die Parameter fest, die Sie ändern möchten.

  • Wenn Sie die Application Auto Scaling API verwenden, geben Sie den Namen der zu bearbeitenden Richtlinie im Parameter PolicyName an. Legen Sie neue Werte für die Parameter fest, die Sie ändern möchten.

Weitere Informationen finden Sie unter Anwenden einer Skalierungsrichtlinie für einen Aurora-DB-Cluster.

Löschen einer Skalierungsrichtlinie

Sie können eine Skalierungsrichtlinie mithilfe der AWS Management Console, der oder der AWS CLI Application Auto Scaling API löschen.

Sie können eine Skalierungsrichtlinie über die AWS Management Console löschen.

So löschen Sie eine automatische Skalierungsrichtlinie für einen Aurora DB-Cluster:
  1. Melden Sie sich bei der Amazon RDS-Konsole an AWS Management Console und öffnen Sie sie unter https://console.aws.amazon.com/rds/.

  2. Wählen Sie im Navigationsbereich Databases (Datenbanken) aus.

  3. Wählen Sie den Aurora DB-Cluster aus, dessen automatische Skalierungsrichtlinie Sie löschen möchten.

  4. Wählen Sie die Registerkarte Logs & events (Protokolle und Ereignisse).

  5. Wählen Sie im Abschnitt Auto Scaling-Richtlinien die automatische Skalierungsrichtlinie und dann Löschen aus.

Um eine Skalierungsrichtlinie aus Ihrem Aurora-DB-Cluster zu löschen, verwenden Sie den delete-scaling-policy AWS CLI Befehl mit den folgenden Parametern:

  • --policy-name – Der Name der Skalierungsrichtlinie.

  • --resource-id – Die Ressourcenkennung für den Aurora-DB-Cluster. Für diesen Parameter lautet der Ressourcentyp cluster und die eindeutige Kennung ist der Name des Aurora-DB-Clusters, beispielsweise cluster:myscalablecluster.

  • --service-namespace – Legen Sie diesen Wert auf fest rds.

  • --scalable-dimension – Legen Sie diesen Wert auf fest rds:cluster:ReadReplicaCount.

Im folgenden Beispiel löschen Sie eine Zielverfolgungs-Skalierungsrichtlinie namens myscalablepolicy aus einem Aurora-DB-Cluster namens myscalablecluster.

Für LinuxmacOS, oderUnix:

aws application-autoscaling delete-scaling-policy \ --policy-name myscalablepolicy \ --resource-id cluster:myscalablecluster \ --service-namespace rds \ --scalable-dimension rds:cluster:ReadReplicaCount \

Windows:

aws application-autoscaling delete-scaling-policy ^ --policy-name myscalablepolicy ^ --resource-id cluster:myscalablecluster ^ --service-namespace rds ^ --scalable-dimension rds:cluster:ReadReplicaCount ^

Um eine Skalierungsrichtlinie aus Ihrem Aurora-DB-Cluster zu löschen, verwenden Sie die Application Auto Scaling-API-Operation DeleteScalingPolicy mit den folgenden Parametern:

  • PolicyName – Der Name der Skalierungsrichtlinie.

  • ServiceNamespace – Legen Sie diesen Wert auf fest rds.

  • ResourceID – Die Ressourcenkennung für den Aurora-DB-Cluster. Für diesen Parameter lautet der Ressourcentyp cluster und die eindeutige Kennung ist der Name des Aurora-DB-Clusters, beispielsweise cluster:myscalablecluster.

  • ScalableDimension – Legen Sie diesen Wert auf fest rds:cluster:ReadReplicaCount.

Im folgenden Beispiel löschen Sie eine Zielverfolgungs-Skalierungsrichtlinie namens myscalablepolicy über die Application Auto Scaling API aus einem Aurora-DB-Cluster namens myscalablecluster.

POST / HTTP/1.1 Host: autoscaling.us-east-2.amazonaws.com Accept-Encoding: identity Content-Length: 219 X-Amz-Target: AnyScaleFrontendService.DeleteScalingPolicy X-Amz-Date: 20160506T182145Z User-Agent: aws-cli/1.10.23 Python/2.7.11 Darwin/15.4.0 botocore/1.4.8 Content-Type: application/x-amz-json-1.1 Authorization: AUTHPARAMS { "PolicyName": "myscalablepolicy", "ServiceNamespace": "rds", "ResourceId": "cluster:myscalablecluster", "ScalableDimension": "rds:cluster:ReadReplicaCount" }

DB-Instance-IDs und Tagging

Wenn ein Replikat von Aurora Auto Scaling hinzugefügt wird, wird seine DB-Instance-ID von application-autoscaling-vorangestellt, z.B. application-autoscaling-61aabbcc-4e2f-4c65-b620-ab7421abc123.

Das folgende Tag wird automatisch zur DB-Instance hinzugefügt. Sie können es auf der Registerkarte Tags der Detailseite der DB-Instance anzeigen.

Tag Value
application-autoscaling:resourceId cluster:mynewcluster-cluster

Weitere Informationen zu Amazon-RDS-Ressourcen-Tags finden Sie unter Markieren von Amazon RDS-Ressourcen.

Aurora Auto Scaling und Performance Insights

Sie können Performance Insights verwenden, um Replikate zu überwachen, die von Aurora Auto Scaling hinzugefügt wurden, genau wie bei jeder Reader-DB-Instance von Aurora.

Sie können Performance Insights nicht für einen Aurora-DB-Cluster aktivieren. Sie können Performance Insights für jede DB-Instance im DB-Cluster manuell aktivieren.

Wenn Sie Performance Insights für die Writer-DB-Instance in Ihrem Aurora-DB-Cluster aktivieren, wird Performance Insights für Reader-DB-Instances nicht automatisch aktiviert. Sie müssen Performance Insights manuell für die vorhandenen Reader-DB-Instances und die neuen Replikate aktivieren, die von Aurora Auto Scaling hinzugefügt wurden.

Weitere Informationen zum Verwenden von Performance Insights zur Überwachung von Aurora-DB-Clustern finden Sie unter Überwachung mit Performance Insights auf .