Skip to content

Split View: [가상화] 09. 가상화 플랫폼 비교: QEMU vs VirtualBox vs VMware vs KubeVirt

|

[가상화] 09. 가상화 플랫폼 비교: QEMU vs VirtualBox vs VMware vs KubeVirt

들어가며

가상화 플랫폼 선택은 인프라의 성능, 비용, 운영 복잡도에 큰 영향을 미칩니다. 이 글에서는 QEMU/KVM, VirtualBox, VMware ESXi, KubeVirt 네 가지 플랫폼을 다양한 관점에서 비교 분석합니다.

플랫폼 개요

QEMU/KVM

  • Linux 커널에 내장된 Type 1 하이퍼바이저 (KVM) + 하드웨어 에뮬레이터 (QEMU)
  • 오픈소스 (GPL v2)
  • libvirt, virsh, virt-manager 등으로 관리

VirtualBox

  • Oracle이 관리하는 Type 2 하이퍼바이저
  • 데스크톱 가상화에 특화
  • 크로스 플랫폼 (Windows, macOS, Linux)

VMware ESXi

  • VMware (Broadcom)의 엔터프라이즈 Type 1 하이퍼바이저
  • vCenter Server를 통한 중앙 집중 관리
  • 상용 라이선스

KubeVirt

  • 쿠버네티스 네이티브 VM 오케스트레이션
  • 내부적으로 QEMU/KVM 사용
  • CNCF Incubating 프로젝트

종합 비교표

항목QEMU/KVMVirtualBoxVMware ESXiKubeVirt
타입Type 1 (KVM)Type 2Type 1Type 1 (KVM)
호스트 OSLinuxWin/Mac/Linux전용 (ESXi)Linux (K8s)
라이선스GPL v2 (무료)GPLv3/PUEL상용Apache 2.0 (무료)
관리 도구libvirt, virshGUI, VBoxManagevCenter, vSpherekubectl, virtctl
API 지원libvirt APICOM/SOAP APIREST/SOAP APIKubernetes API
라이브 마이그레이션지원미지원지원 (vMotion)지원
스냅샷지원지원지원제한적
컨테이너 통합수동미지원제한적 (Tanzu)네이티브
최대 VM 수수백 (노드당)수십수백 (호스트당)수천 (클러스터)
커뮤니티활발보통벤더 주도활발 (CNCF)

GPU 지원 비교

GPU 기능 상세 비교표

GPU 기능QEMU/KVMVirtualBoxVMware ESXiKubeVirt
GPU 패스스루VFIO미지원DirectPath I/OVFIO Manager
vGPUNVIDIA vGPU Manager미지원최고 수준 지원GPU Operator
MIG 지원수동 설정미지원MIG-backed vGPUGPU Operator
가상 디스플레이virtio-gpu/virglVMSVGAVMware SVGAvirtio-gpu
OpenGL 지원4.5 (virgl)3.0 (부분)3.3 (SVGA)virgl 경유
CUDA 지원패스스루/vGPU미지원패스스루/vGPU패스스루/vGPU
멀티 GPU지원미지원지원지원
GPU 핫플러그제한적미지원지원제한적

GPU 패스스루 방식 비교

QEMU/KVM:
+----------+     +--------+     +--------+
| IOMMU    | --> | VFIO   | --> | VM     |
| 설정     |     | 바인드  |     | GPU    |
+----------+     +--------+     +--------+
수동 설정 필요, 최대 유연성

VMware ESXi:
+----------+     +------------+     +--------+
| ESXi     | --> | DirectPath | --> | VM     |
| 설정     |     | I/O        |     | GPU    |
+----------+     +------------+     +--------+
vCenter UI로 쉬운 설정

KubeVirt:
+----------+     +-------------+     +---------+     +--------+
| GPU      | --> | VFIO        | --> | Sandbox | --> | VM     |
| Operator |     | Manager     |     | Plugin  |     | GPU    |
+----------+     +-------------+     +---------+     +--------+
자동화된 설정, K8s API 통합

VirtualBox:
+----------+
| 미지원    |
+----------+
GPU 패스스루 지원하지 않음

