Auto Scaling 그룹에서 생성된 EC2 인스턴스를 중지하는 방법

Auto Scaling 그룹에서 생성된 EC2 인스턴스를 중지하는 방법에 대해 정리해 봤습니다.
2024.01.17

안녕하세요 클래스메소드 김재욱(Kim Jaewook) 입니다. 이번에는 Auto Scaling 그룹에서 생성된 EC2 인스턴스를 중지하는 방법에 대해 정리해 봤습니다.

Auto Scaling 인스턴스 관리

Auto Scaling 그룹에서 인스턴스 관리 카테고리를 통해 EC2 인스턴스를 대기 상태로 설정할 수 있습니다.

대기 상태로 설정하기 위해서는 몇몇 제약이 존재합니다.

로드 밸런서의 타겟 그룹에 포함되어 있는 EC2 인스턴스라면, 타겟 그룹에서 EC2 인스턴스가 제거됩니다.

또, Auto Scaling 그룹에서 설정한 최소 사이즈에 맞추어야 합니다.

예를 들어 Auto Scaling 그룹의 최소 사이즈가 2로 설정되어 있고, 현재 기동중인 EC2 인스턴스가 2대인 상태입니다.

여기서 1대의 EC2 인스턴스를 대기 상태로 설정하려고 하면, 최소 사이즈가 2로 설정되어 있기 때문에 에러가 발생하며, 대기 상태로 설정할 수 없습니다.

최소 사이즈를 1로 설정한 다음, 대기 상태로 설정하면 EC2 인스턴스의 수명 주기가「Standby」로 변경됩니다.

「Standby」상태로 변경된 EC2 인스턴스의 경우 Auto Scaling 그룹에 속해 있는 상태이지만, 로드 밸런서의 트래픽을 처리하지 못 하는 대기 상태가 되어버립니다.

하지만「Standby」로 변경했다고, EC2 인스턴스가 중지되는 것은 아닙니다. EC2 콘솔 화면에서 중지 상태로 변경하여, EC2 인스턴스를 완전히 중지시킬 필요가 있습니다.

최소 사이즈를 0으로 만든 다음, 모든 EC2 인스턴스를 대기 상태로 만들어 EC2 인스턴스를 중지시킬 수 있습니다.

실제로 최소 사이즈를 0으로 변경한 다음, EC2 인스턴스를 중지시키면 원하는 사이즈 또 한 0으로 변경됩니다.

여기서 사이즈 조정을 하지 않고, EC2 인스턴스를 시작하면, 원하는 사이즈 0을 유지하기 위해 EC2 인스턴스를 삭제합니다.

반대로 원하는 사이즈를 설정하면, 새로운 EC2 인스턴스가 생성되어 버립니다.

EC2 인스턴스 삭제를 방지하고자 한다면, 축소 보호 설정을 체크합니다.

다시 EC2 인스턴스를 실행하고 싶은 경우 중지된 EC2 인스턴스를 실행시킨 다음, 사이즈 조정없이 EC2 인스턴스를 대기 상태에서 서비스 중으로 변경하면 EC2 인스턴스 생성 및 삭제 없이 기존 EC2 인스턴스가 서비스 중으로 변경됩니다.

일시 중지된 프로세스 설정

대기 상태로 전환하는 것 보다 간단한 방법도 존재합니다.

Auto Scaling 고급 구성에서「편집」을 클릭합니다.

일시 중지된 프로세스에서「Health Check」를 선택합니다.

간혹 EC2 인스턴스를 중지할 시, unhealthy가 뜨는 경우가 있기 때문에 일시 중지된 프로세스에서「Health Check」를 선택할 필요가 있습니다. 설정하지 않을 시, unhealthy가 표시된 EC2 인스턴스는 삭제되고, 새로운 EC2 인스턴스가 생성됩니다.

자세한 내용은 아래 공식 문서를 참고해 주세요.

이어서 EC2 인스턴스를 중지합니다.

사이즈 설정 없이 간단하게 EC2 인스턴스를 중지할 수 있습니다.

다시 EC2 인스턴스를 사용하고 싶은 경우 중지된 EC2 인스턴스를 실행하면 됩니다.

본 블로그 게시글을 보시고 문의 사항이 있으신 분들은 kim.jaewook@classmethod.jp 로 연락 주시면 회신 드릴 수 있도록 하겠습니다 !