この記事では、Infrastructure Resiliency Manager でゾーン ダウン ドリル (プレビュー) を定義する方法について説明します。 この機能は、可用性ゾーンの障害をシミュレートし、アプリケーションの回復性を検証します。 また、Chaos ワークスペースの構成、ID の管理、障害の設計、ゾーン障害に対するサービス グループの準備の検証についても説明します。
Prerequisites
ゾーンダウンドリルを定義する前に、次の前提条件を確認してください。
- 既存のサービス グループに必要なリソースがあることを確認します。
- Azureロールベースのアクセス制御 (RBAC) アクセス許可を設定します。 サポート マトリックスを参照してください。
- サービス グループの復旧計画を設定します。
- Chaos Workspace が作成されるサブスクリプションに、
Microsoft.Chaos、Microsoft.Insights、Microsoft.OperationalInsights、およびMicrosoft.Automationリソース プロバイダーの名前空間を登録します。
リソース プロバイダーの名前空間を登録する
リソース プロバイダーの名前空間を使用すると、ドリルの設計、実行、監視、および必要な監視セットアップの作成を有効にすることができます。
リソース プロバイダー名前空間を登録するには、次の手順に従います。
- Azure ポータルで、Subscriptions に移動し、リソース プロバイダーを登録するサブスクリプションを選択します。
- [サブスクリプション] ウィンドウで、[>] を選択します。
- リソース プロバイダー ウィンドウで、リソース プロバイダーの名前空間 (たとえば Microsoft.Chaos) を検索し、一覧からそれを選択して、登録 を選択します。
登録プロセスは約 15 分から 20 分で完了します。
Availability Zone の障害対応ドリルの定義を作成する
ドリル定義を使用すると、ゾーンダウン ドリルのパラメーターを設定し、実行の準備を行えます。 含まれているリソースを構成し、サポートされているリソースのエラーを設計し、実行前に準備状況を確認できます。
可用性ゾーンダウン シミュレーションドリルを定義するには、次の手順に従います。
Azure ポータルで、Service groups に移動し、ドリルを定義するサービス グループを選択します。
選択したサービス グループ ウィンドウで、回復性>Drills を選択します。
[ドリル] ウィンドウ で 、[ + ドリルの作成] を選択します。
[ 可用性ゾーンダウンドリルの作成 ] ウィンドウの [ 基本 ] タブで、ドリル インスタンスの名前を入力します。 Chaos ワークスペースと Log Analytics ワークスペースに関連付ける サブスクリプション と リージョン を選択します。
可用性ゾーンダウンドリルのサブスクリプションまたはリージョンは、サービス グループのサブスクリプションまたはリージョンと異なる場合があります。
[ アクセス許可 ] タブ で、システム割り当て ID または ユーザー割り当て ID を 選択します。これにより、サービス グループ リソースを安全にフェッチし、復旧計画を実行し、メトリックを管理できます。
同じ ID を障害挿入に使用することも、別の ID を選択することもできます。
[ 確認と作成 ] タブで構成を確認し、[ 作成 ] を選択してドリル インスタンスの作成を確認します。
Note
各サービス グループを 1 つのドリル インスタンスに関連付けることができます。
ドリルのリソースを確認して構成する
アクセス許可を確認し、リソースの包含を検証し、メトリックの準備状況を評価し、ドリル実行を成功させるために必要なリソースを含めることができます。
ドリルのリソースを確認して構成するには、次の手順に従います。
選択したサービス グループ ウィンドウで、回復性>Drills を選択します。
[ドリル] ウィンドウ で 、作成したドリル インスタンスを選択します。
ドリルのロールの割り当て状況を確認する
ドリル ロールの割り当ての状態を確認するには、次の手順に従います。
選択したドリル インスタンス ペインで、設定>Identity とアクセス許可を選択します。
[ ID とアクセス許可 ] ウィンドウの [ ロールの割り当ての状態] で、[ 詳細の表示] を選択します。
ドリル ロールの割り当て ペインで、ID の一覧と、それぞれに対応するロール割り当ての状態を確認します。
Note
ドリル ロールの割り当ての状態にエラーがある場合は、[ ロールの割り当ての準備状況の評価] を選択して状態を再評価します。
ドリルに含まれるリソースを確認する
ゾーンダウンドリルを使用すると、ドリルに含まれるリソースを確認できます。 ドリルは次のアクションを実行します。
- 既定でネイティブゾーンの回復性ソリューションを持つリソースが含まれています。これらのリソースは、障害挿入の対象となります。
- 手動フェールオーバーを必要とするリソースの復旧計画をサービス グループに関連付けます (たとえば、Virtual MachinesとAzure Site Recovery)。
- ネイティブゾーンの回復性がない、復旧計画の一部ではない、またはリソースの種類に対するゾーンの回復性検出をサポートしていないリソースを除外します。
ドリルにリソースを含めるには、次の手順に従います。
選択したドリル インスタンス ペインで、[>] を選択します。
[ ドリル スコープ ] ウィンドウの [ 回復性ソリューション ] タブの [ ドリルから除外されたリソース] で、[ 詳細の表示] を選択します。
[ 詳細の表示とリソースの追加 ] ウィンドウで、除外されたリソースを追加するには、一覧からリソースを選択し、[ リソースを含める] を選択します。
メトリックを確認する
ドリル実行のメトリックを確認するには、次の手順に従います。
- 選択したドリル インスタンス ペインで、[設定]>[監視] を選択します。
- [ 監視 ] ウィンドウで、リソースの一覧と、ドリル実行に対応するメトリックの準備状態を確認します。
サポートされているリソースとサポートされていないリソースの設計エラー
ドリルでサポートされているリソースとサポートされていないリソースのエラーを設計するには、次の手順に従います。
選択したドリル インスタンス ペインで、[>] を選択します。
[ ドリル スコープ ] ウィンドウの [障害デザイナー ] タブで、リソースの対応する障害設計状態を確認または変更するには、一覧からリソースを選択し、[ エラーの編集] を選択します。
サポートされていないリソースの種類のエラーの詳細の構成の場合は、Fault の詳細 ペインで、Azure Runbook を使用してカスタム エラー ロジックを定義し、Save を選択します。
ランブックでカスタム エラーを使用する場合は、ランブックに渡す以下の必須パラメーターを含めます。
ResourceIds- Duration
-
FaultLocation(今のところゾーン)
ロールの割り当てを完了するには、[ 障害デザイナー ] タブで、一覧からリソースの種類を選択し、[ 含めて障害の挿入の準備 ] または [障害の挿入から除外] を選択します。
既定では、すべてのリソースが [要注意 ] 状態に表示されます。 準備状況の問題をトラブルシューティングするには、各リソースに対応する要注意を選択します。 障害挿入時間の設定で、障害の継続時間を設定できます(既定の時間は 10 分です)。
準備状態を確認し、構成の誤差を修正する
障害の設計が完了したら、すべての概要ウィジェットの準備状況を確認します。
構成の誤差を確認して修正するには、次の手順に従います。
選択したドリル インスタンス ペインで、概要>Resync を選択し、準備状況を確認します。
ドリル実行準備状態 のステータスが 未準備 と表示されている場合は、そのステータスを選択して、フラグが付けられたエラーを確認します。
[ ドリル実行の準備状態 ] ウィンドウで、表示されているエラーを修正し、準備チェックを再実行します。 状態が [準備完了] に変わります。
編集操作のたびにドリル インスタンスを更新します。