Amazon Web Services 한국 블로그

EC2 Spot Fleets – 신규 자동 스케일링 기능

EC2 Spot Fleet API – 한번에 수천개의 스팟 인스턴스 관리하기 글을 통해 한번의 요청에서 EC2 스팟 인스턴스 집합을 만들 수 있습니다. 스팟 집합 대상 용량을 지정하고 시간 당 입찰 가격을 입력하고, 인스턴스 유형을 선택하면됩니다.

백그라운드 작업을 통해 AWS는 최저가 스팟 인스턴스를 시작하여 필요한 대상 용량 (인스턴스 또는 가상 vCPU의 숫자로 표기)을 유지합니다. 인스턴스 집합 가격 상승으로 종료되면, 그 시점에서 최저가 인스턴스 교체가 시작됩니다.

신규 자동 확장 기능
오늘 스팟 집합 모델에 Auto Scaling을 추가함으로서 기능을 더욱 강화하였습니다. Amazon CloudWatch 메트릭을 기반으로 스팟 집합을 스케일-업 혹은 다운 할 수 있게되었습니다. 본 통계치를 통해 EC2, Amazon EC2 Container Service, 또는 Amazon Simple Queue Service (SQS) 등의 AWS 서비스 역시 사용할 수 있습니다. 또한, 응용 프로그램에서 만든 맞춤 통계수치를 사용하여 자동 스케일링이 시작되도록 할 수도 있습니다. 따라서, 이러한 통계 수치를 사용하여 스팟 집합의 크기 제어, 조건이나 부하가 바뀌더라도 응용 프로그램 가용성 및 성능과 비용을 세부적으로 제어 할 수 있습니다.

아래는 스팟 집합 자동 스케일링에 사용할 수 있는 애플리케이션의 예제들입니다.

  • 콘테이너 동작Amazon ECS에서 CPU 및 메모리 사용량을 기반한 콘테이너 기반 애플리케이션의 확장
  • 일괄 작업SQS 큐의 메시지 수를 기반한 일괄 작업의 확장
  • 스팟 집합MaxPercentCapacityAllocation와 같은 스팟 집합 통계를 기반한 집합 확장
  • 웹 서비스 – 초당 평균 요청 및 반응 시간에 따른 웹 서비스 확장

스팟 인스턴스 콘솔이나 AWS Command Line Interface (CLI), AWS CloudFormation, 및 AWS SDKs API 호출을 자동 스케일링을 설정할 수 있습니다.

잠깐 실제 콘솔에서 설정 방법을 살펴 보고자 합니다. 스팟 집합을 시작하고 이를 스케일업/다운을 하기 위해 Request and maintain 요청 형식을 선택합니다.

스팟 집합이 1분내로 올라옵니다.

예제로 SQS 큐를 만들고 일부 메시지를 큐에 넣은 다음 CloudWatch 알람​​(AppQueueBackingUp)을 정의했습니다. 메시지 큐에 10 건 이상의 메시지가 들어가면 알람이 시작됩니다.

또한, 알람 (AppQueueNearlyEmpty)도 정의했습니다. 이는 메시지 큐에 메시지가 2 건 이하가 될 때, 취소되는 것입니다.

마지막으로, 알람을 스팟 집합의 ScaleUpScaleDown 정책에 연결했습니다.

이 글을 쓰기 전에 SQS 대기열에 5개의 메시지를 넣었습니다. 스팟 집합을 시작하고 스케일링 정책을 설정한 후, 추가로 5개의 메시지를 보내 알람이 시작되는 것을 기다렸습니다.

스팟 함대 용량이 예상대로 증가한 것으로 나타났습니다. 이 결과는 History 탭에 표시되었습니다 ( “New targetCapacity : 5”).

마무리로 큐에서 모든 메시지를 삭제하고, 돌아 가면 스팟 집합이 예상대로 축소 된것을 알 수 있습니다 ( “New targetCapacity : 2”).

정식 출시
스팟 집합 자동 스케일링 기능은 스팟 인스턴스가 지원되는 모든 리전에서 지금 부터 바로 이용할 수 있습니다.

Jeff;

본 글은 New – Auto Scaling for EC2 Spot Fleets의 한국어 번역입니다.