1. ASG란?
- EC2 인스턴스 생성 및 종료를 자동화할 수 있는 기능
- ASG의 목적 - 스케일 아웃 & 스케일 인
- 증가한 트래픽에 맞춰 EC2 인스턴스 추가
- 감소한 트래픽에 맞춰 EC2 인스턴스 제거
- 최소, 희망 및 최대 개수를 보장하기 위해 매개변수 정의 가능
- 로드 밸런서와 페어링하는 경우 ASG에 속한 모든 EC2 인스턴스가 로드 밸런서에 연결됨
- 특정 EC2 인스턴스가 비정상이면 종료 후 새로운 EC2 인스턴스 생성
- 무료이며 생성된 하위 리소스에 대한 비용만 내면 됨
동작 원리
- ASG에 최소(Minimum), 희망(Desire), 최대(Maximum) 용량을 설정
- 이 설정을 기반으로 트래픽에 따라 스케일 인 & 스케일 아웃이 자동으로 동작
ASG in AWS With Load Balancer
- ASG에 인스턴스가 4개 등록되어 있으면 ELB가 모든 인스턴스에 트래픽을 분산하여 로드 밸런싱
- ELB는 상태 확인을 통해 EC2의 인스턴스 상태를 확인하고 ASG에 전달
- ASG에서 스케일 아웃 발생 시 ELB는 자동으로 해당 인스턴스에게도 트래픽 분산
2. ASG Attributes
- Launch Template
- AMI + Instance Type
- EC2 User Data
- EBS Volumes
- Security Groups
- SSH Key Pair
- IAM Roles for your EC2 Instances
- Network + Subnets Information
- Load Balancer Information
- Min Size / Max Size / Initial Capacity