Auto Scaling(오토스케일링)
AWS Auto Scaling은 애플리케이션을 모니터링하고 용량을 자동으로 조정하여 최대한 저렴한 비용으로 안정적이고 예측 가능한 성능을 유지합니다.
AWS Auto Scaling을 사용하면 몇 분 만에 손쉽게 여러 서비스 전체에서 여러 리소스에 대해 애플리케이션 규모 조정을 설정할 수 있습니다.
🟩 Verical Scale
: 16배의 성능을 늘리기 위한 비용이 비례해서 늘어나는 Scale 구조
🟧 Horizontal Scale
: 성능이 증가함에 따라 비용도 동일하게 증가하는 Scale 구조
🟦 오토스케일링의 사용 목적
⬛ 정확한 수의 EC2 인스턴스를 보유하도록 보장
◼ 그룹의 최소 인스턴스 숫자 및 최대 인스턴스 숫자
▪ 최소 숫자 이하로 내려가지 않도록 인스턴스 숫자를 유지(인스턴스 추가)
▪ 최대 숫자 이상으로 늘어나지 않도록 인스턴스 숫자를 유지(인스턴스 삭제)
◼ 다양한 스케일링 정책 적용 가능
▪ 예: CPU의 부하에 따라 인스턴스 크기를 늘리기
⬛ 가용 영역에 인스턴스가 골고루 분산될 수 있도록 인스턴스를 분배
🟪 오토스케일링의 구성
◼ 시작 구성(launch configurations) / 시작 템플릿(Launch template): 무엇을 실행시킬 것인가?
- EC2의 타입, 사이즈
- AMI
- 보안 그룹, Key, IAM
- 유저 데이터
◼ 모니터링: 언제 실행시킬 것인가? (상태확인)
- 예) CPU 점유율이 일정 %를 넘어섰을 때 추가로 실행하거나 2개 이상이 필요한 스택에서 EC2 하나가 죽었을 때
- CloudWathc (and / or) ELB와 연계
◼ 설정: 얼마나 어떻게 실행시킬 것인가?
- 최대 / 최소 / 원하는 인스턴스 숫자
- ELB와 연동 등
🟨 오토스케일링 설정
1. Auto Scaling 그룹 설정 전 시작 템플릿 생성
2. 시작 템플릿 이름 작성, Auto Scaling 지침 선택
※ Auto Scaling 지침 체크박스 선택해야 됨
3. AMI랑 인스턴스 유형 선택
4. 다른 부분은 그대로 둔 채로 네트워크 인터페이스 설정 수정
- 네트워크 인터페이스는 새 인터페이스로 설정
- 퍼블릭 IP 자동 할당은 활성화로 설정
- 보안 그룹은 default로 설정
- 종료 시 삭제 예로 설정
5. 시작 템플릿 생성
시작 템플릿으로 인스턴스 시작, 템플릿에서 Auto Scaling 그룹 생성, 스팟 플릿 생성을 할 수 있습니다.
6. Auto Scaling 그룹 선택
7. Auto Scaling 그룹 생성
8. Auto Scaling 그룹 이름 작성 및 생성해둔 템플릿으로 시작 템플릿 설정 후 다음
9. VPC와 가용영역 및 서브넷 설정 후 다음
10. 원하는 그룹 크기 설정, 조정 정책은 Skip 후 다음
11. 알람 Skip 후 다음
12. 태그 추가
※ 여기서 Tag를 추가하면 모든 인스턴스에 동일하게 적용됩니다.
13. Auto Scaling 그룹 생성
원하는 용량에 따라 인스턴스 자동으로 추가 / 삭제를 하게 됩니다.
🟫 오토스케일링 해제 및 인스턴스 종료
반드시 인스턴스 종료 시 오토스케일링의 그룹 크기를 0으로 설정을 해놓은 상태로 인스턴스를 종료해야 합니다.
만약 원하는 용량이랑 최소 용량이 0이 아니면 인스턴스가 자동으로 게속 추가가 됩니다.
출처: AWS 강의실
'Programming 개발은 구글로 > AWS' 카테고리의 다른 글
[AWS 기초] Elastic IP (0) | 2023.02.03 |
---|---|
[AWS 기초] ELB(Elastic Load Balancer) (0) | 2023.02.02 |
[AWS 기초] EC2의 생명주기 (0) | 2023.02.02 |
[AWS 기초] EBS, Snapshot, AMI (0) | 2023.02.01 |
[AWS 기초] 인스턴스의 유형과 크기 (0) | 2023.02.01 |
댓글