Overview

서비스 개요

Virtual Server Auto-Scaling은 수요에 따라 자원을 자동으로 확장, 축소하는 서비스입니다.애플리케이션을 실행하는 서버 수를 사전에 정의한 조건 또는 일정에 맞게 추가하거나 해지할 수 있습니다.
Auto-Scaling Group은 사전에 생성한 Launch Configuration을 사전 Configuration 템플릿으로 사용하여 서버를 생성하고, 서버 수를 조정하고 관리할 수 있습니다. 지정한 최소 서버 수보다 적어지거나, 최대 서버 수를 초과하지 않도록 조정합니다.
Auto-Scaling Group에 스케줄을 등록하면, 정해진 일정에 맞게 서버 수를 설정할 수 있습니다. 정책을 등록하면, 사전 정의된 조건에 따라 서버 수를 늘리거나 줄일 수 있습니다.

특장점

  • 쉽고 편리한 컴퓨팅 환경 구성: 웹 기반 Console을 통해 Launch Configuration 생성부터 Auto-Scaling Group 생성/변경/삭제까지 사용자가 직접 Self Service로 손쉽게 필요한 컴퓨팅 환경을 구성할 수 있습니다.

  • 탄력적 자원 사용: 서비스의 부하량과 사용량에 맞게 탄력적으로 컴퓨팅 자원을 사용할 수 있습니다. 사용자는 예측 가능한 특정 시간대의 자원 사용량 스케줄링이 가능하며, 불특정 다수 사용자의 일시적 접속을 대비해 자원 사용량을 조절할 수 있습니다.

  • 가용성 향상: Virtual Server Auto-Scaling은 사용자가 요구하는 트래픽이 항시 처리될 수 있도록 가변적인 수요에 맞게 자원을 조절하는 기능을 합니다. 이를 통해 사용자는 애플리케이션 성능과 가용성을 향상시키는 효과를 얻을 수 있습니다.

  • 비용 절감 효과 극대화: 수요 변동에 따라서 필요한 만큼만 자원을 사용하여 불필요한 비용을 줄일 수 있습니다. 야간, 주말, 월말 등 특정 시간대 트래픽 증감에 따른 유연한 자원 사용을 통해 비용 절감 효과를 극대화 할 수 있습니다.

서비스 구성도

구성도
그림. Virtual Server Auto-Scaling 구성도

제공 기능

Virtual Server Auto-Scaling은 다음과 같은 기능을 제공하고 있습니다.

  • Launch Configuration: Auto-Scaling Group에서 Virtual Server를 생성하는 데 사용하는 Configuration 템플릿입니다. Launch Configuration을 만들 때 이미지, 서버 유형, Key Pair, Block Storage 등 Virtual Server에 대한 정보를 설정합니다.
  • 서버 수 조정: 서버 수를 조정할 수 있는 여러 가지 방법을 제공합니다. 정책을 사용하면 임계치 이상의 부하가 있을 경우 처리할 수 있는 Virtual Server를 추가하고 수요가 낮을 때는 Virtual Server을 해제하여 애플리케이션 가용성을 유지하고 비용을 절감할 수 있습니다. 스케줄을 이용하여 정해진 일정에 따라 Virtual Server를 추가하고 해제할 수 있고, 필요에 따라 Auto-Scaling Group의 서버 수를 수동으로 조정할 수도 있습니다.
  • Load Balancer 연계: Load Balancer를 사용하여 애플리케이션 트래픽이 Virtual Server에 고르게 분배되도록 할 수 있습니다. Virtual Server가 추가되거나 해지될 때마다 Load Balancer에 자동으로 등록 및 해제합니다.
  • 네트워크 연결: Auto-Scaling Group의 일반 서브넷, IP 자동 할당 및 Public NAT IP를 연결할 수 있습니다. 서버 간 통신을 위한 로컬 서브넷 연결을 제공합니다.
  • Security Group 적용: Security Group은 Virtual Server에서 발생하는 Inbound/Outbound 트래픽을 제어하는 가상의 논리적 방화벽입니다. Inbound 규칙은 Virtual Server로 들어오는 수신 트래픽을 제어하고 Outbound 규칙은 Virtual Server에서 나가는 발신 트래픽을 제어합니다.
  • 모니터링: Auto-Scaling Group에서 생성된 Virtual Server의 CPU, Memory, Disk 등의 모니터링 정보를 Cloud Monitoring 서비스를 통해 확인할 수 있습니다. Monitoring 정보를 기반으로 Auto-Scaling 정책을 사용하여 부하에 대한 임계치를 설정하고 임계치가 넘어서면 서버를 추가 또는 해제하도록 할 수 있습니다.