vGPU 지원 비교

QEMU/KVM:
- NVIDIA vGPU Manager 필요 (라이선스)
- Mediated Device (MDEV) 프레임워크
- 수동 MDEV 생성 및 관리

VMware ESXi:
- 엔터프라이즈 최고 수준 vGPU 지원
- vCenter에서 vGPU 프로파일 관리
- MIG-backed vGPU 완전 지원
- DRS (Distributed Resource Scheduler) 연동

KubeVirt:
- GPU Operator로 자동화
- Sandbox Device Plugin으로 스케줄링
- ClusterPolicy로 선언적 관리

VirtualBox:
- vGPU 미지원

성능 비교

CPU 오버헤드

플랫폼CPU 오버헤드설명
QEMU/KVM1-3%KVM 하드웨어 가속, 최소 오버헤드
VirtualBox5-10%Type 2 하이퍼바이저, 호스트 OS 경유
VMware ESXi2-5%전용 하이퍼바이저, 최적화된 스케줄링
KubeVirt3-5%QEMU/KVM + K8s Pod 오버헤드

I/O 성능

플랫폼디스크 I/O네트워크 I/O
QEMU/KVMvirtio: 90-95%virtio-net: 90-95%
VirtualBox70-80%80-85%
VMware ESXiPVSCSI: 90-95%VMXNET3: 90-95%
KubeVirtvirtio: 85-90%Pod 네트워크 경유

성능 수치는 베어메탈 대비 비율입니다.

메모리 오버헤드

플랫폼VM당 오버헤드메모리 오버커밋
QEMU/KVM50-100 MB지원 (KSM)
VirtualBox100-200 MB미지원
VMware ESXi100-200 MB지원 (TPS, Ballooning)
KubeVirt200-300 MBPod 수준에서 제한적

관리 및 운영

관리 복잡도

쉬움                                                    복잡
|------|------|------|------|------|------|------|------|
       VBox          VMware       QEMU/KVM     KubeVirt

VirtualBox: GUI 중심, 클릭 몇 번으로 VM 생성
VMware: vCenter 웹 UI, 직관적인 엔터프라이즈 관리
QEMU/KVM: CLI/XML 설정, 높은 학습 곡선
KubeVirt: YAML/kubectl, K8s 지식 필수

자동화 수준

플랫폼IaC 도구APICI/CD 통합
QEMU/KVMTerraform (libvirt)libvirt가능
VirtualBoxVagrantVBoxManage제한적
VMware ESXiTerraform (vSphere)REST API우수
KubeVirtKubernetes YAMLK8s API네이티브

라이선스 및 비용

라이선스 모델 비교

플랫폼기본 라이선스GPU 관련 추가 비용
QEMU/KVMGPL v2 (무료)vGPU: NVIDIA 라이선스
VirtualBoxGPLv3 (무료) / PUEL (확장 기능)GPU 기능 제한
VMware ESXivSphere Standard/EnterprisevGPU + VMware 라이선스
KubeVirtApache 2.0 (무료)vGPU: NVIDIA 라이선스

TCO (Total Cost of Ownership) 고려사항

연간 비용 (10 GPU 서버 기준, 추정)

QEMU/KVM:
  하드웨어: XXXX
  소프트웨어: 0 (오픈소스)
  vGPU 라이선스: 별도
  운영 인력: 높음 (전문 인력 필요)

VMware vSphere:
  하드웨어: XXXX
  소프트웨어: vSphere + vCenter 라이선스
  vGPU 라이선스: 별도
  운영 인력: 중간 (UI 기반 관리)

KubeVirt:
  하드웨어: XXXX
  소프트웨어: 0 (오픈소스)
  vGPU 라이선스: 별도
  운영 인력: 높음 (K8s 전문 인력 필요)
  주의: K8s 클러스터 자체 운영 비용 포함

의사결정 가이드

언제 어떤 플랫폼을 선택할 것인가

