0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

個人的備忘録:またIAMか…。ECSタスク起動でつまずいたので、設定を見直してまとめてみた

Posted at

はじめに

ECS上でタスクを起動しようとした際に、IAMロール関連のエラーが発生することがあります。

個人の備忘録程度の走り書きとなっておりますが、温かい目で見守っていただければ幸いです。

本記事では、実際に遭遇した以下のエラーに対する原因と解決策を、備忘録としてまとめます。

エラーメッセージ

service aa failed to launch a task with (error ECS was unable to assume the role 'arn:aws:iam::xxx:role/ecsTaskExecutionRole' that was provided for this task. Please verify that the role being passed has the proper trust relationship and permissions and that your IAM user has permissions to pass this role.).

接続エラーの原因と解決策

このエラーは、Amazon ECS がタスクを起動しようとした際に、指定された IAM ロール(ecsTaskExecutionRole)を引き受けることができなかったことが原因です。

原因

  1. 信頼関係(Trust Relationship)の設定ミス

    • ecs.amazonaws.com がロールを引き受けられるようになっていない
  2. 必要なポリシーがアタッチされていない

    • AmazonECSTaskExecutionRolePolicy などが付与されていない
  3. IAMユーザーに iam:PassRole 権限がない

    • IAMユーザーが ecsTaskExecutionRole を渡す許可がない

解決方法

1. 信頼関係を確認・修正

IAM ロール ecsTaskExecutionRole の信頼関係タブを以下のように設定:

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

2. 必要なポリシーをアタッチ

以下のポリシーを付ける:

  • AmazonECSTaskExecutionRolePolicy

3. iam:PassRole 権限を追加

IAMユーザーまたは使用中のロールに以下のようなポリシーを追加:

{
  "Effect": "Allow",
  "Action": "iam:PassRole",
  "Resource": "arn:aws:iam::xxx:role/ecsTaskExecutionRole"
}

まとめ

このエラーは ECS タスクの起動において、IAM ロールの信頼関係と権限が正しく構成されていないと発生します。以下の3点をチェックすることで解決できるケースがほとんどです:

  • ecs-tasks.amazonaws.com を信頼できるエンティティに設定
  • 必要な IAM ポリシー(AmazonECSTaskExecutionRolePolicy)のアタッチ
  • IAM ユーザー/ロールに iam:PassRole 権限の付与

ECSのデプロイエラーはIAMに起因することが多いため、慌てずにロール設定とポリシーを順番に確認してみてください!

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?