구성 요소

Virtual Server Auto-Scaling은 Launch Configuration을 통해 Auto-Scaling Group을 생성하고 서버를 확인하고 관리합니다.

Launch Configuration

Auto-Scaling Group에서 Virtual Server를 생성하는 데 사용하는 Configuration 템플릿입니다. 주요 기능은 다음과 같습니다.

  • 이미지: OS 표준 이미지와 사용자가 생성한 Custom 이미지를 제공합니다. 사용자는 구성하고자 하는 서비스에 따라 선택하여 사용 가능합니다.
  • Keypair: 안전한 OS 접속 방식을 위해 Keypair 방식을 제공합니다.
  • Init script: Virtual Server 시작 시 실행할 스크립트를 사용자가 정의할 수 있습니다.
  • 자세한 내용은 Launch Configuration 생성하기를 참고하세요.
참고
Launch Configuration에서 선택 가능한 이미지와 서버 타입은 Virtual Server OS 이미지 제공 버전Virtual Server 서버 타입을 참고하세요.

Auto-Scaling Group

Launch Configuration을 서버 생성을 위한 사전 Configuration 템플릿으로 사용합니다. Auto-Scaling Group을 생성하여 서버 수 조정 및 관리할 수 있습니다. 주요 기능은 다음과 같습니다.

  • Launch Configuration: Auto-Scaling Group에서 Virtual Server를 생성하는 데 사용하는 Configuration 템플릿입니다.
  • 서버 수 설정: Virtual Server Auto-Scaling은 Auto-Scaling Group의 서버 수를 조정할 수 있는 여러 가지 방법을 제공합니다.
    • 서버 수 고정 방식: Auto-Scaling Group 생성 시, 설정한 서버 수로 추가된 스케줄이나 정책 없이 기본 설정값을 유지하도록 하는 방식입니다. Auto-Scaling Group 생성하기를 참고하여 Min, Desired, Max 서버 수를 설정하세요.
    • 서버 수 수동 조정 방식: Auto-Scaling Group에서 서버 수 수정을 통해 원하는 서버 수 만큼 늘리거나 줄이는 방식입니다. Desired 서버 수 수동 설정 여부를 선택할 수 있습니다. 서버 수 수정하기를 참고하세요.
    • 스케줄 예약 방식: 매일, 매주, 매달 또는 한번 스케줄 예약을 할 수 있으며, 정해진 시간에 원하는 서버 수를 설정할 수 있습니다. 이는 어떨 때 서버 수를 줄이거나 늘려야 할지 예측이 가능한 경우에 유용하게 사용할 수 있습니다. 스케줄 방식을 사용하고 한다면, 스케줄 관리하기를 참고하여 스케줄을 추가 및 관리해주세요.
    • 정책 방식: 동적으로 서버를 조정하는 방법으로 정책을 사용할 수 있습니다. 모니터링 지표 기반으로 설정한 임계치를 벗어나는 경우, 서버 수를 조정하는 방식입니다. 이때 서버 수를 조정하는 방식을 3가지 중에 선택 할 수 있습니다. 지정 대수만큼 서버 수 증감, 지정한 비율로 서버 수 증감, 입력한 값으로 서버 수 고정입니다. 정책으로 인한 서버가 시작되고 해지될 때, 일시적으로 모니터링 지표인 CPU 사용률 정책에 등록한 임계치를 벗어날 수 있습니다. 하지만 이는 일시적인 순간이기 때문에 비정상 상황으로 판단하지 않기 위해 쿨다운 시간을 설정합니다. 정책 방식을 사용하고 싶다면, 정책 관리하기을 참고하세요.
  • Load Balancer: Virtual Server가 추가되거나 해지될 때마다 Auto-Scaling Group에 등록되어 있는 Load Balancer에 자동으로 연결 및 분리합니다.
참고
Auo-Scaling Group의 Load Balancer는 2025년 2월부터 Load Balancer와 연계하여 동작합니다.