QEMU/KVM을 선택하세요

  • Linux 환경에서 최대 성능이 필요한 경우
  • GPU 패스스루로 네이티브에 가까운 성능이 필요한 경우
  • 오픈소스로 비용을 절감하고 싶은 경우
  • 높은 커스터마이징이 필요한 경우

VirtualBox를 선택하세요

  • 개발/테스트용 데스크톱 가상화
  • 크로스 플랫폼 지원이 필요한 경우
  • GPU 가속이 필요 없는 경우
  • 빠르고 간단한 VM 생성이 필요한 경우

VMware ESXi를 선택하세요

  • 엔터프라이즈 프로덕션 환경
  • 최고 수준의 vGPU 지원이 필요한 경우
  • vMotion, DRS 등 고급 기능이 필요한 경우
  • 벤더 기술 지원이 중요한 경우

KubeVirt를 선택하세요

  • 이미 쿠버네티스 인프라를 운영 중인 경우
  • 컨테이너와 VM을 통합 관리하고 싶은 경우
  • GitOps/IaC 기반 VM 관리가 필요한 경우
  • VMware에서 마이그레이션을 계획 중인 경우

워크로드별 권장 플랫폼

워크로드1순위2순위비고
ML/AI 학습 (대규모)QEMU/KVMKubeVirtGPU 패스스루 성능
VDI (기업)VMwareKubeVirtvGPU + 관리 편의성
개발/테스트VirtualBoxQEMU/KVM간편한 설정
레거시 마이그레이션KubeVirtVMwareK8s 통합 관리
멀티테넌트 GPUVMwareKubeVirtvGPU 격리
CI/CD 환경KubeVirtQEMU/KVM자동화 통합
엣지 컴퓨팅QEMU/KVMKubeVirt경량 환경

마이그레이션 경로

VMware에서 KubeVirt로

1. VM 디스크 내보내기 (VMDK 형식)
   |
   v
2. qemu-img로 QCOW2 변환
   qemu-img convert -f vmdk -O qcow2 vm-disk.vmdk vm-disk.qcow2
   |
   v
3. CDI로 이미지 임포트 (HTTP 또는 S3)
   |
   v
4. KubeVirt VM CRD 작성
   |
   v
5. 네트워크/스토리지 매핑 확인
   |
   v
6. VM 시작 및 검증

VirtualBox에서 QEMU/KVM으로

1. VDI 디스크를 QCOW2로 변환
   qemu-img convert -f vdi -O qcow2 disk.vdi disk.qcow2
   |
   v
2. virsh/virt-manager로 VM 생성
   |
   v
3. virtio 드라이버 설치 (Windows의 경우)
   |
   v
4. 네트워크 재설정

미래 전망

플랫폼별 발전 방향

플랫폼발전 방향
QEMU/KVMConfidential Computing (SEV/TDX), ARM 가상화
VirtualBox데스크톱 가상화 유지, ARM 지원 확대
VMwareBroadcom 인수 후 불확실, 라이선스 변경
KubeVirtCNCF Graduation, GPU 지원 강화, 엣지 확장

마치며

각 가상화 플랫폼은 고유한 강점과 한계를 가지고 있습니다. 성능 중심이라면 QEMU/KVM, 데스크톱 환경이라면 VirtualBox, 엔터프라이즈 환경이라면 VMware, 클라우드 네이티브 환경이라면 KubeVirt가 최적입니다.

최근 Broadcom의 VMware 인수와 라이선스 변경으로 인해 KubeVirt와 같은 오픈소스 대안에 대한 관심이 크게 증가하고 있습니다.

다음 글에서는 가상화 기술의 미래를 전망합니다. 컨피덴셜 컴퓨팅, GPU 디스어그리게이션, WebAssembly 등 차세대 기술을 다룹니다.


퀴즈: 가상화 플랫폼 비교 이해도 점검

Q1. GPU 패스스루를 지원하지 않는 플랫폼은?

A) QEMU/KVM B) VirtualBox C) VMware ESXi D) KubeVirt

정답: B) VirtualBox는 GPU 패스스루를 지원하지 않습니다. 데스크톱 가상화에 특화된 Type 2 하이퍼바이저입니다.


