このページでは、テストを作成する方法について説明します。テストは、ターゲット リソースに対するフォールト インジェクション テストのインスタンスです。このテストは、障害のために失敗します。
新しいテストを設定するには、テスト テンプレートを作成します。このテンプレートでは、挿入する障害とターゲット リソースを定義します。
フェイルオーバー Cloud SQL の新しいテスト テンプレートを設定する
この障害により、HA Cloud SQL のプライマリ インスタンスからレプリカ インスタンスにフェイルオーバーできます。
続行する前に、次のものを用意する必要があります。
- プロジェクト内の Cloud SQL インスタンスを表示する権限。
- Fault Injection Testing API がプロジェクトで有効になっている。
roles/faulttesting.operatorロール。
新しいテスト テンプレートを作成する手順は次のとおりです。
- Google Cloud コンソールを開きます。
- Fault Injection Testing の [概要] ページに移動します。
- [テスト テンプレートを作成] を選択します。
- または、Fault Injection Testing の [概要] ページで、左側のナビゲーション バーの [テスト テンプレート] をクリックし、[テンプレートを作成] をクリックします。
- [障害タイプ] セクションで、[Cloud SQL のフェイルオーバー] オプションを選択します。
- [ターゲット] セクションで、フィルタを使用して単一のインスタンスを選択します。注: Cloud SQL の場合、テストを停止すると、データベースはセカンダリ ゾーンで引き続き実行され、最初のプライマリ ゾーンでの実行に自動的に戻ることはありません。インスタンスをフェイルバックする場合は、手動で行うか、新しくフェイルオーバーされたインスタンスをターゲットとする別のテストを実行します。
- [期間] セクションの期間フィールドは編集できず、3 分に設定されています。
- [テンプレート名] セクションで、テンプレートのわかりやすい名前を入力します。必要に応じて、説明に詳細を入力します。
- [確認] セクションで次の操作を行います。
- 選択した設定の概要が表示されます。
- 自動ドライランが完了するまで待ちます。
- ドライランが完了すると、障害注入が行われるリソースのリストが表示されます。ターゲット リソースにエラーがある場合も、ここに表示されます。
- テスト テンプレートを作成します。テンプレートが作成されたことを示す確認メッセージが表示され、新しいテンプレートがテンプレートのリストに表示されます。
Degrade Application Traffic 障害の新しいテスト テンプレートを設定する
この障害により、指定したアプリケーション ロードバランサを使用して、L7 トラフィックを選択的に劣化させることができます。
続行する前に、次のものを用意する必要があります。
- プロジェクト内のロードバランサの転送ルールとバックエンド サービスを表示する権限 -
compute.viewer, compute.networkViewerまたはviewerロール。 roles/faulttesting.operatorロール。
テストコマンドは Google Cloud CLI で実行できます。Google Cloud CLI にアクセスするには、Google Cloud SDK をインストールし、ターミナルで gcloud init を実行して認証します。ウェブベースのコンソールにアクセスするには、 https://console.cloud.google.com/を開きます。コマンドライン アクセスの場合、OS(Windows、Linux、macOS)用の SDK をダウンロードし、gcloud
init を実行してログインし、プロジェクトを構成します。テストコマンドの例を以下に示します。
新しいテスト テンプレートを作成する手順は次のとおりです。
- Google Cloud コンソールを開きます。
- Fault Injection Testing の [概要] ページに移動します。
- [テスト テンプレートを作成] を選択します。
- または、Fault Injection Testing の [概要] ページで、左側のナビゲーション バーの [テスト テンプレート] をクリックし、[テンプレートを作成] をクリックします。
- [Fault Type] セクションで、[Degrade application traffic] オプションを選択します。
- [ターゲット] セクションで、フィルタを使用して [XLB(外部ロードバランサ)] または [ILB(内部ロードバランサ)] を選択します。
- (必須)ターゲットにする転送ルールの一部であるロードバランサ フロントエンド サービスを選択します。
- [Fault Parameters] セクションで、次のように設定します。
- ロードバランサの障害のタイプ - 次の中から選択します。
- HTTP 遅延の挿入 - 選択した転送ルールに遅延を挿入します。
- 遅延の割合 - 遅延の影響を受けるトラフィックの割合。残りのトラフィックは通常どおり通過します。
- レイテンシの期間 - この遅延トラフィックに追加するレイテンシの量。
- HTTP エラーの挿入 - 選択した転送ルールに対して HTTP エラー レスポンスを送信します。次のパラメータを指定します。
- エラーコード - ロードバランサから返されることが想定されるエラー レスポンス コード(理想的には 5xx レスポンス コード)。
- エラーの割合 - 指定されたエラー レスポンス コードを送信するトラフィックの割合。残りのトラフィックは通常のレスポンス コードを受け取ります。
- テスト期間 - 障害状態が継続する期間を決定します。
- ロードバランサの障害のタイプ - 次の中から選択します。
- [テンプレート名] セクションで、テンプレートのわかりやすい名前を入力します。必要に応じて、説明に詳細を入力します。
- [確認] セクションで次の操作を行います。
- 選択した設定の概要が表示されます。
- 自動ドライランが完了するまで待ちます。
- ドライランが完了すると、障害注入が行われるリソースのリストが表示されます。ターゲット リソースにエラーがある場合も、ここに表示されます。
- テスト テンプレートを作成します。テンプレートが作成されたことを示す確認メッセージが表示され、新しいテンプレートがテンプレートのリストに表示されます。
次のステップ
作成したテスト テンプレートを使用してテストを実行します。