ちょっと話題の記事

マルチAZ DBクラスター、RDS(MySQL,Postgres)の新しい高可用性オプションを試してみた

Amazon RDSの新機能、マルチAZ DBクラスターを起動して、フェイルオーバー操作を試してみました。
2021.11.24

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

AWSチームのすずきです。

Amazon RDS でプレビューリリースされたマルチAZ DBクラスター (3−AZ DBクラスター)、 3つのアベイアビリティゾーン(AZ)に3つのインスタンスを配置、1台のライターと、2台のリーダーの構成を試す機会がありましたので、紹介させていただきます。

マルチAZ DBクラスターの作成

リージョン

マルチAZ DBクラスターをサポートするオレゴン(us-west-2)を利用しました。

DBエンジン

MySQL バージョン 8.0.26、PostgreSQL バージョン 13.4 が マルチ AZ DB クラスターをサポートします。

今回は MySQL 8.0.26 を利用しました。

デプロイオプション

高可用性とパフォーマンス向上を実現する 3-AZ DB クラスターの選択が可能になりました。

インスタンスクラス

インスタンスファミリーは標準の「m6gd」、メモリ最適化「r6gd」。 スペックは「large」から「16xlarge」までの選択が可能です。

今回、マルチAZ DBクラスターをサポートする最小スペック「db.m6gd.large」を利用しました。

ストレージ

マルチAZクラスターがサポートする ストレージタイプは「IO1」、プロビジョニングIOPSになります。

ストレージ割当サイズ、プロビジョニングIOPSは最小値で設定しました。

1AZあたり発生する月額コスト、0.12USD/IOPS (東京リージョン価格)に留意してご利用ください。

クラスター一覧

データベースの作成開始から20分程度で、マルチAZ DBクラスターが利用可能になりました。

フェイルオーバー

マルチAZ DBクラスターを選択、「フェイルオーバー」操作を試みました。

ライターインスタンスが「us-west-2b」→「us-west-2c」になりました。

まとめ

3つのAZを利用するマルチAZ DBクラスター、従来のMultiAZ構成と比較して複数AZ障害が発生した場合の耐性向上が期待できます。

また、マルチAZ DBクラスターでは待機系のインスタンスをリードレプリカとして活用出来るようになりました。 従来のRDSで MultiAZ:2台+リードレプリカ:2台、相当のDB性能を3インスタンス分の料金で利用できる可能性があります。

2021年11月時点でマルチAZ DBクラスターはプレビュー。利用可能なリージョンもバージニア、オレゴン、アイルランドに限定されますが、 高い可用性が求められる RDS (MySQL、PostgreSQL)を必要とする場合、ぜひご評価いただければと思います。