Virtual Machines 와 VM Scale Sets (크기, 가용성, 비용)
Azure VM 크기 이름 읽는 법, 이미지와 디스크, 가용성 집합과 가용성 영역, VM Scale Sets 의 Flexible 오케스트레이션과 자동 크기 조정, Spot VM, 중지와 할당 해제의 비용 차이, 2026년 기본 아웃바운드 변경까지 VM 운영에 필요한 것을 정리합니다.
VM 크기 이름 읽기
Standard_D4ads_v5 같은 이름에는 규칙이 있습니다.
| 부분 | 뜻 |
|---|---|
D | 패밀리. B(버스트), D(범용), E(메모리 최적화), F(컴퓨트 최적화), L(스토리지), M(대용량 메모리), N(GPU) |
4 | vCPU 수 |
a | AMD 프로세서 (없으면 보통 Intel, p 는 Arm 기반) |
d | 로컬 임시 디스크 있음 |
s | Premium SSD 사용 가능 |
v5 | 세대 |
같은 vCPU 라도 세대가 새로울수록 가격 대비 성능이 좋은 경우가 많습니다. 이전 세대는 Microsoft 가 "Previous-gen" 으로 분류하고 결국 퇴역시키므로 새 배포는 최신 세대를 고릅니다. Arm 기반(Cobalt 계열) 크기는 Linux 워크로드에서 가격 대비 성능이 좋지만 이미지와 소프트웨어 호환성을 먼저 확인합니다.
디스크
VM 에는 OS 디스크, 선택적인 데이터 디스크, 그리고 크기에 따라 임시 디스크가 붙습니다. 임시 디스크는 재배포, 크기 변경, 할당 해제 때 지워지므로 페이지 파일이나 캐시에만 씁니다. 디스크 종류(Standard HDD, Standard SSD, Premium SSD, Premium SSD v2, Ultra Disk)와 성능은 Managed Disks 와 백업 문서에 있습니다. 비관리 디스크(스토리지 계정의 VHD)는 2025-09-30 에 퇴역했습니다.
가용성 구성
| 구성 | 보호 범위 | SLA 조건 (요약) |
|---|---|---|
| 단일 VM | 없음. Premium SSD 이상이면 단일 인스턴스 SLA | 디스크 종류에 따라 다름 |
| 가용성 집합 | 같은 데이터센터 안의 랙(장애 도메인)과 업데이트 도메인 | 2대 이상 |
| 가용성 영역 | 데이터센터 장애 | 2개 이상 영역에 2대 이상 |
| VM Scale Sets (영역 분산) | 영역 장애 + 자동 확장 | 영역 분산 시 |
Korea Central 은 영역이 3개이므로 새 설계는 영역을 기본으로 씁니다. 영역이 없는 Korea South 에서는 가용성 집합을 씁니다. 자세한 개념은 리전과 가용성 영역에 있습니다.
VM Scale Sets
같은 모양의 VM 을 여러 대 운영하면 Scale Sets 를 씁니다. 오케스트레이션 모드는 두 가지인데, 새 배포는 Flexible 을 씁니다. Flexible 은 일반 VM 리소스를 그대로 쓰면서 영역 분산, 자동 크기 조정, 여러 VM 크기 혼합(인스턴스 믹스), Spot 과 일반 VM 혼합을 지원합니다.
# CPU 70% 넘으면 늘리고 30% 밑이면 줄이기
az monitor autoscale create -g rg-shop-prod --resource vmss-web --resource-type Microsoft.Compute/virtualMachineScaleSets \
--name as-web --min-count 2 --max-count 10 --count 3
az monitor autoscale rule create -g rg-shop-prod --autoscale-name as-web \
--condition "Percentage CPU > 70 avg 5m" --scale out 2
az monitor autoscale rule create -g rg-shop-prod --autoscale-name as-web \
--condition "Percentage CPU < 30 avg 10m" --scale in 1주의 Flexible 모드의 인스턴스는 기본 아웃바운드 IP 를 받지 않습니다. NAT Gateway 나 Standard Load Balancer 아웃바운드 규칙 같은 명시적 아웃바운드가 없으면 패키지 설치, Windows 정품 인증이 실패합니다.
기본 아웃바운드 액세스 변경 (2026)
예전에는 공용 IP 가 없는 VM 도 Azure 가 몰래 붙여 주는 기본 아웃바운드 IP 로 인터넷에 나갈 수 있었습니다. Microsoft 는 이를 단계적으로 없애고 있습니다.
- 2026-03-31 뒤에 나온 VNet API 버전부터 새 VNet 의 서브넷은 기본이 프라이빗 서브넷(
defaultOutboundAccess: false)입니다. 포털은 이미 프라이빗 서브넷이 기본입니다. - 기존 VNet 과 그 안의 새 VM 은 바뀌지 않습니다. 다만 Advisor 가 "명시적 아웃바운드를 추가하라" 고 권고합니다.
- 권장 방법은 서브넷에 NAT Gateway 를 붙이는 것입니다. 그 밖에 Standard Load Balancer 아웃바운드 규칙, VM NIC 의 Standard 공용 IP, 방화벽과 UDR 이 있습니다.
Spot VM
Spot VM 은 남는 용량을 큰 할인으로 쓰고, Azure 가 용량이 필요하면 30초 예고 뒤 회수합니다. 배치, CI 러너, 상태 없는 웹 계층의 일부에 맞습니다. 최대 가격을 -1 로 두면 가격 때문에는 회수되지 않고 용량 때문에만 회수됩니다. 회수 정책은 Deallocate(디스크 요금은 계속) 또는 Delete 를 고릅니다.
중지와 할당 해제
| 상태 | 컴퓨트 요금 | 디스크 요금 | 공용 IP |
|---|---|---|---|
| 실행 중 | 나옴 | 나옴 | 유지 |
| 중지됨 (OS 안에서 종료) | 계속 나옴 | 나옴 | 유지 |
| 중지됨 (할당 해제) | 안 나옴 | 나옴 | 동적 IP 는 반납 |
OS 안에서 shutdown 하면 할당이 해제되지 않아 컴퓨트 요금이 계속 나옵니다. 포털의 중지 버튼이나 az vm deallocate 를 써야 합니다. 개발 VM 은 자동 종료(auto-shutdown) 일정을 걸어 둡니다.
관리 기능
- Azure Bastion: VM 에 공용 IP 없이 브라우저나 네이티브 클라이언트로 RDP, SSH. 접속 문제는 VM 접속 트러블슈팅에 있습니다.
- Run Command: 네트워크가 막혀도 에이전트를 통해 VM 안에서 스크립트 실행.
- Azure Update Manager: OS 패치 평가와 일정 적용.
- VM 확장(Extension): 모니터링 에이전트(Azure Monitor Agent), 디스크 암호화, 사용자 지정 스크립트.
- 부트 진단과 직렬 콘솔: 부팅이 안 될 때 화면 캡처와 콘솔 접근.
비용 요령
- 꾸준히 도는 VM 은 예약이나 절감 플랜으로 할인받습니다. 크기를 자주 바꾸면 절감 플랜이 유연합니다.
- Windows Server 와 SQL Server 라이선스가 있으면 Azure Hybrid Benefit 을 켭니다.
- 개발, 테스트는 B 시리즈나 자동 종료로 비용을 줄입니다.
- 할당 해제해도 디스크와 고정 공용 IP 요금은 남습니다. 안 쓰는 디스크와 IP 는 Advisor 가 찾아 줍니다.