Q2. vGPU 지원이 가장 우수한 플랫폼은?

A) QEMU/KVM B) VirtualBox C) VMware ESXi D) KubeVirt

정답: C) VMware ESXi는 엔터프라이즈 수준의 최고 vGPU 지원을 제공하며, MIG-backed vGPU와 DRS 연동까지 지원합니다.


Q3. 컨테이너와 VM을 동일 클러스터에서 관리할 수 있는 플랫폼은?

A) QEMU/KVM B) VirtualBox C) VMware ESXi D) KubeVirt

정답: D) KubeVirt는 쿠버네티스 네이티브로 컨테이너와 VM을 동일 클러스터에서 통합 관리할 수 있습니다.


Q4. VMware에서 KubeVirt로 마이그레이션 시 디스크 형식 변환 순서는?

A) VMDK -> VDI -> QCOW2 B) VMDK -> QCOW2 C) VMDK -> RAW -> QCOW2 D) VMDK -> IMG -> QCOW2

정답: B) qemu-img를 사용하여 VMDK를 직접 QCOW2로 변환할 수 있습니다.

[Virtualization] 09. Virtualization Platform Comparison: QEMU vs VirtualBox vs VMware vs KubeVirt

Introduction

Choosing a virtualization platform significantly impacts infrastructure performance, cost, and operational complexity. This post compares QEMU/KVM, VirtualBox, VMware ESXi, and KubeVirt across multiple dimensions.

Platform Overview

QEMU/KVM

  • Type 1 hypervisor (KVM) built into the Linux kernel + hardware emulator (QEMU)
  • Open source (GPL v2)
  • Managed via libvirt, virsh, virt-manager

VirtualBox

  • Type 2 hypervisor managed by Oracle
  • Specialized for desktop virtualization
  • Cross-platform (Windows, macOS, Linux)

VMware ESXi

  • Enterprise Type 1 hypervisor by VMware (Broadcom)
  • Centralized management through vCenter Server
  • Commercial license

KubeVirt

  • Kubernetes-native VM orchestration
  • Uses QEMU/KVM internally
  • CNCF Incubating project

Comprehensive Comparison Table

FeatureQEMU/KVMVirtualBoxVMware ESXiKubeVirt
TypeType 1 (KVM)Type 2Type 1Type 1 (KVM)
Host OSLinuxWin/Mac/LinuxDedicated (ESXi)Linux (K8s)
LicenseGPL v2 (free)GPLv3/PUELCommercialApache 2.0 (free)
Mgmt Toolslibvirt, virshGUI, VBoxManagevCenter, vSpherekubectl, virtctl
API Supportlibvirt APICOM/SOAP APIREST/SOAP APIKubernetes API
Live MigrationSupportedNot supportedSupported (vMotion)Supported
SnapshotsSupportedSupportedSupportedLimited
Container IntegrationManualNot supportedLimited (Tanzu)Native
Max VMsHundreds (per node)DozensHundreds (per host)Thousands (cluster)
CommunityActiveModerateVendor-drivenActive (CNCF)

GPU Support Comparison

Detailed GPU Feature Comparison

GPU FeatureQEMU/KVMVirtualBoxVMware ESXiKubeVirt
GPU PassthroughVFIONot supportedDirectPath I/OVFIO Manager
vGPUNVIDIA vGPU ManagerNot supportedBest-in-classGPU Operator
MIG SupportManual configNot supportedMIG-backed vGPUGPU Operator
Virtual Displayvirtio-gpu/virglVMSVGAVMware SVGAvirtio-gpu
OpenGL Support4.5 (virgl)3.0 (partial)3.3 (SVGA)via virgl
CUDA SupportPassthrough/vGPUNot supportedPassthrough/vGPUPassthrough/vGPU
Multi-GPUSupportedNot supportedSupportedSupported
GPU HotplugLimitedNot supportedSupportedLimited

GPU Passthrough Method Comparison

QEMU/KVM:
+----------+     +--------+     +--------+
| IOMMU    | --> | VFIO   | --> | VM     |
| config   |     | bind   |     | GPU    |
+----------+     +--------+     +--------+
Manual setup required, maximum flexibility

