Amazon Elastic Container Service
開発者ガイド (API バージョン 2014-11-13)

AWS CLI を使用したスケジュールされたタスクの作成

このトピックでは、AWS CLI を使用してスケジュールされたタスクを作成する方法を説明します。スケジュールされたタスクの作成には CloudWatch イベント API を使用します。詳細については、「Amazon CloudWatch イベントとは?」 (Amazon CloudWatch Events ユーザーガイド) を参照してください。

以下の前提条件を満たしてください。

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

  1. CloudWatch イベント ルールを作成します。この例では、毎日午後 12:00 (UTC) にトリガーされる MyRule1 という名前のルールを作成します。

    aws events put-rule --schedule-expression "cron(0 12 * * ? *)" --name MyRule1

    注記

    他のルール式の例については、Amazon CloudWatch Events ユーザーガイドの「ルールのスケジュール式」を参照してください。

  2. ECS クラスターとタスク定義の詳細を CloudWatch イベント ルールのターゲットとして追加します。完全な ARN を使用して、クラスターとタスク定義を指定します。

    この例では、MyRule1 のターゲットを default クラスターの first-run-task-definition:1 タスク定義として定義し、ecsEventsRole IAM ロールを割り当てます。これにより 1 タスクのスケジュールがリクエストされます。クラスターおよびタスク定義はあらかじめ作成しておく必要があります。それ以外の場合は、エラーが発生します。

    aws events put-targets --rule "MyRule1" --targets "Id"="1","Arn"="arn:aws:ecs:us-east-1:123456789012:cluster/default","RoleArn"="arn:aws:iam::123456789012:role/ecsEventsRole","EcsParameters"="{"TaskDefinitionArn"= "arn:aws:ecs:us-east-1:123456789012:task-definition/first-run-task-definition:1","TaskCount"= 1}"