[アップデート] Amazon RDS で別リージョンへのバックアップレプリケーション機能が MySQL と MariaDB でもサポートされ、全エンジンで利用出来るようになりました

2023.02.24

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

いわさです。

Amazon RDS の一部エンジンでは、RDS の自動バックアップを別リージョンへレプリケーションする機能がサポートされていました。

これまで MySQL と MariaDB ではこの機能が使えなかったのですが、本日のアップデートで MySQL と MariaDB でもサポートされました。

これで RDS の全エンジンで別リージョンへのバックアップレプリケーションが簡単に導入出来るようになりました。
簡単に検証を行ったので紹介します。

バックアップレプリケーションを有効化

公式ドキュメント(英語版)でも既に MariaDB と MySQL についてサポート済みであると記載が変更されています。

サポートバージョンの表記はなかったので、今回は本日時点で選択可能な中で最も古そうな MySQL 5.7.33 と MariaDB 10.3.34 の db.t3.micro で確認してみました。

手順としては簡単で、構成のバックアップ設定にて「別の AWS リージョンでレプリケーションを有効化」を選択します。
有効化を選択すると、送信先リージョンとバックアップ保持期間を設定することが出来ます。

今回は東京リージョンから大阪リージョンとシンガポールリージョンへレプリケーションを設定してみました。
後述しますが、データベースインスタンスの暗号化を有効化している場合はレプリケーション用の KMS キーの指定も必要となります。

レプリケーションされたバックアップを確認

少し待つとレプリケーション先のリージョンで、レプリケート済みの自動バックアップが確認出来ると思います。

暗号化されたインスタンスで KMS キーが設定されていないと自動で無効化になる

データベースインスタンス作成時と変更時にこの機能を有効化出来るのですが、どうやら新規作成時にデータベース暗号化の有効にしつつ別リージョンへのバックアップレプリケーション設定で KMS キーを指定しなかった場合は、自動で無効化に切り替わるようなので注意が必要です。

上記のように KMS キーを指定しなくてもエラーにはならないのですが、作成されたインスタンスの設定値を見ると別リージョンへのバックアップレプリケーションが無効になっています。

インスタンス変更時は必須になっている

気をつけるのは新規インスタンス作成時だけで良さそうです。
次のように KMS キーを指定せずにレプリケーションを有効化しようとしたところ、KMS キーが必須ということで変更に失敗しました。

KMS キーを指定しなおす

変更時に再度 KMS キーを指定しなおせば有効化されます。
今回はレプリケーション先の大阪リージョンの RDS マネージドキーを使いました。

レプリケーション設定されていることが確認出来ました。

さいごに

本日は Amazon RDS で別リージョンへのバックアップレプリケーション機能が MySQL と MariaDB でもサポートされたので確認してみました。

バックアップレプリケーション機能自体は他のエンジンでも何度か登場しているので詳細は割愛しますが、今回で全エンジンがサポートされたというのは大きいですね。
コスト観点で問題がなければ設定は簡単なので手軽な DR 対策として始めることが出来そうです。

バックアップレプリケーションが有効化されていない既存インスタンスに対しての有効化も可能なので、MySQL/MariaDB をご利用の方は検討してみましょう。