タグ: Scheduling tasks

  • ECS Scheduling tasks の FailedInvocations を対処する

    ECS Scheduling tasks の FailedInvocations を対処する

    tl;dr;

    ECS のタスクスケジューリングで

    FailedInvocations が発生するのは、CloudWatch eventsでの実行ロールに権限が足りないから。その対処方法をまとめる。

    IAM ロール

    I AM ロールを作成する。

    今回は ecsEventsRole という名前にした。

    作成したロールの信頼関係を編集。

    cloudwatch events から実行できるよう権限を付与。

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

    以下の通り貼り付ける。

    作成したroleに`AmazonEC2ContainerServiceEventsRole` ポリシーをアタッチする。

    ECS task scheduleで作成したロールをアタッチ

    今回作成した ecsEventsRole を割り当てる。

    動作確認

    CloudWatch メトリクスを確認すると、

    FailedInvocations が解消し Invocations になった。