Warum habe ich eine Fehlermeldung erhalten, als ich die Instance-Klasse meiner Amazon Aurora MySQL-DB-Instance geändert oder skaliert habe?

Lesedauer: 4 Minute
0

Wenn ich versuche, meine Amazon Aurora MySQL-kompatible Edition DB-Instance zu skalieren oder die Instance-Klasse zu ändern, erhalte ich eine Fehlermeldung.

Kurzbeschreibung

Wenn du die Instance-Klasse einer Aurora MySQL-kompatiblen DB-Instance änderst, erhältst du möglicherweise eine der folgenden Fehlermeldungen:

  • „Cannot modify the instance class because there are no instances of the requested class available in the current instance's availability zone. Please try your request again at a later time“
  • „Cannot find version abc for aurora-mysql“
  • „RDS does not support creating a DB instance with the following combination“

Ergreife je nach dem Fehler, der angezeigt wird, die folgenden Maßnahmen, um dieses Problem zu beheben.

Lösung

Hinweis: Wenn du beim Ausführen von AWS Command Line Interface (AWS CLI)-Befehlen Fehlermeldungen erhältst, findest du weitere Informationen dazu unter Problembehandlung bei der AWS CLI. Stelle außerdem sicher, dass du die neueste Version der AWS CLI verwendest.

Bevor du den Fehler behebst, empfiehlt es sich, die DB-Cluster auf der neuesten Engine-Version auszuführen oder Versionen mit ](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/AuroraMySQL.Update.SpecialVersions.html)Langzeit-Support (Long-Term Support, LTS)[ zu verwenden. Neuere Engine-Versionen bieten Korrekturen zur Verbesserung der Sicherheit, Stabilität und Instance-Verfügbarkeit.

Um die Version des DB-Clusters zu überprüfen, öffne die Amazon Relational Database Service (Amazon RDS)-Konsole und überprüfe den Wert unter Engine-Version. Wenn der DB-Cluster auf Aurora MySQL Version 3 ausgeführt wird, verwende die Standardversion 3.05.2 oder die LTS-Version 3.04.1.

Hinweis: Wenn der DB-Cluster auf Aurora MySQL Version 2 ausgeführt wird, kannst du die erweiterte Amazon-RDS-Unterstützung nur für die Nebenversionen 2.11 und 2.12 verwenden. Version 2.11.5 ist die Standardversion.

Nachdem du die Engine-Version aktualisiert hast, installiere die Betriebssystem-Upgrades auf den Instances im DB-Cluster. Erstelle einen Aurora-Klon, um die Datenbank-Upgrades zu testen. Einige AWS-Regionen oder Availability Zones sind in früheren Instance-Klassen wie T2 oder R3 möglicherweise nicht verfügbar. Es hat sich bewährt, neuere Instance-Klassen wie T3 und R5 zu verwenden.

Die Instance-Klasse kann nicht geändert werden

Der Fehler Cannot modify the instance class tritt auf, wenn die Availability Zone nicht über genügend On-Demand-Kapazität für die von dir gewählte Instance-Klasse verfügt. Um dieses Problem zu beheben, warte ein paar Minuten und ändere dann die Instance-Klasse erneut. Dieser Fehler tritt auch auf, wenn die Instance-Klasse für deine Aurora-Engine und -Version in der Availability Zone, auf der die Instance ausgeführt wird, nicht verfügbar ist.

Führe den folgenden AWS-CLI-Befehl describe-orderable-db-instance-options aus, um die Availability Zones zu ermitteln, die deine Engine, Engine-Version und Instance-Klasse zulassen:

aws rds describe-orderable-db-instance-options --engine engine_name --engine-version engine_version --db-instance-class instance-class --query 'OrderableDBInstanceOptions[].AvailabilityZones'

Hinweis: Ersetze engine-name durch deine Aurora-Engine, engine-version durch die Engine-Version und instance-class durch die Instance-Klasse.

Version kann nicht gefunden werden

Der Fehler Cannot find version tritt auf, wenn du die AWS CLI verwendest, um die Instance-Klasse mit einer veralteten oder falschen Version zu ändern.

Führe die folgende Abfrage aus, um die Versionsnummer für die DB-Instance im Aurora MySQL-DB-Cluster abzurufen:

SELECT @@AURORA_VERSION;

Um die DB-Cluster-Engine-Version zu überprüfen, melde dich beim Cluster an und führe dann den folgenden Befehl describe-db-clusters aus:

aws rds describe-db-clusters \
--db-cluster-identifier example-cluster-identifier \
--query 'DBClusters[].EngineVersion' \
--output text \
--region Region-example

Hinweis: Ersetze example-cluster-identifier durch die Cluster-ID oder den ARN und ersetze Region-example durch deine Region.

Um die DB-Cluster-Engine zu aktualisieren, führe den folgenden Befehl apply-pending-maintenance-action aus:

aws rds apply-pending-maintenance-action --resource-identifier example-ARN --apply-action system-update --opt-in-type immediate

Hinweis: Ersetze example-ARN durch den DB-Cluster-ARN.

RDS unterstützt das Erstellen einer DB-Instance mit der folgenden Kombination nicht

Wenn du ein Upgrade auf die db.r4-Instance-Familie durchführst, der DB-Cluster jedoch eine frühere Version von Aurora ausführt, erhältst du den folgenden Fehlercode:

„DBInstanceClass=db.r4.large, Engine=aurora-mysql, EngineVersion=8.0.mysql_aurora.3.05.2, LicenseModel=general-public-license.“

Du kannst die db.r4-Instance-Familie nur in 2.x-Versionen verwenden, nicht in 3.x-Versionen. Du kannst auch keine Instance-Klassen für optimierte Lesevorgänge auf Aurora MySQL-Compatible ausführen. Wenn du versuchst, ein Upgrade auf die Instance-Klassenfamilie r6gd oder db.r6id durchzuführen, wird der folgende Fehlercode angezeigt:

„DBInstanceClass=db.r6gd.xlarge, Engine=aurora-mysql, EngineVersion=8.0.mysql_aurora.3.07.1, LicenseModel=general-public-license.“

Wenn du ein Upgrade auf die db.r8-Instance-Familie durchführst, die DB-Instance jedoch auf einer früheren Version von Aurora ausgeführt wird, erhältst du den folgenden Fehlercode:

„DBInstanceClass=db.r8g.large, Engine=aurora-mysql, EngineVersion=8.0.mysql_aurora.3.05.2, LicenseModel=general-public-license.“

Die db.r8-Instance-Familie ist nicht in allen Aurora-Versionen verfügbar. Beispielsweise kannst du die Instance-Klasse db.r5.8xlarge nur in Aurora-Version 3.08.0 und höher verwenden. Oder du kannst db.r7i nur in Version 3.08.0 und höher verwenden. Du kannst db.r7g jedoch auf Version 2.12.0 und höher sowie Version 3.03.1 und höher verwenden.

Führe den folgenden Befehl describe-orderable-db-instance-options aus, um die Engine-Version zu identifizieren, die deine Engine- und Instance-Klassenkombination zulässt:

aws rds describe-orderable-db-instance-options --engine example-engine --db-instance-class example-instance-class --query 'OrderableDBInstanceOptions[].EngineVersion'

Hinweis: Ersetze example-engine durch deine Engine und example-instance-class durch deine Instance-Klasse.

Ähnliche Informationen

DB-Instance-Klassentypen

AWS OFFICIAL
AWS OFFICIALAktualisiert vor einem Monat