チュートリアル: 定期的な実験をスケジュールする - AWS 障害インジェクションサービス

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

チュートリアル: 定期的な実験をスケジュールする

で AWS Fault Injection Service (AWS FIS) でフォールトインジェクション実験を実行できます。 AWS ワークロード。これらの実験は、指定されたターゲットに対して実行する 1 つ以上のアクションがあるテンプレート上で実行します。も使用する場合 Amazon EventBridgeでは、実験を 1 回限りのタスクまたは定期的なタスクとしてスケジュールできます。

このチュートリアルを使用して、 を実行する EventBridge スケジュールを作成します。 AWS FIS 5 分ごとに実験テンプレート。

前提条件

このチュートリアルを開始する前に、 に が必要です。 AWS FIS スケジュールに従って実行する実験テンプレート。作業実験テンプレートが既にある場合は、テンプレート ID と を書き留めておきます。 AWS リージョン。 それ以外の場合は、「」の手順に従ってテンプレートを作成しチュートリアル: インスタンスの停止と使用開始をテストする AWS FIS、このチュートリアルに戻ることができます。

ステップ 1: IAMロールとポリシーを作成する

IAM ロールとポリシーを作成するには
  1. でIAMコンソールを開きますhttps://console.aws.amazon.com/iam/

  2. 左側のナビゲーションペインから、[ロール] を選択し、[ロールの作成] を選択します。

  3. カスタム信頼ポリシー を選択し、次のスニペットを挿入して許可します。 Amazon EventBridge ユーザーに代わってロールを引き受けるスケジューラ。

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "scheduler.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

    [Next (次へ)] を選択します。

  4. [アクセス許可の追加][バケットポリシーの追加] を選択します。

  5. を選択しJSON、次のポリシーを挿入します。を置き換える your-experiment-template-id 前提条件ステップの実験のテンプレート ID を持つ 値。

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "fis:StartExperiment", "Resource": [ "arn:aws:fis:*:*:experiment-template/your-experiment-template-id", "arn:aws:fis:*:*:experiment/*" ] } ] }

    スケジューラの実行のみを制限できます。 AWS FIS 特定のタグ値を持つ実験テンプレート。例えば、次のポリシーは、すべての に対する StartExperiment アクセス許可を付与します。 AWS FIS は実験しますが、スケジューラは というタグが付いた実験テンプレートのみを実行するように制限しますPurpose=Schedule

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "fis:StartExperiment", "Resource": "arn:aws:fis:*:*:experiment/*" }, { "Effect": "Allow", "Action": "fis:StartExperiment", "Resource": "arn:aws:fis:*:*:experiment-template/*", "Condition": { "StringEquals": { "aws:ResourceTag/Purpose": "Schedule" } } } ] }

    [Next: Tags] (次へ: タグ) を選択します。

  6. [次へ: レビュー] を選択します。

  7. [ポリシーの確認] で、ポリシー FIS_RecurringExperiment に名前を付け、[ポリシーの作成] を選択します。

  8. [アクセス許可の追加]] で、新しい FIS_RecurringExperiment ポリシーをロールに追加し、[次へ] を選択します。

  9. [名前、確認、および作成] で、ロール FIS_RecurringExperiment_role に名前を付け、[ロールを作成] を選択します。

ステップ 2: を作成する Amazon EventBridge スケジューラー

を作成するには Amazon EventBridge スケジューラー
  1. で Amazon EventBridge コンソールを開きますhttps://console.aws.amazon.com/events/

  2. 左側のナビゲーションペインで [スケジュール] を選択します。

  3. 同じ にいることを確認する AWS リージョン としての AWS FIS 実験テンプレート。

  4. [スケジュールの作成] を選択し、以下を入力します。

    • [スケジュール名] に、FIS_recurring_experiment_tutorial を挿入します。

    • [スケジュールパターン] で、[定期的なスケジュール] を選択します。

    • [スケジュールタイプ][レートベースのスケジュール] を選択します。

    • [レート表現][5 分] を選択します。

    • [フレキシブルタイムウィンドウ][オフ] を選択します。

    • (オプション) [タイムフレーム] でタイムゾーンを選択します。

    • [Next (次へ)] を選択します。

  5. ターゲットの選択 で、すべて APIsを選択し、 を検索します。 AWS FIS.

  6. 選択 AWS FISを選択し、 を選択しますStartExperiment

  7. 入力 で、次のJSONペイロードを挿入します。を置き換える your-experiment-template-id 実験のテンプレート ID を含む 値。ClientToken はスケジューラーの一意の識別子です。このチュートリアルでは、 で許可されているコンテキストキーワードを使用します。 Amazon EventBridge スケジューラ。詳細については、「Amazon ユーザーガイド」の「コンテキスト属性の追加」を参照してください。 EventBridge

    { "ClientToken": "<aws.scheduler.execution-id>", "ExperimentTemplateId": "your-experiment-template-id" }

    [Next (次へ)] を選択します。

  8. (オプション) 設定 で、再試行ポリシー デッドレターキュー (DLQ)および暗号化設定を設定できます。または、デフォルト値のままにします。

  9. [許可] で、[既存のロールを使用] を選択してから、FIS_RecurringExperiment_roleを検索します。

  10. [Next (次へ)] をクリックします。

  11. [スケジュールの確認と作成] で、スケジューラーの詳細を確認し、[スケジュールの作成] を選択します。

ステップ 3: 実験を検証

を検証するには AWS FIS 実験がスケジュールどおりに実行されました
  1. を開く AWS FIS の コンソールhttps://console.aws.amazon.com/fis/

  2. 左のナビゲーションペインで [実験] を選択します。

  3. スケジュールを作成して 5 分後に、実験の実行が表示されます。

ステップ 4: クリーンアップする

を無効にするには Amazon EventBridge スケジューラー
  1. で Amazon EventBridge コンソールを開きますhttps://console.aws.amazon.com/events/

  2. 左側のナビゲーションペインで [スケジュール] を選択します。

  3. 新しく作成したスケジューラーを選択し、[無効] を選択します。