Taeyoung Kim

Cloud & Platform

가상머신 스케일 셋(VMSS) 개념 정리

가상머신 스케일 셋(VMSS) 개념 정리 학습 내용을 정리한 백필 노트입니다.

이 글은 2025년 학습 기록을 블로그 형식으로 정리한 백필 노트입니다.


1. 개요

  • 가상머신 스케일 셋(Virtual Machine Scale Sets, VMSS) 은 동일한 구성(이미지, 크기, 설정)을 가진 다수의 가상머신(VM)을 자동으로 배포하고 관리할 수 있는 Azure의 확장 기능이다.
  • 트래픽 변화나 워크로드 증가에 따라 자동 확장(autoscale)부하 분산(load balancing) 을 지원하여, 고가용성과 확장성을 제공한다.

2. 주요 특징

  1. 자동 확장 (Autoscaling)
    • CPU, 메모리, 네트워크 트래픽 등의 지표에 따라 VM 인스턴스를 자동으로 늘리거나 줄임.
    • 수동으로 스케일 인/아웃도 가능.
  2. 부하 분산 (Load Balancing)
    • Azure Load Balancer 또는 Application Gateway와 통합해, 트래픽을 인스턴스에 균등하게 분산.
    • 웹 애플리케이션, API 서버 등 고가용성이 필요한 서비스에 적합.
  3. 통합 관리
    • VMSS에 속한 모든 인스턴스는 단일 리소스로 관리됨.
    • 이미지 업데이트, 확장 정책 변경 등을 한 번에 적용 가능.
  4. 유연한 이미지 지원
    • Azure Marketplace 이미지, 커스텀 이미지, Shared Image Gallery 등을 사용해 배포 가능.
  5. 자동 업그레이드 옵션
    • VM 인스턴스에 대한 운영체제 및 애플리케이션 업데이트를 자동 배포 가능.
    • 롤링 업그레이드 방식으로 무중단 배포도 지원.

3. 아키텍처 요소

  • VM 인스턴스(Instances): 동일한 설정으로 배포되는 가상머신 집합.
  • 스케일링 정책(Scaling Policy):
    • 수동(Manual) 스케일: 관리자가 인스턴스 개수를 직접 조정.
    • 자동(Automatic) 스케일: 규칙 기반(CPU, 메모리, 큐 길이 등)으로 자동 조정.
  • 부하 분산기(Load Balancer or App Gateway): 인스턴스 간 트래픽 분산.
  • 스토리지 옵션: 관리형 디스크(Managed Disk) 지원, 데이터 디스크 추가 가능.
  • 업데이트 정책(Update Policy): 자동/수동 롤링 업데이트.

4. 장점

  • 고가용성(High Availability): 여러 VM 인스턴스를 자동 분산 배치.
  • 확장성(Scalability): 워크로드 변화에 따른 인스턴스 자동 조정.
  • 비용 효율성(Cost Efficiency): 필요한 만큼만 인스턴스를 운영.
  • 중앙 관리(Consistency): VM 구성을 일관되게 유지.

5. 사용 사례

  • 웹 애플리케이션: 트래픽 변동이 심한 서비스에 적합.
  • 마이크로서비스 아키텍처: 여러 인스턴스가 병렬로 동작하는 구조.
  • 배치 처리(Job Processing): 대량의 데이터 처리 시, 부하에 따라 인스턴스를 자동 확장.
  • 고성능 컴퓨팅(HPC): 많은 연산을 병렬로 수행하는 워크로드.

6. 한계 및 고려사항

  • 상태 저장(Stateful) 워크로드에는 적합하지 않음 → 주로 무상태(Stateless) 애플리케이션에 적합.
  • VM 인스턴스가 모두 동일한 설정으로 관리되어야 하므로, 개별 맞춤 구성은 어려움.
  • 네트워크, 스토리지, 확장 규칙 등을 사전에 충분히 설계해야 효율적인 운영 가능.

7. 요약

  • VMSS는 자동 확장 + 부하 분산 + 일관된 관리를 지원하는 Azure 기능.
  • 무상태, 확장성 요구가 높은 서비스에 적합.
  • 비용 효율적이고 고가용성을 제공하지만, 상태 저장 워크로드에는 제약이 있음.