Amazon Aurora MySQL DB インスタンスのインスタンスクラスを変更またはスケーリングすると、エラーが発生する理由を知りたいです。

所要時間2分
0

Amazon Aurora MySQL 互換エディション DB インスタンスのスケーリング、またはインスタンスクラスの変更を試みるとエラーが発生します。

簡単な説明

Aurora MySQL 互換 DB インスタンスのインスタンスクラスを変更すると、次のいずれかのエラーが発生することがあります。

  • 「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」 (RDS は、次の組み合わせでの DB インスタンスの作成をサポートしていません)

この問題をトラブルシューティングするには、発生したエラーに応じて次の手順を実行します。

解決策

注: AWS コマンドラインインターフェイス (AWS CLI) コマンドの実行中にエラーが発生した場合は、「AWS CLI で発生したエラーのトラブルシューティング」を参照してください。また、AWS CLI の最新バージョンを使用していることを確認してください。

エラーをトラブルシューティングする前に、最新のエンジンバージョンで DB クラスターを実行するか、長期サポート (LTS) バージョンを使用することをおすすめします。新しいエンジンバージョンには、セキュリティ、安定性、インスタンスの可用性を向上させるための修正が含まれています。

DB クラスターのバージョンを確認するには、Amazon Relational Database Service (Amazon RDS) コンソールを開き、[エンジンバージョン] の値を確認します。DB クラスターを Aurora MySQL バージョン 3 で実行中の場合は、デフォルトバージョンである 3.05.2 または LTS バージョン 3.04.1 を使用してください。

注: DB クラスターを Aurora MySQL バージョン 2 で実行中の場合は、2.11 および 2.12 のマイナーバージョン用の Amazon RDS 延長サポート以外は使用できません。バージョン 2.11.5 がデフォルトです。

エンジンバージョンのアップグレード後、DB クラスターのインスタンスにオペレーティングシステム (OS) のアップグレードをインストールします。Aurora クローンを作成してデータベースのアップグレードをテストします。一部の AWS リージョンまたはアベイラビリティーゾーンは、T2 や R3 などの以前のインスタンスクラスでは使用できない場合があります。T3 や R5 などの新しいインスタンスクラスを使用することをおすすめします。

Cannot modify the instance class (インスタンスクラスを変更できません)

Cannot modify the instance class エラーは、選択したインスタンスクラスに対応する十分なオンデマンドキャパシティがアベイラビリティーゾーンにない場合に発生します。この問題を解決するには、数分待ってから、インスタンスクラスを再度変更します。このエラーは、インスタンスクラスがお使いの Aurora エンジンと、インスタンスを実行しているアベイラビリティーゾーンのバージョンでは使用できない場合にも発生します。

エンジン、エンジンバージョン、インスタンスクラスを使用できるアベイラビリティーゾーンを特定するには、次の AWS CLI コマンド describe-orderable-db-instance-options を実行します。

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

注: 実際のものでそれぞれ、engine-name を Aurora エンジンに、engine-version をエンジンバージョンに、instance-class をインスタンスクラスに置き換えます。

Cannot find version (バージョンが見つからない)

AWS CLI を使用してインスタンスクラスを非推奨バージョンまたは不適切なバージョンに変更すると、Cannot find version エラーが発生します。

Aurora MySQL DB クラスター内の DB インスタンスのバージョン番号を取得するには、次のクエリを実行します。

SELECT @@AURORA_VERSION;

DB クラスターエンジンのバージョンを確認するには、クラスターにログインし、次の describe-db-clusters コマンドを実行します。

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

注: 実際のものでそれぞれ、example-cluster-identifier をクラスターの識別子または ARN に、Region-example をリージョンに置き換えます。

DB クラスターエンジンをアップグレードするには、次の apply-pending-maintenance-action コマンドを実行します。

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

注: example-ARN は、実際の DB クラスターの ARN に置き換えます。

RDS does not support creating a DB instance with the following combination (RDS は、次の組み合わせでの DB インスタンスの作成をサポートしていません)

db.r4 インスタンスファミリーへのアップグレードを試みたものの、DB クラスターが以前のバージョンの Aurora を実行している場合、次のエラーコードが表示されます。

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

db.r4 インスタンスファミリーは 2.x バージョンでのみ使用できます。3.x バージョンでは使用できません。また、Optimized Reads インスタンスクラスは Aurora MySQL 互換では実行できません。r6gd または db.r6id インスタンスクラスファミリーにアップグレードしようとすると、次のエラーコードが表示されます。

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

db.r8 インスタンスファミリーへのアップグレードを試みたものの、DB インスタンスを以前のバージョンの Aurora で実行している場合、次のエラーコードが表示されます。

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

db.r8 インスタンスファミリーは、一部の Aurora バージョンでは使用できません。たとえば、db.r5.8xlarge インスタンスクラスは Aurora バージョン 3.08.0 以降でのみ使用できます。db.r7i はバージョン 3.08.0 以降でのみ使用できます。ただし、db.r7g はバージョン 2.12.0 以降および、バージョン 3.03.1 以降で使用できます。

使用しているエンジンとインスタンスクラスの組み合わせが有効なエンジンバージョンを特定するには、次の describe-orderable-db-instance-options コマンドを実行します。

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

注: 実際のものでそれぞれ、example-engine をエンジンに、example-instance-class をインスタンスクラスに置き換えます。

関連情報

DB インスタンスクラスの種類

AWS公式
AWS公式更新しました 1ヶ月前
コメントはありません

関連するコンテンツ