Amazon EventBridge での Amazon EventBridge スケジューラの使用 - Amazon EventBridge

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

Amazon EventBridge での Amazon EventBridge スケジューラの使用

Amazon EventBridge スケジューラはサーバーレススケジューラで、一元化されたマネージドサービスからタスクを作成、実行、管理できます。EventBridge スケジューラでは、繰り返しのパターンに cron やレート式を使ってスケジュールを作成したり、1回限りの呼び出しを設定したりできます。配信時間枠の柔軟な設定、再試行制限の定義、失敗した API 呼び出しの最大保持時間の設定を行うことができます。

EventBridge スケジューラは高度にカスタマイズ可能で、EventBridge のスケジュールされたルールよりもスケーラビリティが高く、より幅広いターゲット API オペレーションと AWS のサービスを使用できます。スケジュールに従ってターゲットを呼び出すには、EventBridge スケジューラを使用することをお勧めします。

実行ロールを設定する

新しいスケジュールを作成する場合、EventBridge スケジューラにはユーザーに代わってターゲット API オペレーションを呼び出すアクセス許可が必要です。実行ロールを使用して、これらのアクセス許可を EventBridge スケジューラに付与します。スケジュールの実行ロールにアタッチするアクセス許可ポリシーによって、必要なアクセス許可が定義されます。これらのアクセス許可は、EventBridge スケジューラが呼び出すターゲット API によって異なります。

次の手順のように EventBridge スケジューラコンソールを使用してスケジュールを作成すると、EventBridge スケジューラは選択したターゲットに基づき実行ロールを自動的に設定します。EventBridge スケジューラ SDK、AWS CLI、または AWS CloudFormation のいずれかを使用してスケジュールを作成する場合、EventBridge スケジューラがターゲットを呼び出すために必要なアクセス許可を付与する既存の実行ロールが必要です。スケジュールに合わせて実行ロールを手動で設定する方法についての詳細は、「EventBridge スケジューラユーザーガイド」の「実行ロールを設定する」を参照してください。

新しいスケジュールを作成する

