Cloud & Platform
가상머신 스케일 셋(VMSS) 개념 정리
가상머신 스케일 셋(VMSS) 개념 정리 학습 내용을 정리한 백필 노트입니다.
이 글은 2025년 학습 기록을 블로그 형식으로 정리한 백필 노트입니다.
1. 개요
- 가상머신 스케일 셋(Virtual Machine Scale Sets, VMSS) 은 동일한 구성(이미지, 크기, 설정)을 가진 다수의 가상머신(VM)을 자동으로 배포하고 관리할 수 있는 Azure의 확장 기능이다.
- 트래픽 변화나 워크로드 증가에 따라 자동 확장(autoscale) 및 부하 분산(load balancing) 을 지원하여, 고가용성과 확장성을 제공한다.
2. 주요 특징
- 자동 확장 (Autoscaling)
- CPU, 메모리, 네트워크 트래픽 등의 지표에 따라 VM 인스턴스를 자동으로 늘리거나 줄임.
- 수동으로 스케일 인/아웃도 가능.
- 부하 분산 (Load Balancing)
- Azure Load Balancer 또는 Application Gateway와 통합해, 트래픽을 인스턴스에 균등하게 분산.
- 웹 애플리케이션, API 서버 등 고가용성이 필요한 서비스에 적합.
- 통합 관리
- VMSS에 속한 모든 인스턴스는 단일 리소스로 관리됨.
- 이미지 업데이트, 확장 정책 변경 등을 한 번에 적용 가능.
- 유연한 이미지 지원
- Azure Marketplace 이미지, 커스텀 이미지, Shared Image Gallery 등을 사용해 배포 가능.
- 자동 업그레이드 옵션
- 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 기능.
- 무상태, 확장성 요구가 높은 서비스에 적합.
- 비용 효율적이고 고가용성을 제공하지만, 상태 저장 워크로드에는 제약이 있음.