트래픽에 따라서 자동으로 EC2 개수를 조절해주는 기능을 갖는다.

보통의 경우 위 그림처럼 서버의 최대 용량이 정해져 있다.
하지만 서버로 들어오는 트래픽 양은 고정되지 않는다.
갑자기 트래픽이 몰리게 된다면, 빨란 점선 부분처럼 서버 용량 초괄 서버의 장애가 발생한다.
이러한 상황의 대표적인 예로 명절의 기차표가 있다.
명절에 갑자기 기차표 예매가 몰리게 된다면 기차표 예매가 어렵다.
이처럼 특정 몰리는 상황을 방지하고자 서버의 용량을 올리는 방법이 있다.

하지만 이렇게 되면, 평소 트래픽이 몰리지 않아도 서버의 용량을 유지해야 하기 때문에 낭비되는 자원이 있다.
Auto Scaling은 아래 그림처럼 실제 트래픽과 유사한 수준으로 서버의 용량을 조절한다.


위 그림은 AWS의 Auto Scaling 기본 구조를 나타낸 것이다.
클라이언트의 요청이 ELB로 들어오게 되고, 로드 밸런서에서 ASG라고 부르는 Auto Scaling Group으로 부하를 분산시키게 된다.
그리고 Auto Scaling Group은 Amazon Machine Image를 필요로 하며, CloudWatch라는 클라우드 모니터링 서비스를 사용해서 서버의 용량을 늘릴지 줄일지 결정하게 된다.
이러한 구조가 Auto Scaling의 기본 구조이다.
앞글자를 따서 ASG라고 하며, Auto Scaling되는 EC2 인스턴스들의 집합을 의미한다.
그래서 우리가 사전에 설정한 값에 따라서 EC2 인스턴스를 늘였다 줄었다 하게 된다.