AWS Auto Scaling Groups - 스케일링 정책

동적 스케일링 정책

스케일 조절할 때 대표적으로 좋은 지표

  1. CPU 사용률
  2. 대상별 요청수 (RequestCountPerTarget) → 한 번에 대상별로 1,000개의 요청까지만 최적으로 작동하므로 스케일링에 활용 가능

3개로 분산되기 때문에 RequestCountPerTarget은 3이다

3. Average Network In / Out

업로드와 다운로드가 많아 해당 네트워크에서 병목 현상이 발생할 것으로 판단되면 평균 네트워크 입출력량에 따라 스케일 가능

4. Any Custom metric - 사용자가 마음대로 커스텀 할 수 있다

Scaling Cooldowns

ASG 실습

동적 스케일링 / 예측 스케일링 / 예약 스케일링

예약 스케일링

예측 스케일링 - 기준에 따라 예측치 설정하여 스케일링

어느정도 돌린 후에 사용해야함

단순 스케일링

스텝 스케일링

타겟 트레킹 스케일링

sudo amazon-linux-extras install epel -y
sudo yum install stress -y

스트레스를 설정하여 실제로 스케일링이 잘 일어나는지 확인

원인을 보면 CloudWatch 알람이 울려서 새로운 EC2 인스턴스가 시작된다


CloudWatch

실제 CPU 사용률이 올라 실행되는 것까지 확인할 수 있다.

이후 사용률이 다시 안정화되면 인스턴스가 삭제되는데 실수로 정책을 삭제해버려서 동작까지 확인하지 못했다..

깨알 복습 - EC2 Connection Draining

종료가 안되길래 보니까 로드밸런서의 Connection Draining을 기다리고 있는것을 봤다.

Connection Draining은 이전글에 있으니 참고