VMware ESXi:
+----------+     +------------+     +--------+
| ESXi     | --> | DirectPath | --> | VM     |
| config   |     | I/O        |     | GPU    |
+----------+     +------------+     +--------+
Easy setup via vCenter UI

KubeVirt:
+----------+     +-------------+     +---------+     +--------+
| GPU      | --> | VFIO        | --> | Sandbox | --> | VM     |
| Operator |     | Manager     |     | Plugin  |     | GPU    |
+----------+     +-------------+     +---------+     +--------+
Automated setup, K8s API integrated

VirtualBox:
+----------+
| Not      |
| supported|
+----------+
No GPU passthrough support

vGPU Support Comparison

QEMU/KVM:
- Requires NVIDIA vGPU Manager (licensed)
- Mediated Device (MDEV) framework
- Manual MDEV creation and management

VMware ESXi:
- Best-in-class enterprise vGPU support
- vGPU profile management via vCenter
- Full MIG-backed vGPU support
- DRS (Distributed Resource Scheduler) integration

KubeVirt:
- Automated via GPU Operator
- Scheduling via Sandbox Device Plugin
- Declarative management via ClusterPolicy

VirtualBox:
- vGPU not supported

Performance Comparison

CPU Overhead

PlatformCPU OverheadDescription
QEMU/KVM1-3%KVM hardware acceleration, minimal overhead
VirtualBox5-10%Type 2 hypervisor, goes through host OS
VMware ESXi2-5%Dedicated hypervisor, optimized scheduling
KubeVirt3-5%QEMU/KVM + K8s Pod overhead

I/O Performance

PlatformDisk I/ONetwork I/O
QEMU/KVMvirtio: 90-95%virtio-net: 90-95%
VirtualBox70-80%80-85%
VMware ESXiPVSCSI: 90-95%VMXNET3: 90-95%
KubeVirtvirtio: 85-90%Via Pod network

Performance figures are percentages relative to bare metal.

Memory Overhead

PlatformPer-VM OverheadMemory Overcommit
QEMU/KVM50-100 MBSupported (KSM)
VirtualBox100-200 MBNot supported
VMware ESXi100-200 MBSupported (TPS, Ballooning)
KubeVirt200-300 MBLimited at Pod level

Management and Operations

Management Complexity

Easy                                                    Complex
|------|------|------|------|------|------|------|------|
       VBox          VMware       QEMU/KVM     KubeVirt

VirtualBox: GUI-centric, create VMs with a few clicks
VMware: vCenter web UI, intuitive enterprise management
QEMU/KVM: CLI/XML config, steep learning curve
KubeVirt: YAML/kubectl, K8s knowledge required

Automation Level

PlatformIaC ToolsAPICI/CD Integration
QEMU/KVMTerraform (libvirt)libvirtPossible
VirtualBoxVagrantVBoxManageLimited
VMware ESXiTerraform (vSphere)REST APIExcellent
KubeVirtKubernetes YAMLK8s APINative

Licensing and Cost

License Model Comparison

PlatformBase LicenseGPU-Related Additional Cost
QEMU/KVMGPL v2 (free)vGPU: NVIDIA license
VirtualBoxGPLv3 (free) / PUEL (extensions)Limited GPU features
VMware ESXivSphere Standard/EnterprisevGPU + VMware license
KubeVirtApache 2.0 (free)vGPU: NVIDIA license

TCO (Total Cost of Ownership) Considerations

Annual Cost (10 GPU servers, estimated)

QEMU/KVM:
  Hardware: XXXX
  Software: 0 (open source)
  vGPU license: Separate
  Operations staff: High (specialists needed)

VMware vSphere:
  Hardware: XXXX
  Software: vSphere + vCenter licenses
  vGPU license: Separate
  Operations staff: Medium (UI-based management)

KubeVirt:
  Hardware: XXXX
  Software: 0 (open source)
  vGPU license: Separate
  Operations staff: High (K8s specialists needed)
  Note: Includes K8s cluster operation costs

Decision Guide