コンソールを使用してスケジュールを作成するには
  1. Amazon EventBridge スケジューラコンソール (https://console.aws.amazon.com/scheduler/home) を開きます。

  2. [スケジュール] ページで、[スケジュールを作成] を選択します。

  3. [スケジュールの詳細を指定] ページの [スケジュールの名前と説明] セクションで、次を実行します。

    1. [スケジュール名] で、スケジュールの名前を入力します。例えば、MyTestSchedule です。

    2. (オプション) [説明] で、スケジュールの説明を入力します。例えば、My first schedule です。

    3. [スケジュールグループ] で、ドロップダウンリストからスケジュールグループを選択します。グループがない場合は、[デフォルト] を選択します。スケジュールグループを作成するには、[独自のスケジュールを作成] を選択します。

      スケジュールグループを使用して、スケジュールのグループにタグを追加します。

    1. スケジュールオプションを選択します。

      頻度 手順

      [1 回限りのスケジュール]

      1 回限りのスケジュールは、指定した日時に 1 回だけターゲットを呼び出します。

      [日付と時刻] で、次を実行します。

      • 有効な日付を YYYY/MM/DD 形式で入力します。

      • タイムスタンプを 24 時間 (hh:mm) 形式で入力します。

      • [タイムゾーン] で、タイムゾーンを選択します。

      [繰り返しのスケジュール]

      繰り返しのスケジュールは、cron 式またはレート式を使用して指定したレートでターゲットを呼び出します。

      1. [スケジュールの種類] では、次のいずれかを実行します。

        • Cron 式を使用してスケジュールを定義するには、[cron ベースのスケジュール] を選択して Cron 式を入力します。

        • Rate 式を使用してスケジュールを定義するには、[rate ベースのスケジュール] を選択して Rate 式を入力します。

          cron およびレート式の詳細については、「Amazon EventBridge スケジューラユーザーガイド」の「EventBridge スケジューラのスケジュールタイプ」を参照してください。

      2. [フレックスタイムウィンドウ] で、[オフ] を選択してオプションをオフにするか、事前定義された時間枠のいずれかを選択します。例えば、[15 分] を選択し、1 時間に 1 回ターゲットを呼び出す繰り返しのスケジュールを設定した場合、スケジュールは毎時の開始後 15 分以内に実行されます。

  4. (オプション) 前のステップで [定期的なスケジュール] を選択した場合は、[時間枠] セクションで次を実行します。

    1. [タイムゾーン] で、タイムゾーンを選択します。

    2. [開始日時] で、有効な日付を YYYY/MM/DD 形式で入力してから、タイムスタンプを 24 時間 (hh:mm) 形式で指定します。

    3. [終了日時] で、有効な日付を YYYY/MM/DD 形式で入力してから、タイムスタンプを 24 時間 (hh:mm) 形式で指定します。

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

  6. [ターゲットを選択] ページで、EventBridge スケジューラが呼び出す AWS API オペレーションを選択します。

    1. [ターゲット API] で、[テンプレート化されたターゲット] を選択します。

    2. [Amazon EventBridge PutEvents] を選択します。

    3. [PutEvents] で、以下を指定します。

      • [EventBridge イベントバス] で、ドロップダウンリストからイベントバスを選択します。例えば、default です。

        EventBridge コンソールで [新しいイベントバスを作成] を選択して、新しいイベントバスを作成することもできます。

      • [詳細タイプ] に、一致させるイベントの詳細タイプを入力します。例えば、Object Created です。

      • [ソース] に、イベントのソースとなるサービスの名前を入力します。

        AWS サービスイベントの場合は、ソースとしてサービスのプレフィックスを指定します。aws. プレフィックスは含めないでください。例えば、Amazon S3 イベントの場合は、「s3」と入力します。

        サービスのプレフィックスを確認するには、「サービス認可リファレンス」の「条件キーテーブル」を参照してください。ソースと詳細タイプのイベント値について詳しくは、「イベント構造リファレンス」を参照してください。

      • (オプション): [詳細] に、EventBridge スケジューラから EventBridge に送信するイベントをさらにフィルタリングするためのイベントパターンを入力します。

        詳細については、「Amazon EventBridge イベントパターン」を参照してください。

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

  8. [Settings] (設定) ページで、以下の操作を行います。

    1. スケジュールをオンにするには、[スケジュールの状態][スケジュールを有効にする] をオンに切り替えます。

    2. スケジュールの再試行ポリシーを設定するには、[再試行ポリシーとデッドレターキュー (DLQ)] で次を実行します。

      • [再試行] を切り替えてオンにします。

      • [イベントの最大有効期間] で、EventBridge スケジューラが未処理のイベントを保持しなければならない最大の [時間][分] を入力します。

      • 最大 24 時間です。

      • [最大再試行回数] で、ターゲットがエラーを返した場合に EventBridge スケジューラがスケジュールを再試行する最大回数を入力します。

        再試行の最大値は 185 です。

      再試行ポリシーを使用すると、スケジュールがそのターゲットの呼び出しに失敗した場合、EventBridge スケジューラはスケジュールを再実行します。設定されている場合は、スケジュールの最大保持時間と再試行を設定する必要があります。

    3. EventBridge スケジューラが未配信のイベントを保存する場所を選択します。

      [デッドレターキュー (DLQ)] オプション 手順
      保存しない [None] を選択します。
      スケジュールを作成しようとしている同じ AWS アカウント にイベントを保存する
      1. [自分の AWS アカウント の Amazon SQS キューを DLQ として選択] を選択します。

      2. Amazon SQS キューの Amazon リソースネーム (ARN) を選択します。

      スケジュールを作成しようとしているのとは別の AWS アカウント にイベントを保存する
      1. [他の AWS アカウント の Amazon SQS キューを DLQ として指定] を選択します。

      2. Amazon SQS キューの Amazon リソースネーム (ARN) を入力します。

    4. カスタマーマネージドキーを使用してターゲットの入力を暗号化するには、[暗号化][暗号化設定をカスタマイズする (高度)] を選択します。

      このオプションを選択した場合は、既存の KMS キー ARN を入力するか、[AWS KMS key を作成] を選択して AWS KMS コンソールに移動します。EventBridge スケジューラが保管中のデータを暗号化する方法の詳細については、「Amazon EventBridge スケジューラユーザーガイド」の「保管中の暗号化」を参照してください。

    5. EventBridge スケジューラに新しい実行ロールを作成させるには、[このスケジュールの新しいロールを作成] を選択します。その後、[ロール名] で名前を入力します。このオプションを選択すると、EventBridge スケジューラは、テンプレート化されたターゲットに必要な許可をロールにアタッチします。

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

  10. [スケジュールの確認と作成] ページで、スケジュールの詳細を確認します。各セクションで、そのステップに戻って詳細を編集するには、[編集] を選択します。

  11. [スケジュールを作成] を選択します。

    [スケジュール] ページで、新規および既存のスケジュールのリストを表示できます。[ステータス] 列で、新しいスケジュールが [有効] になっていることを確認します。

EventBridge スケジューラに関する詳細については、次を参照してください。