Amazon ECS 클러스터가 AWS CloudFormation 스택의 일부로 삭제되지 않으면 어떻게 해야 합니까?

최종 업데이트 날짜: 2022년 3월 24일

Amazon Elastic Container Service(Amazon ECS) 클러스터가 삭제되지 않습니다.

간략한 설명

기본 리소스 종속성 문제로 인해 Amazon ECS 클러스터를 삭제하지 못할 수 있습니다. Amazon ECS 클러스터가 생성되면 AWS CloudFormation은 Auto Scaling 그룹, Virtual Private Cloud(VPC) 또는 로드 밸런서와 같은 리소스를 생성합니다. 이러한 리소스는 클러스터와 연결되며, 리소스가 존재할 경우 클러스터가 삭제되지 않을 수 있습니다. AWS CloudFormation과 관련된 기타 문제로 인해 Amazon ECS 클러스터가 삭제되지 않을 수도 있습니다.

참고: 콘솔 최초 실행 경험(2015년 11월 24일 이후) 또는 클러스터 생성 마법사를 통해 생성된 클러스터에는 기본 AWS CloudFormation 스택이 있습니다. 클러스터 삭제 프로세스 중에 스택 EC2ContainerService-yourClusterName에 다음과 같은 오류가 발생할 수 있습니다.

  • "VPC 'vpc-1234567'에 종속성이 있으므로 삭제할 수 없습니다."
  • "보안 그룹 sg-123456이 "리소스 sg-123456에 종속 객체가 있음" 오류로 인해 삭제되지 못했습니다.”
  • "사용자: arn:aws:sts::1111222233334444:assumed-role/example-role/example-user은(는) ecs:DeleteCluster on resource: arn:aws:ecs:Region:1111222233334444:cluster/example-cluster을(를) 수행할 권한이 없습니다"

클러스터 삭제가 실패하고 AWS CloudFormation 스택이 DELETE_FAILED 상태로 이동합니다.

ECS 클러스터를 삭제할 수 없는 경우 다음 단계를 완료하십시오.

해결 방법

참고: AWS Command Line Interface(AWS CLI) 명령을 실행할 때 오류가 발생할 경우 AWS CLI의 최신 버전을 사용하고 있는지 확인하세요.

AWS Identity and Access Management(IAM) 권한 확인하기

  1. IAM 콘솔을 엽니다.
  2. 탐색 창에서 [역할]을 선택합니다.
  3. [역할] 페이지에서 오류 메시지에 지정된 IAM 역할을 입력합니다. DeleteCluster API 호출로 필터링하여 CloudTrail 이벤트의 오류 메시지를 확인할 수 있습니다.
    참고: Amazon ECS 클러스터를 삭제하려는 IAM 역할 또는 사용자입니다.
  4. IAM 역할 또는 사용자를 선택합니다.
  5. [권한] 탭을 선택합니다.
  6. 권한 정책에 ecs:Delete* 권한이 포함되어 있는지 확인합니다. 이 권한은 IAM 역할 또는 사용자가 ECS 클러스터를 삭제하는 데 필요합니다.
    권한이 누락된 경우 IAM 사용자 또는 역할에 필요한 액세스 권한을 부여합니다. 자세한 내용은AmazonECS_FullAccess를 참조하세요.

종속성이 있는 리소스를 건너뛰어 클러스터 삭제

1.    AWS CloudFormation 콘솔을 엽니다.

2.    실패한 스택을 찾으려면 필터에서 활성을 선택한 다음, 실패를 선택합니다.

3.    삭제하지 않을 실패한 스택을 선택합니다.

4.    작업을 선택한 후 스택 삭제를 선택합니다.

5.    삭제에 실패한 리소스 옆의 확인란을 선택합니다.

6.    예, 삭제를 선택합니다.

중요: 리소스를 삭제할 수 없지만 여전히 스택을 삭제하려는 경우 해당 리소스를 보존하도록 선택합니다. AWS CLI delete-stack 명령을 사용하여 리소스를 보존할 수도 있습니다. 리소스를 사용합니다.

7.    Amazon ECS 클러스터를 삭제합니다.

보존된 리소스 삭제

다음 예제에서는 기본 AWS CloudFormation 스택과 일반적으로 연결된 리소스를 삭제하는 방법을 보여줍니다.

보안 그룹 종속성 예제

이 예제에서 한 보안 그룹의 인바운드 또는 아웃바운드 규칙은 다른 보안 그룹을 참조합니다. 이 종속성은 클러스터 삭제를 방지할 수 있습니다.

1.    삭제하려는 보안 그룹과 연결된 보안 그룹을 찾으려면 다음 AWS CLI 명령을 실행합니다.

aws ec2 describe-security-groups --filters Name=ip-permission.group-id,Values=[sg-xxxxxxxxx] --region us-east-1 | jq '.SecurityGroups[] .GroupId'

참고: jq는 명령줄 JSON 프로세서입니다.

2.    삭제하려는 보안 그룹의 종속성을 지웁니다.

3.    보안 그룹 리소스를 삭제합니다.

VPC 종속성 예제

참고: 일반적인 VPC 종속성에는 InternetGatewayId, SubnetId 또는 InstanceId가 포함됩니다.

1.    VPC의 종속 리소스를 식별하려면 다음의 AWS CLI 명령을 실행합니다. vpc-xxxxxxxx를 VPC 값으로 바꾸고, RegionIdAWS 리전 코드로 바꿉니다.

aws ec2 describe-subnets --filters "Name=vpc-id,Values=vpc-xxxxxxxx" --region RegionId | grep SubnetId

참고: 다른 종속성에 대해 유사한 describe_* 명령을 실행할 수 있습니다.

2.    삭제하려는 VPC에 대한 종속성을 지웁니다.

3.    VPC를 삭제합니다.


이 문서가 도움이 되었나요?


결제 또는 기술 지원이 필요하세요?