Amazon ECS가 종료하는 인스턴스 제어
중요
클러스터 Auto Scaling의 관리형 종료 보호 기능을 사용하려면 Auto Scaling 그룹에서 Auto Scaling 인스턴스 스케일 인 보호를 켜야 합니다.
관리형 종료 보호 기능을 사용하면 클러스터 Auto Scaling을 통해 종료되는 인스턴스를 제어할 수 있습니다. 관리형 종료 보호 기능을 사용한 경우 Amazon ECS는 실행 중인 Amazon ECS 태스크가 없는 EC2 인스턴스만 종료합니다. DAEMON
일정 전략을 사용하는 서비스에서 실행하는 작업은 무시되며 인스턴스에서 이러한 작업을 실행 중인 경우에도 클러스터 Auto Scaling에서 인스턴스를 종료될 수 있습니다. 클러스터의 모든 인스턴스가 이러한 작업을 실행하고 있기 때문입니다.
Amazon ECS는 먼저 Auto Scaling 그룹에서 EC2 인스턴스에 대한 인스턴스 스케일 인 보호 옵션을 켭니다. 그런 다음 Amazon ECS는 인스턴스에 작업을 배치합니다. 인스턴스에서 모든 대몬이 아닌 작업이 중지되면 Amazon ECS는 축소 프로세스를 시작하고 EC2 인스턴스에 대한 축소 보호를 해제합니다. 그러면 Auto Scaling 그룹에서 인스턴스를 종료할 수 있습니다.
Auto Scaling 인스턴스 스케일 인 보호는 Auto Scaling에서 종료할 수 있는 EC2 인스턴스를 제어합니다. 스케일 인 기능이 켜진 인스턴스는 스케일 인 프로세스 중에 종료할 수 없습니다. Auto Scaling 인스턴스 스케일 인 보호에 대한 자세한 내용은 Amazon EC2 Auto Scaling 사용 설명서의 Using instance scale-in protection을 참조하세요.
targetCapacity
비율을 설정하여 여유 용량을 확보할 수 있습니다. 이러한 방식으로 Auto Scaling 그룹이 더 많은 인스턴스를 시작할 때까지 기다리지 않고 향후 작업을 더 빠르게 시작할 수 있습니다. Amazon ECS는 목표 용량 값을 사용하여 서비스가 생성하는 CloudWatch 지표를 관리합니다. Amazon ECS는 CloudWatch 지표를 관리합니다. Auto Scaling 그룹은 안정 상태로 처리되어 규모 조정 작업이 필요하지 않습니다. 값은 0~100%가 될 수 있습니다. 예를 들어, Amazon ECS 작업에서 사용하는 용량 외에 10%의 여유 용량을 유지하도록 Amazon ECS를 구성하려면 대상 용량 값을 90%로 설정합니다. 용량 공급자에 대한 targetCapacity
값을 설정할 때는 다음 사항을 고려해야 합니다.
-
100% 미만의
targetCapacity
값은 클러스터에 있어야 하는 사용 가능한 용량(Amazon EC2 인스턴스)의 양을 나타냅니다. 여유 용량은 실행 중인 작업이 없음을 의미합니다. -
추가
binpack
이 없는 가용 영역과 같은 배치 제약 조건은 Amazon ECS가 최종적으로 인스턴스당 하나의 작업을 실행하도록 하며, 이는 바람직한 동작이 아닐 수 있습니다.
관리형 종료 보호를 사용하려면 Auto Scaling 그룹에서 Auto Scaling 인스턴스 스케일 인 보호를 켜야 합니다. 스케일 인 보호를 켜지 않고 관리형 종료 보호를 켜는 경우 원치 않는 동작이 발생할 수 있습니다. 예를 들어 인스턴스가 드레이닝 상태에서 멈출 수 있습니다. 자세한 정보는 Amazon EC2 Auto Scaling 사용 설명서의 인스턴스 스케일 인 방지 사용을 참조하세요.
용량 공급자와 함께 종료 보호를 사용하는 경우에는 용량 공급자와 연결된 Auto Scaling 그룹에서 인스턴스 분리와 같은 수동 작업을 수행하지 마세요. 수동 작업으로 인해 용량 공급자의 스케일 인 작업이 중단될 수 있습니다. Auto Scaling 그룹에서 인스턴스를 분리하는 경우 Amazon ECS 클러스터에서 분리된 인스턴스를 등록 취소해야 합니다.