하이퍼바이저 (Hypervisor)란 ?
하이퍼바이저는 호스트 컴퓨터에서 다수의 운영체제를 동시에 실행하기 위한 논리적 플랫폼을 말한다.
가상화 머신 모니터(virtual machine monitor) 또는 가상화 머신 매니저(virtual machine manager) 약어로 VMM이라고도 한다.
하나 이상의 가상 머신을 실행하는 컴퓨터가 호스트가 되고 각 가상 머신들은 게스트가 된다.
하이퍼바이저는 게스트 운영체제에 가상 운영 플랫폼을 제공하면서 게스트 운영체제를 관리한다.
시스템에서 호스트 하드웨어의 CPU, Memory 및 리소스가 있는 것처럼 보이기 때문에 가상 머신 또는 운영체제 각각은 자체 프로그램을 실행할 수 있다. 이러한 리소스들을 가상 시스템에 할당하는 것이 하이퍼바이저이다.
하이퍼바이저의 유형
하이퍼바이저의 유형은 2가지가 있다.
- Type 1 (Bare-Metal / Native)
- Type 2 (Hosted)
Type 1 (Bare-Metal / Native)
Type 1 하이퍼바이저는 호스트 하드웨어에 직접 설치하여 구동한다.
Type 1 하이퍼바이저의 경우 하드웨어 바로 위에 위치함을 알 수 있다. 그래서 하드웨어를 제어하는 OS 역할과 VM들을 관리하는 역할을 모두 하이퍼바이저가 담당한다.
별도의 호스트 OS가 없기 때문에 호스트형 가상화에 비해 오버헤드가 적고 하드웨어를 직접 제어하기 때문에 효율적으로 리소스를 사용할 수 있다.
Windows나 Linux를 설치하듯이 아무것도 설치되어 있지 않은 컴퓨터에 하이퍼바이저를 설치해야 한다.
자체적으로 머신에 대한 관리 기능이 없기 때문에 관리에 필요한 컴퓨터나 콘솔(CLI)이 필요하여 Type 2보다 사용성이 낮다.
Type 1 하이퍼바이저 종류
- 젠(Xen)
- KVM(Kernel-based Virtual Machine)
- Citrix의 XenServer
- IBM의 POWER 하이퍼바이저(PR/SM)
- 스파크(SPARC)용 오라클(Oracle) VM 서버
- x86용 오라클 VM 서버
- 마이크로소프트 하이퍼(Hyper)-V
- VM웨어의 ESX Server
Type 2 (Hosted)
다른 App과 마찬가지로 호스트 OS 위에 설치되는 방식의 하이퍼바이저이다.
즉, 기존의 컴퓨터 환경을 그대로 사용하는 방식이므로 설치 및 구성이 편리하다는 장점이 있다.
App을 설치하는 것과 비슷하게 VirtualBox 같은 가상화 소프트웨어를 설치하고 가상 머신 이미지를 만들어서 띄우면 된다.
Type 2를 보면 하이퍼바이저가 하드웨어 바로 위에 위치하는 것이 아니라 호스트 OS 위에 위치한다는 것을 확인할 수 있다.
따라서, 하드웨어 기준으로 Type 1에서는 게스트 OS가 2번째 수준에서 실행되는 반면 Type 2에서는 3번째 수준에서 실행된다는 것을 알 수 있다.
호스트 OS - 하이퍼바이저 - 가상 HW 에뮬레이팅 과정이 있으므로 오버헤드가 크다는 단점이 있다.
한 단계의 레이어를 더 거쳐야 하므로 성능 관점에서보면 Type 1이 Type 2보다 유리한 면이 있다.
하지만 가상의 하드웨어를 쓰기 때문에 호스트 OS와 크게 제약없이 사용 가능하며 시스템에 손쉽게 가상 머신을 올릴 수 있는 장점이 있다.
해당 그림은 Type 2 방식에 속하는 VirtualBox의 구조를 나타낸다.
VirtualBox 내부에는 각 플랫폼 위에서 동작할 수 있는 VirtualBox Hypervisor가 내장되어 있음을 확인할 수 있다.
Type 2 하이퍼바이저의 종류
- VM웨어 워크스테이션(Workstation)
- VM웨어 플레이어(Player)
- 버추얼박스(VirtualBox)
- 맥용 패럴랠스 데스크톱(Parallels Desktop for Mac)
- QEMU
정리
앞서 살펴본 Type 1은 하이퍼바이저가 하드웨어의 어느 부분까지 관장하여 관리할 것인가에 따라 다시 전가상화(Full Virtualization)과 반가상화(Para-Virtualization)으로 분류할 수 있다.
하지만 모든 Type 1 하이퍼바이저들이 모두 이분화되는 것은 아니다. 최근에는 하이퍼바이저 분류의 경계가 모호해졌고 의미가 없어졌다.
참고
'CS > 인프라' 카테고리의 다른 글
Active Directory란 ? (0) | 2023.10.30 |
---|---|
LDAP이란 ? (1) | 2023.10.30 |
가상머신과 컨테이너 (0) | 2023.02.07 |
가상화란 무엇인가 ? Virtualization 개념 및 종류 정리 (0) | 2022.07.20 |
영차영차 성장 블로그
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!