クラウド環境におけるディザスタリカバリ(DR)の重要性は年々高まっています。特に、リージョン障害や大規模障害に備えた仕組みは、事業継続計画(BCP)の観点から必須です。AWS Elastic Disaster Recovery(以下、DRS)は、AWSが提供するDRサービスで、オンプレミスやAWS内のシステムを別リージョンに迅速に復旧できる仕組みを提供します。
今回、DRSを用いてEC2インスタンスのレプリケーションとフェイルオーバーを検証しました。
AWS Elastic Disaster Recoveryとは
AWS DRS(AWS Elastic Disaster Recovery)は、AWSが提供するディザスタリカバリ(DR)サービスで、オンプレミスやクラウド上のシステムをAWSにレプリケーションし、障害時に迅速に復旧できるようにする仕組みです。
主な特徴は以下の通りです。
- シンプルな構成
専用エージェントをインストールするだけでレプリケーション開始 - 迅速なフェイルオーバー
数分でAWS上にシステムを起動可能。
RPO(Recovery Point Objective)とRTO(Recovery Time Objective)を短縮。 - 同一IPでの復旧が可能
プライベートIPを維持できるため、アプリケーション再設定不要 - コスト効率
通常時はレプリケーションのみで、AWS上に最小限のリソースを保持。
災害発生時に必要なインスタンスを起動するため、コスト効率が高い。 - ブロックレベルのレプリケーション
ソース環境(オンプレミスや他クラウド)のサーバーをAWSにリアルタイムで複製。
OS、アプリケーション、データを含む完全なシステムを対象。
ちなみに、なぜEDRではなく、DRSと略されるのか気になったのですが、FAQに答えがありました。
Disaster Recovery – AWS Elastic Disaster Recovery FAQs – Amazon Web Services
AWS Elastic Disaster Recovery の略称は AWS DRS です。DRS は「Disaster Recovery Service(ディザスタリカバリーサービス)」を意味します。この名称が選ばれた理由は、EDR という略称がすでに別の意味で広く使われているためです(EDR は「Endpoint Detection and Response」を指します)。
構成イメージ
ソースリージョン:東京(ap-northeast-1)
ターゲットリージョン:バージニア(us-east-1)
対象インスタンス:Windows Server 2022
ネットワーク構成:VPC、サブネット、セキュリティグループは事前に準備
以下のサイトを参考にしました。
– サポートWindows
https://docs.aws.amazon.com/drs/latest/userguide/Supported-Operating-Systems-Windows.html
– Agentインストール Windows への AWS レプリケーションエージェントのインストール
https://docs.aws.amazon.com/drs/latest/userguide/windows-agent.html
https://aws-elastic-disaster-recovery-us-east-1.s3.us-east-1.amazonaws.com/latest/windows/AwsReplicationWindowsInstaller.exe
– 通信要件
https://docs.aws.amazon.com/drs/latest/userguide/Network-diagrams.html#Network-diagrams-onprem-vpn
https://dev.classmethod.jp/articles/drs-onpremises-network/
検証してみた
AWSDRS設定
まずはDR先のバージニアリージョンでAWSDRSの設定をします。
「設定と初期化」ボタンから設定に進みます。
DRSの設定はあとから変更できるので、最初はデフォルト設定のままでも大丈夫です。
まず、レプリケーションサーバを配置するサブネットと、レプリケーションサーバのインスタンスタイプを指定します。
インスタンスタイプはデフォルトのt3.smallが推奨のようなので、そのままにしています。
次にボリュームとセキュリティグループを指定します。
こちらもデフォルト設定が推奨されているようなので、このままにします。
次にレプリケーションの設定です。
レプリケーションをプライベート接続にしたり、ネットワーク帯域幅の調整、バックアップ保持日数などの設定ができます。
今回はデフォルトままにします。
次にDRS起動設定です。
リカバリ実行時のリカバリサーバの起動設定になります。
今回は復旧前後のサーバIPを固定したいので、「プライベートIPをコピー」をオンにしました。
最後にデフォルトのEC2起動テンプレートを設定します。
あくまでデフォルト設定であり、ソースサーバ(DR元サーバ)ごとに設定できます。
リカバリサーバのデプロイ先サブネットを指定し、そのほかはデフォルト設定としました。
「確認と初期化」画面ではサマリが表示されるので、内容を確認し「設定と初期化」ボタンを押します。
以上でAWSDRSの初期設定は完了です。
ソースサーバの準備
次にDR対象となるEC2(Windows)を起動し、Agentをインストールします。
EC2にはマネージドポリシーの「AWSElasticDisasterRecoveryEc2InstancePolicy」をアタッチしました。
下記からインストーラーをダウンロードします。
Installing the AWS Replication Agent on Windows – AWS Elastic Disaster Recovery
DR先のリージョン用のインストーラーが必要なため、バージニアリージョンを指定します。
Windowsに管理者権限でサインインし、ダウンロードしたインストーラーを「管理者として実行」で起動します。
コマンドプロンプトが起動します。
「AWSElasticDisasterRecoveryEc2InstancePolicy」をアタッチしない場合は、アクセスキーの入力を求められますが、
今回はアタッチしたためリージョンのみ入力しました。レプリケーション先のリージョンを入力します。
その後、レプリケーションするディスクを選択するか聞かれますが、すべてのディスクが対象なので、何も入力せずエンターキーを押下します。
インストールが成功すると「… successfully installed.」が表示されるので、エンターキーで画面を閉じます。
AWSDRSコンソールを確認するとソースサーバとして登録され、同期が開始されていました。

EC2コンソールから「AWS Elastic Disaster Recovery Replication Server」という名前でレプリケーションサーバが起動していることも確認できます。
これで準備は完了しました。
次回リカバリを実行してみたいと思います。








