• YH YH
  • — 3 weeks ago
Amazon Auroraのレプリケーション

新規開発の案件で事前調査としてAWSでのインフラ構築にあたって 認識が間違っていないか確認も含めてAuroraのレプリケーションについて調査しました。

確認事項

プライマリ・セカンダリ構成でリードレプリカを複数台用意する場合、 Webサーバ側ではリードレプリカのエンドポイントを全て設定しておく必要があるのか? DBの構成管理を設置してDBに問題が発生した場合に再起動をかけるように自動化しておく必要があるのではないか?

調査結果

AWSのドキュメントで確認しました。

知りたいことがわかりやすく記されており、ここで同じ事を書くのは恐縮ですが…

まず、確認事項とは違うのですがAuroraのレプリケーションはどのようなものか

AuroraとRDS(MySQL、mariaDB、PostgreSQL等)のレプリケーションでは違いがあり、Auroraに優位性がある

RDSではDBのログをトレースする事でレプリケーションしています。

Auroraは内部ストレージが同期されていて、同期のタイムラグがRDS(他のRDBMS)と比較して短いそうです。

リードレプリカを複数台用意した場合、Webサーバ側では1つのエンドポイントの設定でよい

リードレプリカにエンドポイントを持たせるかどうかはAWSの管理画面から設定する事が可能で、

エンドポイントを持たないリードレプリカは、1つのエンドポイントから内部で振り分けられる構成にできるとのこと。

また、プライマリ・セカンダリ構成でプライマリ(書き込みする方)に問題が発生して停止した場合

自動的にリードレプリカの中からプライマリに昇格するそうです。

自動的に再起動をかける用途では構成管理は必要ないのではないでしょうか。

AuroraのDBエンジンがこれらの機能を担っているとか。Auroraいいですね。

参考は以下

Amazon Aurora でのレプリケーション

よくある質問 Amazon RDS | AWS

説明が合っているか不安を残しつつ…以上になります。

YH

System engineer

Amazon Auroraのレプリケーション

お気軽に
お問い合わせください。

お問い合わせ