[AWS] Autoscaling

윤동환·2022년 12월 18일
0

AWS

목록 보기
11/30
post-thumbnail

참고 영상

Scaling이란?

인스턴스 혹은 컴퓨팅 파워를 늘리는 것을 의미한다.

Scaling 종류

1. Vertical Scalie(Scale Up)

인스턴스의 성능을 올린다.

단점

  • 성능과 가격이 비례하지 않는다 (ex. 성능 16배 가격 30배)
  • 성능을 많이 올리는 것에 물리적 불가능이 존재한다.
  • 사용량 변경에 따라 scale 변경이 유연하지 못하다.

2. Horizontal Scale(Scale Out)

인스턴스의 규모를 늘린다.

장점

  • 수요량에 따라 scaling하기 쉽다.

주의점

  • 많은 인스턴스를 관리하고 운용하기 위한 아키텍쳐 설계가 필요하다.

Auto Scaling이란?

애플리케이션을 모니터닐하고 용량을 자동으로 조정하여, 최대한 저렴한 비용으로 안정적이고 예측 가능한 성능을 유지한다.

AWS Auto Scaling 종류

EC2 Auto Scaling

목표

  • 정확한 수의 EC2인스턴스를 보유하도록 보장
    -> 그룹의 최소 인스턴스 숫자 및 최대 인스턴스 숫자를 정할 수 있다.
    -> 다양한 스케일링 정책 적용할 수 있다. (ex. CPU 부하(유저의 접속)에 따라 인스턴스 크기 조절)
  • 가용영역에 인스턴스가 골고루 분산될 수 있도록 인스턴스를 분배
    -> 서비스의 장애를 최소화 시킬 수 있다.

구성

  • 시작 구성(launch configurations)/시작 템플릿(launch template) : 무엇을 실행 시킬래? 어떤 인스턴스를 늘릴래?
    • EC2의 타입, 사이즈
    • AMI
    • 보안 그룹, Key, IAM
    • 유저 데이터
  • 모니터링 : 언제실행 시킬래? + 상태확인
    • CloudWatch(모니터링), ELB(부하 분산)와 연계
      (ex.CPU 점유율이 일정 %를 넘어섰을 때)
  • 설정 : 얼마나, 어떻게 실행시킬래?
    • 최대 / 최소 / 원하는 인스턴스 수
    • ELB와 연동 등

Autoscaling 동작 방식

EC2 인스턴스에 문제가 모니터링을 통해 감지되면 Autoscaling이 시작구성을 통해서 인스턴스 생성우 문제가 발생한 인스턴스를 대신한다.

profile
모르면 공부하고 알게되면 공유하는 개발자

0개의 댓글