해당 포스팅은 AWS 강의실(https://www.youtube.com/@AWSClassroom)를 보고 공부한 내용을 정리한 블로그입니다.

아직 많이 부족하고 배울게 너무나도 많습니다. 틀린내용이 있으면 언제나 가감없이 말씀해주시면 감사하겠습니다😁
네 자신의 불행을 생각하지 않게 되는 가장 좋은 방법은 일에 몰두하는 것이다.
Ludwig van Beethoven

Scaling


instance를 늘리거나 컴퓨팅 파워를 늘리는 것.

  • Vertical Scale(Scale Up)
    • 인스턴스의 성능을 높이는 것.
    • 비용과 성능이 비례해서 올라가지 않음
  • Horizontal Scale(Scale Out)
    • 규모를 늘리는 것
    • 비용과 성능이 비례
    • 지원하기 위한 아키텍처 및 소프트웨어를 설계해야함.
    • AWS의 Auto Scaling 방법

Auto Scaling

AWS Auto Scaling은 애플리케이션을 모니터링하고 용량을 자동으로 조정하여, 최대한 저렴한 비용으로 안정적이고 예측 가능한 성능을 유지합니다. AWS Auto Scaling을 사용하면 몇분만에 손쉽게 여러 서비스 전체에서 여러 리소스에 대해 애플리케이션 규모 조정을 설정 할 수 있습니다.
-AWS-

Scaling을 자동화 하는 서비스.

목표

  • 정확한 수의 EC2 인스턴스를 보유하도록 보장
    • 그룹의 최소 인스턴스 숫자와 최대 인스턴스 숫자 설정 가능
      • 최소 숫자 이하로 내려가지 않도록 인스턴스 숫자를 유지(인스턴스 추가)
      • 최대 숫자 이상 늘어나지 않도록 인스턴스 숫자 유지(인스턴스 삭제)
    • 다양한 스케일 정책 적용 가능
      • ex) CPU 부하에 따라 인스턴스 크기를 늘리기
    • 가용 영역에 인스턴스가 골고루 분산될 수 있도록 인스턴스 분배 => 서비스 장애에 대비(최소화)

오토 스케일링 구성

  • 시작 구성(launch configurations) / 시작 템플릿(launch template): 무엇을 실행시킬 것인가
    • EC2 타입, 사이즈
    • AMI
    • 보안그룹, Key, IAM
    • 유저 데이터
  • 모니터링을 언제 실행시킬 것인가?: 상태 확인용
    • ex) CPU 점유율이 일정 퍼센트를 넘어섰을 때 추가로 실행 or 2개 이상이 필요한 스택에서 EC2 하나가 죽었을 때
    • CloudWatch(and/or) ELB와 연계
  • 설정: 얼마나 어떻게 실행시킬 것인가
    • 최대/최소 원하는 인스턴스 숫자
    • ELB와 연동 등.

Flow

Auto Scaling flow

  1. 특정 인스턴스가 모종의 이유로 다운이 되었을 때
  2. Auto Scaling Group이 감지.
  3. 시작 구성에 맞는 EC2를 auto Scaling 클러스터에 띄워줌.

실습


1. 시작 템플릿을 생성해야함

  1. EC2에서 시작 템플릿 클릭 후 생성

  2. EC2 인스턴스를 만드는 것과 비슷하게 진행

  3. 퍼블릭 IP와 실습 종료시 삭제를 권장

EC2 대시보드 -> 시작 템플릿
체크 박스 선택
AMI 선택

2. 오토 스케일링 그룹 설정

  1. Auto Scaling 선택 후 Auto Scaling 그룹 생성

  2. 시작 템플릿 선택 

    1. 가용영역 및 서브넷은 우리가 인스턴스를 띄울 곳

    2. 태그선언 -> 모든 인스턴스에 태그가 붙어서 태그에 적용하면 모든 인스턴스에 영향

Auto Scaling 그룹 생성
만들었던 시작 템플릿, 가용영역, 서브넷 선택
처음 만들 인스턴스 갯수와, 최소 갯수 & 최대 갯수 선택
Auto Scaling Group이 실행중
Auto Scaling Group을 통해서 실행중인 인스턴스
작업 기록을 통해서 확인할 수 있음

3.  인스턴스를 종료시키면 새롭게 인스턴스를 생성하는 것을 볼 수 있음.

'CICD > AWS' 카테고리의 다른 글

[AWS] Elastic File System 개념 및 실습  (3) 2024.07.24
[AWS] Elastic Load Balancer(ELB) 개념 및 실습  (0) 2024.07.24
[AWS] EC2 라이프사이클  (2) 2024.07.23
[AWS] EBS, Snapshot, AMI  (3) 2024.07.22
[AWS] EC2 유형과 크기  (0) 2024.07.22

+ Recent posts