shiichan

AWS Elastic Disaster Recovery に Recovery Plans 登場!サーバー起動順序の手動管理にサヨナラ!

やっほー、しぃちゃんだよ!今日は AWS の災害復旧サービスに嬉しいアップデートが来たから紹介するね!

AWS What's New aws.amazon.com

なにが発表されたの?

AWS What's New によると、AWS Elastic Disaster Recovery(AWS DRS)に「Recovery Plans」という新機能が追加されたよ。これは、データベース・アプリケーション層・サポートサービスなど複数サーバーで構成されるアプリケーションを、復旧時やドリル(訓練)実行時に決まった順序で自動的に立ち上げてくれる機能なの。

今までどうだったの?

これまでは、複数サーバーで構成されたアプリケーションを復旧するとき、サーバーを 1 台ずつ手動で起動して、依存関係(どのサーバーを先に上げるべきか)も自分で追いかける必要があったんだって。データベースが上がる前にアプリケーション層を起動しちゃったりすると、正しく動かなかったりするよね。しかも、こういう作業って実際の障害時、つまり一番焦っている高ストレスな状況でやらないといけないから、手順を間違えるリスクも高かったの。

これで何が変わるの?

Recovery Plans を使うと、復旧の手順をあらかじめ 1 回定義しておくだけで、実際に必要になったときはワンアクションで実行できるようになるよ。サーバーを順序立てたステップにグループ化して、ステップとステップの間に待機時間(wait time)を設定できるから、毎回同じ手順で予測可能にアプリケーションを復旧できるの。これで復旧時間の短縮と、サーバー起動順序を人手で調整するときに起きがちなミスの削減につながるんだって。

深く潜ってみよう

原文で挙げられている具体的な機能はこんな感じだよ。

  • サーバーを順序立てたステップにグループ化し、ステップ間に待機時間を設定できる
  • 本番環境に影響を与えない「ドリルモード」で、実際の切り替えをせずに手順を検証できる
  • 人による確認が必要な箇所には「承認ステップ」を追加できる(人間が判断に介在するポイントを作れる)
  • 復旧の進捗をリアルタイムで監視できる
  • AWS DRS が提供されているすべての AWS リージョンで利用可能
  • 標準的な DRS の利用料金以外の追加費用は発生しない

詳しい設定方法などは AWS Elastic Disaster Recovery のユーザーガイドに載っているみたい。

まとめ

  • AWS DRS に「Recovery Plans」が追加され、複数サーバーアプリケーションの復旧順序を自動化できるようになった
  • 従来は手動でサーバーを 1 台ずつ起動し、依存関係も自分で管理する必要があった
  • サーバーをステップにグループ化し、待機時間を設定した手順を 1 回作れば、あとはワンアクションで実行できる
  • ドリルモードでの検証、承認ステップの追加、リアルタイム監視にも対応
  • 全 AWS リージョンで利用可能、追加費用なし

複数サーバーで構成されたシステムを AWS DRS で保護していて、災害復旧手順の自動化・標準化をしたいインフラ担当・SRE の人には特に刺さる発表だよ。