Amazon ECS 서비스 자동 스케일링을 위한 대상 추적 스케일링 정책 생성

Amazon ECS 서비스 자동 스케일링을 위한 대상 추적 스케일링 정책 생성

대상 추적(target tracking) 스케일링 정책을 만들면 서비스의 원하는 태스크 수를 자동으로 늘리거나 줄일 수 있어요. 대상 추적은 대상 메트릭 값을 기준으로 동작해요.

출처: 문서

본문

대상 추적 스케일링 정책을 만들어 서비스의 원하는 태스크 수가 자동으로 증가하거나 감소하도록 하세요. 대상 추적은 대상 메트릭 값을 기준으로 동작해요.

서비스 생성 및 업데이트를 위한 표준 IAM 권한 외에도 추가 권한이 필요해요. 자세한 내용은 IAM permissions required for Amazon ECS service auto scaling 을 참고해 주세요.

정책에 사용할 메트릭을 결정해 주세요. 사용할 수 있는 메트릭은 다음과 같아요.

  • ECSServiceAverageCPUUtilization – 서비스가 사용해야 하는 평균 CPU 사용률.
  • ECSServiceAverageMemoryUtilization – 서비스가 사용해야 하는 평균 메모리 사용률.
  • ALBRequestCountPerTarget – 태스크가 이상적으로 수신해야 하는 분당 평균 요청 수.

절차(콘솔)

  1. https://console.aws.amazon.com/ecs/v2 에서 콘솔을 엽니다.
  2. Clusters 페이지에서 클러스터를 선택합니다.
  3. 클러스터 세부 정보 페이지의 Services 섹션에서 서비스를 선택합니다. 서비스 세부 정보 페이지가 나타납니다.
  4. Set the number of tasks 를 선택합니다.
  5. Amazon ECS service task count 에서 Use auto scaling 을 선택합니다. Task count 섹션이 나타납니다.
  6. Minimum number of tasks 에서 서비스 자동 스케일링이 사용할 태스크 수의 하한을 입력합니다. desired count는 이 수치보다 낮아지지 않습니다.
  7. Maximum 에서 서비스 자동 스케일링이 사용할 태스크 수의 상한을 입력합니다. desired count는 이 수치보다 높아지지 않습니다.
  8. Save 를 선택합니다. policies 페이지가 나타납니다.
  9. Create scaling policy 를 선택합니다. Create policy 페이지가 나타납니다.
  10. Scaling policy type 에서 Target tracking 을 선택합니다.
  11. Policy name 에 정책 이름을 입력합니다. Metric type 에서 옵션 목록에서 메트릭을 선택합니다.
  12. Target utilization 에서 Amazon ECS가 유지해야 하는 태스크 비율의 대상 값을 입력합니다. 서비스 자동 스케일링은 평균 사용률이 대상 사용률이 될 때까지, 또는 지정한 최대 태스크 수에 도달할 때까지 용량을 스케일 아웃합니다.
  13. Additional Settings 에서 다음을 수행합니다.
    • Scale-in cooldown period 에서 스케일인 활동이 완료된 후 다른 스케일인 활동이 시작될 수 있을 때까지의 시간(초)을 입력합니다.
    • Scale-out cooldown period 에서 이전 스케일아웃 활동이 적용될 때까지 대기할 시간(초)을 입력합니다.
    • 스케일아웃 전용 정책을 만들려면 Disable scale-in 을 선택합니다.
  14. Create scaling policy 를 선택합니다.

CLI

  1. register-scalable-target 명령을 사용해 Amazon ECS 서비스를 확장 가능한 대상(scalable target)으로 등록합니다.
  2. put-scaling-policy 명령을 사용해 스케일링 정책을 생성합니다.

더 알아보기 (Learn more)