Case Study

DevOps活用によるDisaster Recoveryサイト構築

作成者: Rob|2023/01/13 19:37:25

Challenges

資金調達モジュールは、トラクターの資金調達のための見積もりを提供するためのアプリケーションで、サードベンダーにより開発されていました。RPOを5分以内に抑えるために、プライマリ・データ・センターがオフラインになった場合に稼働するDRサイトの構築プロジェクトが立ち上がりました。DRサイトのコストをできるだけ低く抑えることも大きな課題の1つでした。またアプリケーション側の制約で、DRサイトのデータベース・サーバーの IP アドレスをプライマリサイトと同じにする必要も生じました

Our Solution

AWS クラウドを活用してDRサイトを作成し、AWS 内の VPC (Virtual Private Cloud)への VPN トンネルを設定しました。データベースサーバーについては、IPTABLESを使ってNAT機能やQoS(mangleテーブル)などの機能を活用し、プライマリデータベースとAWS上のDRデータベースの 通信用ネットワークを設定しました。このアーキテクチャでは、Microsoft SQL レプリケーション技術を活用しています。アプリケーションサーバーについては、最新のビルドがアーティファクトリポジトリにアップロードされると自動でコードを取得するよう設定しました。また、オープンソースのAnsibleを使用して災害時の切り替え自動化スクリプトを作成しました。このスクリプトにより、DRサイトへの切り替えを5分以内に行うことができるようになりました。

Results

復旧時間の短いDRサイトを持つという要件は、重要なシステムでよく聞かれる要件ですが、費用対効果が低いため、既製のソリューションを使用してこれを実装することは困難です。IPTABLESやAnsibleのようなLinux標準のオープンソース技術を活用することによって、低コストですべてのクライアント要件を満たすことができました。DRサイトを運用するための総コストは、年間2,000米ドルです。

Tool Set

AWS EC2 - VM Linux routing, AWS – VPC, AWS VPN - On prem to Cloud connectivity