メニュー
Amazon EC2 Container Service
開発者ガイド (API Version 2014-11-13)

タスクのスケジューリング (cron)

Amazon ECS タスクは、CloudWatch イベント のルールとターゲットを使用して、cron ライクなスケジュールで実行できます。

バックアップオペレーションやログスキャンなど、クラスター内で一定間隔で実行するタスクがある場合は、Amazon ECS コンソールを使用して、指定した時間にクラスターで 1 つ以上のタスクを実行する CloudWatch イベント ルールを作成できます。スケジュールされたイベントルールは、特定の間隔 (N 分、時間、日ごとに実行) に設定できます。または、より複雑なスケジュールに設定する場合は、cron 式を使用することもできます。詳細については、『Amazon CloudWatch Events ユーザーガイド』の「ルールのスケジュール式」を参照してください。

スケジュールされたタスクの作成

  1. https://console.aws.amazon.com/ecs/ にある Amazon ECS コンソールを開きます。

  2. スケジュールされたタスクを作成するクラスターを選択します。

  3. [Cluster: cluster-name] ページで、[Scheduled Tasks]、[Create] の順に選択します。

  4. [Schedule rule name] に、スケジュールルールの一意の名前を入力します。最大 64 文字の英字、数字、ピリオド、ハイフン、アンダースコアを使用できます。

  5. (オプション) [Schedule rule description] に、ルールの説明を入力します。最大 512 文字の 文字を使用できます。

  6. [Schedule rule type] で、スケジュールルールに固定間隔スケジュールを使用するか cron 式を使用するかを選択します。詳細については、『Amazon CloudWatch Events ユーザーガイド』の「ルールのスケジュール式」を参照してください。

    • [Run at fixed interval] に、スケジュールの間隔と単位を入力します。

    • [Cron expression] に、タスクスケジュールの cron 式を入力します。これらの式には 6 つの必須フィールドがあり、フィールドは空白で区切られます。詳細と cron 式の例については、『Amazon CloudWatch Events ユーザーガイド』の「Cron 式」を参照してください。

  7. スケジュールルールのターゲットを作成します。

    1. [Target ID] に、ターゲットの一意の ID を入力します。最大 64 文字の英字、数字、ピリオド、ハイフン、アンダースコアを使用できます。

    2. [Task definition] で、このターゲットに対して実行するタスク定義のファミリーとリビジョン (family:revision) を選択します。

    3. [Number of tasks] に、ルールの実行時にクラスターで実行する、指定したタスク定義のインスタンスの数を入力します。

    4. (オプション) [Task role override] で、タスク定義のデフォルトの代わりに、ターゲットでタスクに使用する IAM ロールを選択します。詳細については、「タスク用の IAM ロール」を参照してください。ここには、[Amazon EC2 Container Service Task Role] 信頼関係があるロールのみが表示されます。タスク用の IAM ロールを作成する方法の詳細については、「タスク用の IAM ロールとポリシーの作成」を参照してください。

    5. [CloudWatch Events IAM role for this target] で、既存の CloudWatch イベント サービスロール ecsEventsRole を選択します (すでに作成している場合)。または、[Create new role] を選択して、CloudWatch イベント がお客様に代わって Amazon ECS を呼び出してタスクを実行するために必要な IAM ロールを作成します。詳細については、「CloudWatch イベント IAM ロール」を参照してください。

    6. (オプション) [Container overrides] セクションで、個々のコンテナを展開し、タスク定義で定義されているそのコンテナのコマンド/環境変数を上書きできます。

  8. (オプション) 追加のターゲット (このルールの適用時に実行する他のタスク) を追加するには、[Add targets] を選択し、追加のターゲットごとに前のサブステップを繰り返します。

  9. [Create] を選択します。

スケジュールされたタスクを編集するには

  1. https://console.aws.amazon.com/ecs/ にある Amazon ECS コンソールを開きます。

  2. スケジュールされたタスクを編集するクラスターを選択します。

  3. [Cluster: cluster-name] ページで、[Scheduled Tasks] を選択します。

  4. 編集するスケジュールルールの左側にあるボックスを選択してから、[Edit] を選択します。

  5. 更新するフィールドを編集し、[Update] を選択します。