가상 머신(VM)과 하이퍼바이저 2가지 유형과 종류
가상 머신(Virtual Machine, VM)이란 물리적 하드웨어 시스템에 자체 CPU, 메모리, 네트워크 인터페이스 및 스토리지를 만들어 가상 컴퓨터 시스템으로 작동하는 환경을 뜻 합니다.
가상 머신은 하나의 물리적 시스템에서 각각 다른 자체 ‘운영 체제(OS)’와 애플리케이션을 만들어 운영할 수 있습니다.
1. 가상 머신을 사용하는 이유
VM을 사용하는 이유는 하나의 물리적 컴퓨터를 활용하여 효율성과 비용을 절감할 수 있기 때문입니다. 서버 엔지니어 또는 개발자가 VM을 이용해서 다양한 운영체제에서 서버 구축 및 개발 테스트를 할 수 있습니다.
2. 하이퍼바이저(Hypervisor)
가상화를 이용해 자체 OS, 프로세스 코어, 메모리, 스토리지 및 네트워킹을 사용해서 여러 가상의 컴퓨터(VM)을 실행 시킬 수 있습니다. Virtual Machine을 구동하는 소프트웨어가 하이퍼바이저(Hypervisor)입니다.
Hypervisor는 호스트 컴퓨터에서 다수의 운영체제를 동시에 실행하기 위한 논리적 플랫폼이며, 가상 머신 모니터(Virtual Machine Monitor, VMM)로도 불립니다. Hypervisor 운영 체제와 VM의 리소스를 분리해 VM의 생성과 관리를 지원합니다.
3. Hypervisor 유형
3.1 유형 1 하이퍼바이저(Bare Metal or Native)
네이티브 또는 베어 메탈 하이퍼바이저라고도 불리는 유형 1 하이퍼바이저는 호스트의 하드웨어에서 직접 작동하여 게스트 운영 체제를 관리하는 가상화 소프트웨어입니다. 이런 유형의 Hypervisor는 호스트 운영 체제를 거치지 않고 하드웨어에 직접 접근하여 Virtual Machine 리소스를 관리합니다.
이러한 Hypervisor는 주로 엔터프라이즈 데이터 센터 및 서버 환경에서 사용됩니다. 몇 가지 유명한 Hypervisor는 KVM, Microsoft Hyper-V, VMware vSphere를 들 수 있습니다.
3.2 유형 2 하이퍼바이저(Hosted)
유형 2 하이퍼바이저는 기존의 운영 체제(호스트 운영 체제)에서 소프트웨어 레이어 또는 애플리케이션으로 작동하는 가상화 소프트웨어입니다. 이러한 Hypervisor는 호스트 운영 체제에서 직접 실행되며, 호스트 운영 체제의 리소스를 이용하여 게스트 운영 체제를 가상화합니다.
유형 2 하이퍼바이저는 호스트 운영 체제 위에서 작동하며, Virtual Machine 리소스는 호스트 운영 체제에 의해 예약된 후 실제 하드웨어 상에서 실행됩니다.
주로 개인 사용자나 개발자, 테스터 등이 개인 컴퓨터에서 여러 개의 운영 체제를 동시에 실행하고자 할 때 유용합니다. 대표적인 Hypervisor로는 VMware Workstation과 Oracle VirtualBox가 있습니다.