質問: 知識が乏しいため、必要な情報が不足している場合はコメントいただけると幸いです。 ### やりたいこと * アジア4か国に対応するWEBサービスを各国ごとに開発したい。(各国でEC2インスタンスを立ち上げる) * DBは個人情報を扱う場合があるため、こちらも国ごとにRDSインスタンスを立ち上げる。 * 各国でフロント向けWEBサーバー、管理画面向けWEBサーバー、DBサーバーを用意する。 * ALBは1つ ### 悩んでいること * セキュリティ/障害のリスクを考えた場合に、各国でリージョンを分けるべきかどうか * リージョンを分けなかった時のメリットは運用面での効率のみか * ALBは各国共通のALB1台で問題ないのか 上記で悩んでおります、普通ならこういう構成にする、みたいなものがあればおしえてください。 よろしくお願いします
回答: > > セキュリティ/障害のリスクを考えた場合に、各国でリージョンを分けるべきかどうか > > > これはもっと詳細にリスク見積もりをしない限り妥当な答えを出すのは難しいです。 なので、ちょっとここで回答が出る範疇を超えるでしょう。 当然ですがそれなりにコストもかかるので、リスクとコストの評価をした上での判断が必要です。 > > リージョンを分けなかった時のメリットは運用面での効率のみか > > > 運用面、費用面では確実に楽になります。 「のみ」と言いますが、リージョンを分けて運用するのはそれなりに大変ですし、相当にコストも増えます。 DRとしてのリージョン分割とはまた違いますし。 ただ、前述のリスク評価で要件的に必須なのであれば考える余地はなくなりますね。 > > ALBは各国共通のALB1台で問題ないのか > > > 同リージョン(というか、同VPCにあるサブネット内)のEC2インスタンスでないとターゲットに指定できないのでこれは無理かと思います。 ターゲットにIPが指定できるので、他リージョンにあるVPCをピア接続でつないで無理やり送ることはできるかもしれませんが、物理的な距離の分レイテンシが発生するでしょうし、そのような使い方でうまくいくのかはさすがにちょっとわかりません。 現実的なのは各リージョンごとにリソース(ALB含む)を作っておいてGeo Routingで振り分ける、でしょうか。 要件によってはGlobal Accelaratorも一つの手段でしょう。 もっともこれはインフラの話しか含まれていないので、アプリの方をどう設計するかでも多少変わるでしょう。 CloudFront等CDNを使える部分も出てくるかもしれません。