AWS Resilience Hub

アプリケーションの耐障害性を定量的に評価し、RTO/RPO 目標に対する準拠状況の可視化と改善推奨を提供するレジリエンス管理サービス

概要

AWS Resilience Hub は、アプリケーションの耐障害性 (レジリエンス) を体系的に評価・管理するサービスです。CloudFormation スタック、EKS クラスター、Terraform ステートなどからアプリケーションの構成を自動検出し、定義した RTO (目標復旧時間) と RPO (目標復旧時点) に対する準拠状況を評価します。評価結果に基づいて具体的な改善推奨事項を提示し、AWS Fault Injection Service との連携で障害注入テストの実行計画も生成します。継続的な評価により、インフラ変更後のレジリエンス劣化を早期に検知できます。

レジリエンスポリシーと評価の仕組み

Resilience Hub の評価は、レジリエンスポリシーの定義から始まります。ポリシーには、インフラストラクチャ障害、AZ 障害、リージョン障害、アプリケーション障害の 4 つの障害タイプごとに RTO と RPO の目標値を設定します。たとえば「AZ 障害時に RTO 30 分、RPO 1 時間」のように定義します。アプリケーションの登録では、CloudFormation スタック、リソースグループ、EKS クラスター、AppRegistry アプリケーションなどをソースとして指定します。Resilience Hub はこれらのソースからリソースの依存関係を自動的にマッピングし、アプリケーションの構成図を生成します。評価を実行すると、各コンポーネントの現在の構成がポリシーの目標値を満たしているかを分析します。たとえば、RDS インスタンスがシングル AZ 構成の場合、AZ 障害時の RTO/RPO 目標を達成できないと判定されます。評価結果は「ポリシー準拠」「ポリシー違反」「改善の余地あり」の 3 段階で表示され、違反項目には具体的な推奨アクション (マルチ AZ 化、バックアップ頻度の変更、リードレプリカの追加など) が提示されます。

障害注入テストとの連携

Resilience Hub は AWS Fault Injection Service (FIS) と統合し、評価結果に基づいた障害注入テストの実行計画を自動生成します。評価で特定されたリスクシナリオ (AZ 障害、インスタンス停止、ネットワーク遅延など) に対応する FIS 実験テンプレートが提案され、実際にそのシナリオを再現してアプリケーションの挙動を検証できます。たとえば、マルチ AZ 構成の RDS でフェイルオーバーが正しく動作するか、Auto Scaling グループがインスタンス障害を検知して置換するか、といったシナリオを本番に近い環境でテストします。テスト結果は Resilience Hub に記録され、評価スコアに反映されます。テストに合格すれば、そのシナリオに対するレジリエンスが実証されたことになります。不合格の場合は、推奨アクションに従って構成を改善し、再テストするサイクルを回します。障害注入テストは本番環境で実行することも可能ですが、まずはステージング環境で十分に検証してから本番に適用するのが安全です。FIS のガードレール機能 (停止条件) を設定し、テストが想定外の影響を及ぼした場合に自動停止する安全策を講じます。

運用推奨事項と継続的評価

Resilience Hub の真価は、一度きりの評価ではなく継続的なレジリエンス管理にあります。EventBridge との統合により、CloudFormation スタックの更新やリソースの変更を検知して自動的に再評価をトリガーできます。これにより、新機能のデプロイやインフラ変更がレジリエンスを劣化させた場合に即座にアラートが発生します。運用推奨事項 (Operational Recommendations) として、アラームの設定、SOP (標準運用手順) の作成、障害注入テストの定期実行が提案されます。CloudWatch アラームの推奨では、各コンポーネントに対して監視すべきメトリクスと閾値が具体的に提示されます。SOP の推奨では、障害発生時の復旧手順を Systems Manager Automation ドキュメントとして生成し、手動復旧の手順書を自動化できます。CI/CD パイプラインに Resilience Hub の評価を組み込むことで、レジリエンスポリシーに違反するデプロイを自動的にブロックする品質ゲートを実現できます。評価 API を CodePipeline のアクションとして呼び出し、ポリシー違反があればパイプラインを停止する構成です。料金はアプリケーションの評価回数に基づき、月 1 回の評価であれば小規模アプリケーションで月額数ドル程度です。

共有するXB!