티스토리 뷰

하이퍼바이저 hypervisor, 가상화 virtualization, 가상머신 virtual machine

 

가상화

운영체제가 process 에 대해서 기본 resources 에 대한 접근을 가상화(Virtualization) 해 놓았듯이 하이퍼바이저도 여러 guest OS 에 대해서 기본 resources 에 대한 접근을 가상화 해 놓은 것이다.(Ref. 2)

 

하이퍼바이저 hypervisor

이 가상화를 지원하는 소프트웨어가 바로 하이퍼바이져 hypervisor 이다. (logical platform 이 더욱 맞는 표현이라고 생각되지만, 여기서는 이해를 쉽게 하기 위해 그냥 software 라고 하자.) 이 가상화를 지원하는 hypervior 는 guest os 가 어느 단계에서 돌아가는가를 기준으로 type을 나눌 수 있다.

  1. 하나는 hardware layer 에서 지원하는 type1(native) 이며,
  2. 다른 하나는 OS layer에서 지원하는 type2(hosted) 이다.

 

 

type1(native or bare-metal)

  • 1960년대 IBM이 개발한 CP/CMS에서 시작
  • IBM의 CP/CMS –> IBM 의 z/VM
  • Xen, Citrix의 XenServer
  • VMware 의 ESX Server
  • Embeded System
    • L4 마이크로커널
    • TRANGO
  • IBM의 POWER 하이퍼바이저(PR/SM)
  • 마이크로소프트의 하이퍼-V
  • 패러랠서버(Parallel Server)
  • 썬의 로지컬 도메인 하이퍼바이저(Logical Domain Hypervisor)
  • 히타치의 Virtage 하이퍼바이저
  • KVM(Kernel-based Virtual Machine)

type 2(hosted)

  • VMware Server
  • VMware Workstation
  • VMware Fusion
  • WINE
  • QEMU
  • 마이크로소프트의 Virtual PC
  • 마이크로소프트의 Virtual Server
  • 썬(Oracle) 의 Virtual Box
  • SWsoft의 Parallels Workstation
  • SWsoft의 Parallels Desktop

type1 과 type2 의 차이점

type1 과 type2 의 차이점은 어느 곳에 설치해서 동작하게 만들었느냐의 차이일 것이다.

type1 이나 type2 나 여러 개의 운영체제를 지원할 수 있는 점은 똑같다. 하지만 type2의 경우는 직접 hardware resource 를 건드리지 않기 때문에 device driver 부분등에 관해서는 신경을 덜 써도 될 것이다. 그리고 설치되어지는 host OS 에 맞춰서 만들어져야 할 것이다.

그렇지만 type1 의 경우는 type1 만 설치해도 booting 이 되어야 하는 것이기 때문에 device 의 control 등을 가지고 있어야 한다. 다시 말하면 driver 등의 기본적인 OS 의 요소를 포함해야 한다.

 

The Difference Between Type-1 and Type-2 Hypervisors - YouTube

 

위 그림은 type 1 hypervisor 인 VMware ESX server 의 architecture 이다.(그림 출처 : http://www.vmware.com/files/pdf/ESXi_architecture.pdf)

 

 

가상화의 장점

Ref 2. -> 가상화와 하이퍼바이저 에 보면 장점이 잘 나와있다. 정리하면 아래와 같다.

  • 서버활용도 증가
  • 냉각 및 관리비용 절감
  • 하드웨어 줄어든다 -> 안정성 향상

 

Reference

  1. http://ko.wikipedia.org/wiki/%ED%95%98%EC%9D%B4%ED%8D%BC%EB%B0%94%EC%9D%B4%EC%A0%80
  2. Linux 하이퍼바이저 분석
    http://www.ibm.com/developerworks/kr/library/l-hypervisor/
  3. VMware ESX 서버란 무엇인가?
    http://blog.naver.com/PostView.nhn?blogId=diedays&logNo=40121610050&redirect=Dlog&widgetTypeCall=true
댓글