Назад | Перейти на главную страницу

Terraform, создание службы ecs не удается при использовании настроенной политики IAM

При использовании Terraform создание службы ecs завершается ошибкой при использовании настроенной политики IAM.

Error applying plan:

1 error(s) occurred:

* aws_ecs_service.beatthemarket_service: InvalidParameterException: Unable to assume role and validate the listeners configured on your load balancer.  Please verify the role being passed has the proper permissions.
    status code: 400, request id: ba3a3fb8-0972-11e6-a877-954fd57ba1a9

Это похоже на Эта проблема. Но я не могу это исправить даже после добавления политика. Я также не думаю, что это проблема времени, поскольку роль уже существует, после попытки terraform apply несколько раз.

Пока у меня только IAM роль, политика, ELB, и ECS кластер, служба и определение задачи. Мне нужно что-нибудь еще, например Группа автомасштабирования, Конфигурация запуска, Профиль экземпляра или Группа безопасности?

Есть ли что-то очевидное, что объясняет, почему служба не может принять роль, которую я настроил? Кажется, что у роли есть все необходимые разрешения.

resource "aws_iam_role_policy" "beatthemarket" {
  name = "beatthemarket"
  role = "${aws_iam_role.beatthemarket.id}"
  policy = <<EOF
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Action": [
        "ec2:*",
        "ecs:*",
        "iam:*",
        "elasticloadbalancing:*"
      ],
      "Effect": "Allow",
      "Resource": "*"
    }
  ]
}
EOF
}

Оказалось, мне нужно было настроить службу на ecs.amazonaws.com и нет ec2.amazonaws.com в моем aws_iam_role. Я пробовал это раньше, но не указал в aws_iam_role_policy . Это очень похоже на Эта проблема на форумах AWS.

resource "aws_iam_role" "beatthemarket" {
    name = "beatthemarket"
    assume_role_policy = <<EOF
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Action": "sts:AssumeRole",
      "Principal": {
        "Service": "ecs.amazonaws.com"
      },
      "Effect": "Allow",
      "Sid": ""
    }
  ]
}
EOF
}

Для будущих ссылок, надеюсь, это кому-то поможет.