본문 바로가기
AWS

[AWS] Elastic Beanstalk 상태 unknown 오류 해결방법

by 당코 2023. 5. 18.

Elastic Beanstalk에서 애플리케이션을 생성하고 환경 생성을 하려고 하니 다음과 같은 오류가 발생하였다.

The instance profile aws-elasticbeanstalk-ec2-role associated with the environment does not exist.

 

정상적으로 수행했을 경우 상태가 OK로 되어야 하지만 unknown 상태가 되어 환경을 생성하지 못하였다.

 

해결방법

1. AWS의 IAM - 역할에 들어가 역할 만들기를 누른다.

 

2. AWS 서비스와 EC2를 체크하고 다음으로 넘어간다.

3. 3가지 정책을 선택한 뒤 다음을 누른다.

  • AWSElasticBeanstalkWebTier
  • AWSElasticBeanstalkWorkerTier
  • AWSElasticBeanstalkMulticontainerDocker

 

4. 역할 이름을 aws-elasticbeanstalk-ec2-role로 입력하고 신뢰할 수 있는 엔티티 선택에 코드를 입력한다.

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

 

 

 

위의 과정을 수행하면 기존의 오류는 해결할 수 있지만 다음과 같은 오류가 새로 나타날 수 있다.

Select a service role that has the 'AWSElasticBeanstalkManagedUpdatesCustomerRolePolicy' managed policy.

기존 오류의 해결과정과 비슷하게 진행하면 해결할 수 있다.

1. IAM - 역할 - 역할 만들기로 들어간다.

2. AWS 서비스와 EC2를 체크하고 다음으로 넘어간다.

3. 2가지 정책을 선택한 후 다음을 누른다.

  • AWSElasticBeanstalkManagedUpdatesCustomerRolePolicy
  •  AWSElasticBeanstalkEnhancedHealth

4. 역할 이름을 aws-elasticbeanstalk-service-role로 입력하고 신뢰할 수 있는 엔티티 선택에 코드를 입력한다.

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

'AWS' 카테고리의 다른 글

[AWS] Locust를 이용한 ec2 부하테스트  (1) 2023.12.08