When to Choose Each Platform

Choose QEMU/KVM when:

  • Maximum performance is needed on Linux
  • Near-native performance via GPU passthrough is required
  • You want to reduce costs with open source
  • High customization is needed

Choose VirtualBox when:

  • Desktop virtualization for dev/test
  • Cross-platform support is needed
  • GPU acceleration is not required
  • Quick and simple VM creation is needed

Choose VMware ESXi when:

  • Enterprise production environments
  • Best-in-class vGPU support is needed
  • Advanced features like vMotion, DRS are required
  • Vendor technical support is important

Choose KubeVirt when:

  • You already operate Kubernetes infrastructure
  • You want unified container and VM management
  • GitOps/IaC-based VM management is needed
  • You are planning migration from VMware
Workload1st Choice2nd ChoiceNotes
ML/AI Training (large)QEMU/KVMKubeVirtGPU passthrough perf
VDI (enterprise)VMwareKubeVirtvGPU + management
Dev/TestVirtualBoxQEMU/KVMEasy setup
Legacy MigrationKubeVirtVMwareK8s unified mgmt
Multi-tenant GPUVMwareKubeVirtvGPU isolation
CI/CD EnvironmentsKubeVirtQEMU/KVMAutomation integration
Edge ComputingQEMU/KVMKubeVirtLightweight

Migration Paths

VMware to KubeVirt

1. Export VM disk (VMDK format)
   |
   v
2. Convert to QCOW2 with qemu-img
   qemu-img convert -f vmdk -O qcow2 vm-disk.vmdk vm-disk.qcow2
   |
   v
3. Import image via CDI (HTTP or S3)
   |
   v
4. Write KubeVirt VM CRD
   |
   v
5. Verify network/storage mappings
   |
   v
6. Start VM and validate

VirtualBox to QEMU/KVM

1. Convert VDI disk to QCOW2
   qemu-img convert -f vdi -O qcow2 disk.vdi disk.qcow2
   |
   v
2. Create VM with virsh/virt-manager
   |
   v
3. Install virtio drivers (for Windows)
   |
   v
4. Reconfigure networking

Future Outlook

Development Direction by Platform

PlatformDirection
QEMU/KVMConfidential Computing (SEV/TDX), ARM virtualization
VirtualBoxMaintain desktop virtualization, expand ARM support
VMwareUncertain after Broadcom acquisition, license changes
KubeVirtCNCF Graduation, enhanced GPU support, edge expansion

Conclusion

Each virtualization platform has its own strengths and limitations. For performance-focused workloads choose QEMU/KVM, for desktop environments choose VirtualBox, for enterprise environments choose VMware, and for cloud-native environments choose KubeVirt.

The recent Broadcom acquisition of VMware and associated license changes have significantly increased interest in open-source alternatives like KubeVirt.

In the next post, we will look at the future of virtualization technology, covering next-generation topics like confidential computing, GPU disaggregation, and WebAssembly.


Quiz: Virtualization Platform Comparison Knowledge Check

Q1. Which platform does NOT support GPU passthrough?

A) QEMU/KVM B) VirtualBox C) VMware ESXi D) KubeVirt

Answer: B) VirtualBox does not support GPU passthrough. It is a Type 2 hypervisor specialized for desktop virtualization.


Q2. Which platform has the best vGPU support?

A) QEMU/KVM B) VirtualBox C) VMware ESXi D) KubeVirt

Answer: C) VMware ESXi provides the best enterprise-level vGPU support, including MIG-backed vGPU and DRS integration.


Q3. Which platform can manage containers and VMs in the same cluster?

A) QEMU/KVM B) VirtualBox C) VMware ESXi D) KubeVirt

Answer: D) KubeVirt natively manages containers and VMs in the same Kubernetes cluster.


Q4. What is the disk format conversion order when migrating from VMware to KubeVirt?

A) VMDK -> VDI -> QCOW2 B) VMDK -> QCOW2 C) VMDK -> RAW -> QCOW2 D) VMDK -> IMG -> QCOW2

Answer: B) Use qemu-img to convert VMDK directly to QCOW2.