작성
·
426
답변 1
0
안녕하세요.
네, 둘 다 특정 지표를 기준으로 Auto Scaling을 하는 것이 맞습니다.
정확하게 말하면 단순 조정 정책은 CloudWatch 경보를 기준으로 조정을 하고 대상 추적 정책은 평균 CPU 사용률, 평균 네트워크 입/출력, 대상당 ALB 요청수를 기준으로 조정을 합니다.
단순 조정 정책의 경우 CloudWatch의 임계값의 경보를 기준으로 하기에 CPU 사용률을 경보 임계값으로 설정하면 인스턴스가 추가 되거나 제거하는 설정을 할 수 있습니다. 이 정책을 사용하려면 CloudWatch의 경보 설정을 구성해 주어야 합니다. 또한 조정 활동 후 휴지 기간이 있어 휴지 기간 만료 때까지 기다려야 합니다. 부하 급증으로 인한 빠른 조정 응답이 필요한 경우 적절하지 않을 수 있습니다.
대상 추적 조정 정책의 경우 CPU 평균 사용률을 지정만 하면 알고리즘에 의해 평균 사용률을 기준으로 용량을 자동으로 확장하고 축소하는 자체 최적화를 수행 합니다. 또한 단순 조정 정책보다 빠른 조정 응답을 얻을 수 있습니다.
질문에서 CPU 사용률 40%또는 거의 40%라고 하였기에 CloudWatch 경보 기준이 아닌 CPU 평균 사용률을 기준으로 조정하는 대상 추적 조정이 정답에 가깝습니다. 또한 AWS 시험에서 CPU 사용률 기준으로 동적 조정을 하는 질문은 대상 추적 조정 정책에 대한 솔루션 구성에 대한 질문으로 봐도 되겠습니다.
그리고 단순 조정 정책보다 대상 추적 조정 정책이 조정 알고리즘과 조정 응답 시간을 고려했을 때 원하는 성능을 유지하기에 더 적합합니다.
참고로 단순 조정 정책은 EC2 AutoScaling이 처음 출시 되었을 때 있었던 유일한 옵션이었으며 나중에 세분화된 제어를 제공하는 대상 추적 조정 정책 기능 추가 되었습니다.
아래는 AWS 공식 문서의 대상 추적 조정 정책에 대한 설명입니다. CPU 사용량의 %를 기준으로 조정하는 것을 설명하고 있습니다.
https://docs.aws.amazon.com/ko_kr/autoscaling/ec2/userguide/as-scaling-target-tracking.html
아래는 영문이지만 동적 조정 정책의 차이점에 대해 잘 설명을 하고 있어서 첨부 드립니다.
https://tutorialsdojo.com/step-scaling-vs-simple-scaling-policies-in-amazon-ec2/
감사합니다.
친절한 답변 감사드립니다!