Auto Scaling

EC2 Auto Scaling

💡

“AWS Auto Scaling은 애플리케이션을 모니터링하고 용량을 자동으로 조정하여, 최대한 저렴한 비용으로 안정적이고 예측 가능한 성능을 유지합니다. AWS Auto Scaling을 사용하면 몇 분만에 손쉽게 여러 서비스 전체에서 여러 리소스에 대해 애플리케이션 규모 조정을 설정 할 수 있습니다.” - AWS

image

EC2 Auto Scaling의 목적

👉 정확한 수의 EC2 인스턴스를 보유하도록 보장

💡 만약, 최소 인스턴스가 3개가 필요하다면 위 처럼 최소 인스턴스를 설정 할 수 있음

👉 다양한 스케일링 정책 적용

EC2 Auto Scaling의 구성

시작 템플릿: 인스턴스가 Scale Up이 필요할 때 어떤 인스턴스를 프로비저닝 할 것인가?

모니터링: 언제 Scale Up/Down을 실행 시킬 것인가? + 상태 확인

💡 CloudWatch (and/or) ELB와 연계 해서 사용

설정: 얼마나 어떻게 실행 시킬 것인가?

💡 기타 설정 사항

image

AutoSclae Scaling 정책

AutoScale에서 관리하고 있는 인스턴스의 숫자를 조절 하는 방식으로 크게 4가지로 분류된다.

1️⃣ 수동 스케일

말 그대로 “수동”으로 인스턴스 숫자를 조절 하는 방법

2️⃣ 스케줄 기반 스케일링

image

예측 가능한 “시점”의 변동사항에 대비해서 인스턴스 숫자를 조절 하는 방식

3️⃣ 동적 스케일

image

“지표에 반응”해서 인스턴스 숫자를 조절하는 방식이며 주로 CloudWatch의 지표를 활용 하거나 자신만의 기준으로 스케일링 정책을 조절 할 수 있다.

4️⃣ 예측 기반 스케일

사용 패턴의 히스토리를 기반으로 인스턴스 수요량을 예측하여 인스턴스 숫자를 조절 하는 방식