EKS Auto Mode 비활성화하기

EKS Auto Mode 비활성화하기

기존 EKS 클러스터에서 EKS Auto Mode를 비활성화하는 방법을 알아봐요. 이 작업은 파괴적(destructive)이라 신중하게 진행해야 해요.

출처: 문서

본문

기존 EKS 클러스터에서 EKS Auto Mode를 비활성화할 수 있어요. 이 작업은 파괴적(destructive)이에요.

  • EKS는 EKS Auto Mode가 운영하는 모든 EC2 인스턴스를 종료해요.
  • EKS는 EKS Auto Mode가 운영하는 모든 Load Balancer를 삭제해요.
  • EKS는 EKS Auto Mode가 프로비저닝한 EBS 볼륨은 삭제하지 않아요.

EKS Auto Mode는 자체가 만든 리소스를 완전히 관리하도록 설계됐어요. 수동 개입은 EKS Auto Mode가 비활성화될 때 해당 리소스를 완전히 정리하지 못하게 만들 수 있어요. 예를 들어 관리형 Security Group을 외부 Security Group 규칙에서 참조했는데, 클러스터에 대해 EKS Auto Mode를 비활성화하기 전에 그 참조를 제거하는 걸 잊었다면 관리형 Security Group이 새어 나가(leak) 삭제되지 않을 수 있어요. 아래 단계들은 그런 일이 발생했을 때 새어 나간 Security Group을 제거하는 방법을 설명해요.

EKS Auto Mode 비활성화하기 (AWS 콘솔)

  1. AWS Management Console에서 클러스터 개요 페이지를 엽니다.
  2. EKS Auto Mode 아래에서 Manage를 선택합니다.
  3. EKS Auto Mode를 off로 토글합니다.

이 과정이 끝날 때 관리형 Security Group이 삭제되지 않았다면, Delete a security group 지침에 따라 수동으로 삭제할 수 있어요.

EKS Auto Mode 비활성화하기 (AWS CLI)

다음 명령을 사용해 기존 클러스터에서 EKS Auto Mode를 비활성화해요.

aws CLI가 설치되어 있고, EKS 클러스터를 관리할 충분한 권한으로 로그인되어 있어야 해요. 자세한 내용은 Set up to use Amazon EKS를 참고해 주세요.

참고: 컴퓨트(compute), 블록 스토리지(block storage), 로드 밸런싱(load balancing) 기능은 모두 같은 요청에서 활성화하거나 비활성화해야 해요.

aws eks update-cluster-config \
 --name $CLUSTER_NAME \
 --compute-config enabled=false \
 --kubernetes-network-config '{"elasticLoadBalancing":{"enabled": false}}' \
 --storage-config '{"blockStorage":{"enabled": false}}'

EKS Auto Mode를 비활성화한 후 새어 나간 EKS Auto Mode Security Group이 삭제되지 않았는지 다음과 같이 확인할 수 있어요:

aws ec2 describe-security-groups \
    --filters Name=tag:eks:eks-cluster-name,Values=<cluster-name> Name=tag-key,Values=ingress.eks.amazonaws.com/resource,service.eks.amazonaws.com/resource --query "SecurityGroups[*].[GroupName]"

그런 다음 Security Group을 삭제하려면:

aws ec2 delete-security-group --group-name=<group-name>

더 알아보기 (Learn more)