AWS - EC2 Auto Scaling


 

1. 오토스케일링

 현재 서버 스펙으로는 급증하는 트래픽을 감당할 수 없을 때, 어떻게 해야 할까요. 컴퓨팅 자원을 확장하여 처리 용량을 늘려야 합니다. 이때 두 가지 방식의 스케일 업(Scale-up), 스케일 아웃(Scale-out)이 있습니다.

1) Scale-up

 

 스케일 업은 기존 컴퓨터의 하드웨어 성능을 높이는 방식으로, CPU와 메모리 용량을 증가시켜 성능을 강화합니다. 하지만 성능과 비용이 비례하지 않으며, 하드웨어 성능의 한계로 무한한 성능 향상은 불가능합니다.

 

장점: 관리가 비교적 단순함.

단점: 비용 효율성이 낮고, 성능 향상에 한계가 있음. 단일 서버이므로 가용성이 떨어짐.

 

2) Scale-out

 스케일 아웃은 비슷한 성능의 컴퓨터를 여러 개 추가하여 시스템의 전체 성능을 향상시키는 방식입니다. 비용과 성능이 비례하여 증가하며, 특정 한계 없이 수평적으로 확장할 수 있습니다.

 

장점: 비용 효율성이 높고, 시스템 확장이 용이함. 고가용성과 장애 복구 능력이 향상됨.

단점: 관리 복잡성이 증가할 수 있음. 분산 시스템 아키텍처와 소프트웨어가 필요함.

 

2. AWS 오토스케일링

  AWS 오토스케일링(Auto Scaling)은 자동으로 컴퓨팅 자원을 조절하여 애플리케이션의 가용성을 높이고 비용 효율성을 극대화하는 데 도움을 줍니다. AWS 오토스케일링은 주로 스케일 아웃 방식을 지원하여 비슷한 성능의 컴퓨터를 여러 개 추가해 시스템의 전체 성능을 향상시킵니다.

 

1) EC2 Auto Scaling 구성

AWS 오토스케일링을 다음과 같은 옵션이 있습니다.

 

1. 어떤 서버 스펙으로 오토 스케일링을 할 것인가

 

 오토스케일링 시에 사용할 서버 스펙을 정의합니다. 이를 위해 템플릿을 이용하여 EC2 타입/사이즈, AMI, 보안그룹, 키페어 등을 설정합니다.

 

2. 언제 오토 스케일링을 할 것인가

 

 오토스케일링을 트리거할 상황을 정의해야 합니다. 예를 들어 CPU 사용률이 70%를 초과하면 오토스케일링을 실행합니다. 이를 위해 모니터링 서비스를 활용하여 특정 조건이 충족될 때 오토스케일링이 실행되도록 설정할 수도 있습니다.

 

3. 얼마나 스케일링을 할 것인가

 

오토스케일링 그룹을 설정할 때 최소, 원하는, 최대 인스턴스 수를 정의합니다.

  • Minimum (최소 인스턴스 수): 애플리케이션이 항상 유지해야 하는 최소 인스턴스 수를 설정합니다.
  • Desired (원하는 인스턴스 수): 애플리케이션이 정상적으로 작동하기 위해 필요한 적정 인스턴스 수를 설정합니다..
  • Maximum (최대 인스턴스 수): 트래픽이 급증할 때 추가할 수 있는 최대 인스턴스 수를 설정합니다.

 

2) EC2 Auto Scaling 실습

 

1. 템플릿 생성메뉴

 

 

2. 템플릿 정보 입력

 

 

3. 오토 스케일링 그룹 메뉴

 

 

4. 오토 스케일링 이름

 

 

5. VPC 설정 및 가용영역(오토 스케일링된 인스턴스의 위치)

 

 

6. ELB, cloudwatch 연동 설정

 

 

7. 오토 스케일링할 수 설정

 

 

8. 오토 스케일링 트리거 설정 및 확인

 

 

인스턴스 대쉬보드에서 가면 원하는 용량 수 만큼 인스턴스가 실행되어 있는 것을 확인할 수 있습니다.

'컴퓨터 > AWS' 카테고리의 다른 글

AWS - VPC(Virtual Private Cloud)  (0) 2024.06.09
AWS - ELB(Elastic Load Balancer)  (0) 2024.06.08
AWS - Amazon Elastic Compute Cloud(Amazon EC2)  (0) 2024.06.05
AWS - IAM(Identity and Access Management)  (0) 2024.06.04
AWS - AWS 개요  (0) 2024.06.04