제약 사항

Virtual Server Auto-Scaling의 제약 사항은 다음과 같습니다.

구분설명
Auto-Scaling Group당 Virtual Server 수50개 이하
Auto-Scaling Group당 정책 개수12개 이하
Auto-Scaling Group당 스케줄 개수20개 이하
Auto-Scaling Group당 LB 서버 그룹 및 포트 개수3개 이하
표. Virtual Server Auto-Scaling Group 제약 사항
주의
  • 사용 중인 Image가 제공 종료된 표준 Image 라면, Scale-out 이 동작하지 않습니다.
    사용 중인 Image가 Custom Image 라면, 해당 버전 제공 종료 이후에도 Scale out 이 정상적으로 동작합니다.
  • 사용 중인 Image의 제공 종료 전에, 최신 버전의 Image 또는 Custom Image로 Launch Configuration를 교체 권고드립니다.
  • Virtual Server에서 제공 중인 OS Image에 대한 자세한 내용은 OS Image 제공 버전을 참고하세요.

선행 서비스

해당 서비스를 생성하기 전에 미리 구성되어 있어야 하는 서비스 목록입니다. 자세한 내용은 각 서비스 별로 제공되는 가이드를 참고하여 사전에 준비해주세요.

서비스 카테고리서비스상세 설명
NetworkingVPC클라우드 환경에서 독립된 가상 네트워크를 제공하는 서비스
NetworkingSecurity Group서버의 트래픽을 제어하는 가상 방화벽
표. Virtual Server Auto-Scaling 선행 서비스

1 - 모니터링 지표

Virtual Server Auto-Scaling은 Virtual Server 대상으로 제공하는 서비스로 개별 Virtual Server 모니터링 지표와 Cloud Monitoring 기반 정책에서 제공하는 모니터링 지표를 제공합니다.

Virtual Server 모니터링 지표

아래 표는 Cloud Monitoring을 통해 확인할 수 있는 Virtual Server의 모니터링 지표를 나타냅니다. 자세한 Cloud Monitoring 사용 방법은 Cloud Monitoring 가이드를 참고하세요.

Windows OS의 경우 Memory 관련 지표는 제공되지 않습니다.

성능 항목상세 설명단위
Memory Total [Basic]사용할 수 있는 메모리의 bytesbytes
Memory Used [Basic]현재 사용되는 메모리의 bytesbytes
Memory Swap In [Basic]교체된 메모리의 bytesbytes
Memory Swap Out [Basic]교체된 메모리의 bytesbytes
Memory Free [Basic]사용하지 않은 메모리의 bytesbytes
Disk Read Bytes [Basic]읽기 bytesbytes
Disk Read Requests [Basic]읽기 요청 수cnt
Disk Write Bytes [Basic]쓰기bytesbytes
Disk Write Requests [Basic]쓰기 요청 수cnt
CPU Usage [Basic]1분간 평균 시스템 CPU 사용률%
Instance State [Basic]Instance 상태state
Network In Bytes [Basic]수신 bytesbytes
Network In Dropped [Basic]수신 패킷 드롭cnt
Network In Packets [Basic]수신 패킷 수cnt
Network Out Bytes [Basic]송신 bytesbytes
Network Out Dropped [Basic]송신 패킷 드롭cnt
Network Out Packets [Basic]송신 패킷 수cnt
표. Virtual Server 모니터링 지표(기본 제공)

Cloud Monitoring 기반 정책에서 제공하는 모니터링 지표

아래 표는 Cloud Monitoring 기반 Auto-Scaling Group의 정책에서 제공하는 모니터링 지표를 나타냅니다. Cloud Monitoring 기반은 정책 설정에 대한 자세한 내용은 정책 관리하기를 참고하세요.

성능 항목상세 설명단위
CPU Usage [Basic]1분간 평균 시스템 CPU 사용률%
Memory Used [Basic]현재 사용되는 메모리의 bytesbytes
Network In Bytes [Basic]수신 bytesbytes
Network In Packets [Basic]수신 패킷 수cnt
Network Out Bytes [Basic]송신 bytesbytes
Network Out Packets [Basic]송신 패킷 수cnt
표. Cloud Monitoring 기반 정책에서 제공하는 모니터링 지표