2022/1/19 ウェビナー「AWS運用で必ずおさえておきたいポイントとトラブル対応術〜Amazon RDS編」の Q&A を公開します

2022.01.21

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

みなさんこんにちは、杉金です。

2022/1/19 クラスメソッド株式会社主催「AWS運用で必ずおさえておきたいポイントとトラブル対応術〜Amazon RDS編」にご参加頂いた方から頂戴した質問と、その回答を公開します。

Q&A

Q.Amazon RDSのMySQLで運用していたものをAmazon Auroraに切り替えることで、速度や安定性のメリットを生み出したいと考えております。切り替えの注意点、メリット/デメリットをお教えいただけますか?

A.まず、切り替える際の考慮事項、切り替え手順、ベストプラクティスは以下のAWS公式ブログが参考になります。

RDS for MySQL データベースを Amazon Aurora へ移行するためのベストプラクティス

AWSから提供されているホワイトペーパーも役に立ちます。移行計画やトラブルシューティングなど広範囲に情報が載っています。

AWS ホワイトペーパーとガイド

「Aurora」で検索するとAurora移行に関するホワイトペーパーが出てきます。一応こちらにもホワイトペーパーへのリンクを記載いたします。

Amazon Aurora へのデータベースの移行

Amazon Aurora 移行ハンドブック

MySQL データベースから Amazon Aurora に移行するためのベストプラクティス

以上がAWS公式から得られる情報で、私の経験として特に重要なポイントを一つ挙げるとするなら、検証環境や開発環境で移行の動作検証をすることです。移行により発生する問題やトラブルは、製品仕様に依存する問題だけでなく、環境に依存する問題もございます。現状のDBと連携しているサービス、サーバー、ツール、スクリプトなどが移行によってどのような問題が発生するかは実際に移行してみないと明らかにならないところもあります。本番環境に類似した環境で移行を試してみることで注意点を洗い出せます。デメリットを挙げるとするなら、動作検証に伴うAWS利用料の発生ですが、移行に伴うトラブルを未然を防ぐことが期待できますので、移行準備として必要な作業と考えます。

Q.RDS MySQLとAurora MySQLのメリット・デメリットがまとまっている情報がありましたら、共有いただけると助かります。

A.セミナーにてご紹介しました以下の「AWSでデータベースを始めるのに必要な10のこと」の資料が参考になります。資料中盤以降にAuroraとRDSの比較が記載されています。

AWSでデータベースを始めるのに必要な10のこと

あとは弊社ブログにて比較記事もございますので、こちらも参考になるかと思います。

Q.RDSのRIに関する質問です。RIの契約期間中にDBバージョンのサポート切れが発生した場合、契約の残日数に応じて日割りなどで返金(Refund)されますでしょうか?

A.RIの返金につきましては、Amazon RDSのよくある質問に記載がございます。

Amazon RDS のよくある質問

Q: 予約はキャンセルできますか?

いいえ。リザーブド DB インスタンスはキャンセルできず、一括払いは (該当する場合) 返金不可能です。使用したかどうかにかかわらず、リザーブド DB インスタンスの期間が終了するまで、毎時間の料金をお支払いいただきます。

お客様にて各DBエンジンのライフサイクルを確認いただいた上で、どのRIを購入するのかをよくご検討いただく必要があります。

Q.RDSでは接続数の話がありましたが、これをEC2上で自前でDBMSを構築した場合の接続数は各DBエンジンの仕様に従う、ということになりますでしょうか

A.はい、自前でDBMSをインストールする場合はDBエンジン仕様(設定)に従います。RDSの場合はDBエンジンのタイプとDBインスタンスクラスのメモリサイズによって最大接続数のデフォルト値が決まります。(SQLServerは除く)

Amazon RDS ユーザーガイド - データベース接続の最大数

Q.RDSのリストアで直前に復旧したい場合、トランザクションログのバックアップなどは意識する必要はありますでしょうか。

A.AWS側でトランザクションログを制御しますので、トランザクションログのバックアップを意識する必要はございません。このあたりはAmazon RDSのよくある質問の内容が参考になります。

Amazon RDS のよくある質問

Amazon RDS は、DB インスタンスのバックアップと復元を行うための 2 つの方法を提供しています。自動バックアップとデータベーススナップショット (DB スナップショット) です。

Amazon RDS の自動バックアップ機能によって、DB インスタンスのポイントインタイムリカバリが可能になります。DB インスタンスに対して自動バックアップがオンになっている場合、Amazon RDS は毎日、お客様のデータの完全なスナップショットを自動的に作成し (任意のバックアップウィンドウ中に実施)、トランザクションログを取得します (DB インスタンスに対する更新が実施される)。ポイントインタイムリカバリを開始する際、DB インスタンスをリクエストされた特定の時刻の状態に復元するために、最も適切なデイリーバックアップにトランザクションログを適用します。Amazon RDS は、DB インスタンスのバックアップを、ユーザーが指定する限られた期間 (保持期間) 中、保持します。保持期間はデフォルトでは 7 日間ですが、最大 35 日間に設定可能です。保持期間中、特定時点への復旧を開始して、最大で復元可能な最新時刻 (Latest Restorable Time) まで、任意の秒数を指定することができます。DescribeDBInstances API を使用して、DB インスタンスの復元可能な最新時刻を返すことができます。これは通常過去 5 分以内です。代わりに、AWS マネジメントコンソールで DB インスタンスを選択し、コンソールの下部にあるパネルの [Description] タブでこれを閲覧することによって、その DB インスタンスの復元可能な最新時刻を知ることもできます。