2014년 12월 19일 금요일

Bare-metal and hosted Hypervisor 비교 (Virtual Machine Manager 비교)

소규모로 가상화 환경을 만들어서, Test Environment를 만들려고 보니 어떤 Hypervisor를 설치해야 할지 잘 모르겠다.
그래서 Hypervisor를 비교하는 작업부터 하고, 제일 나에게 맞는 Hypervisor를 선택해야지.


지금까지 세상에 나온 Hypervisor는 Bare-metal vertualization 방식과 Hosted virtualization 방식이 있다.

Bare-metal virtualization hypervisor 방식은 Hypervisor가 별도의 OS 없이 직접 Hardware resource를 제어한다. 그래서 성능이 잘 발휘되고, 안정성이 높다.대규모 Data Center에서 Mission Critical Job을 수행하는 경우라면, Bare-metal 가상화 방식이 제격이다.
그러나 범용 OS가 아니라서 Hardware에 대한 device driver 지원이 제한적이다. 이런 이유 때문에 Hardware를 선택할 때부터 잘 고려해야 한다.

Hosted virtualization hypervisor는 Hypervisor가 설치될 Machine에 별도의 OS가 설치되어 있어야 한다.
즉, Hosted hypervisor는 Application처럼 동작한다. 따라서 Hardware 특성을 타지 않고, OS가 추상화한 Device를 사용할 수 있다. 따라서 호환성(Compatibility)이 높다.
그러나 Hosted hypervisor는 VM이 항상 Host OS를 경유하여 Hardware resource에 접근하기 때문에 성능이 떨어진다.
이런 이유 때문에 Data Center에서는 Hosted hypervisor를 사용할 수 없고, 대체로 PC Computer에서 사용된다.

< 출처: http://www.xenproject.org/developers/teams/hypervisor.html >



위에서 살펴본 2가지 방식의 Hypervisor의 각 제품을 자세히 살펴보면 아래와 같다.

[ Bare-metal Virtualization Hypervisors ]

* VMWare ESX and ESXi
나는 5년 전부터 VMWare Player로 VM을 사용해왔기 때문에, 거부감없이 VMWare ESX를 사용할 수 있을 것 같았다.
게다가 VMWare가 hypervisor 기술분야에서 제일 완성도 높은 기술을 구현하고 있기 때문에 제일 관심이 간다. 그러나, VMWare ESX는 많이 비싸다.
ESXi라는 무료 버전이 있지만, 유료 버전에 비해서 사용할 수 있는 기능이 극히 드물다.
그래도 간단한 기능만 테스트해볼 거라면, ESXi를 설치해서 VM을 올리는 것도 좋은 생각같다.

* Microsoft Hyper-V
완성도 높고, 대중적이라서써볼까 했는데, 비싸다고 하네.
그리고 Linux에서 주로 Test를 하는 나로써는 굳이 Microsft Hyper-V를 사용할 일이 없을 것이다.

* Citrix XenServer
Open Source Project인 Xen 에서 출발한 제품이다. Open Source Project에서 차용한 기술이라 핵심 기술은 무료이다. 그러나 Citrix에서 추가한 기능은 돈을 내야 쓸 수 있다.
  유료 기능:
    - VM Migration
    - Resource를 운영중에추가할당하기
    - 실시간 성능 모니터링
    - Open vSwitch 내장됨 (built-in)
결국 무료로 테스트를 해보려면, Xen을 쓰는 것과 별만 다르지 않다.
곧 Xen을 내 Linux 장비에 설치해봐야겠다.

* Oracle VM  <-- 추천 (Recommend)
Oracle VM도 Xen Project에서 출발했다.
Oracle VM은 단순하고, 꾸밈이 별로 없다. 그래서 초보자도 쉽게 접근할 수 있다. 게다가 무료이다.
기능면에서는 Citrix XenServer나 VMWare ESX보다 떨어지지만, 꼭 Commercial Machine에 쓸게 아니라면 (연구용으로) 괜찮은 제품이다.

* Xen

Citrix 회사가 Xen이라는 Open Source Project로 시작했다.
지금은 여러 회사가 지원과 투자를 하고 있다. 아직까지는 Citrix 회사의 50% 정도의 공헌을 하고, 나머지 장비 제조사와 대형 SW 제조사들이 지원하는 형국이다.
CentOS 6.4, CentOS 7 에 Xen4 + XAPI가 탑재되어 있다.
임의로 설치 또는 Upgrade하려면, 아래와 같이 하면 된다.
  " yum install xen "



[ Hosted Virtualization Hypervisors ]

* VMWare Player
무료이고, 아주 많은 사용자가 있다.
VM을 여러개 수행할 수 없는 제약이 있다.
설명서에는 VM을 생성할 수 없고, 재생(Play)만 할 수 있다고 하는데, 이 문장의 정확한 의미를 모르겠다.

* VMWare Workstation
VMWare Player와 비슷하고, 몇 가지 기능이 추가된다.
단, 유료이고 대략 20만원 정도의 라이센스 비용을 지불해야 한다.


* Oracle VM VirtualBox
나는 대략 8년 정도 이 제품을 사용해왔고, 지금까지 만족스럽게 사용하고 있다.
무료(Free License)라는 것이 믿기지 않을 정도로 완성도 높으면서 필요한 기능을 다 제공한다.
더욱 마음에 드는 것은 VMWare에서 생성한 VM을 Oracle VirtualBox가 재생(play)할 수 있다. 즉, 타사 제품과의 호환성이 높다.
내 추측이지만, XenProject의 부수물이 VirtualBox에 포함되어 있을 테니까, 나중에 Xen으로 갈아타더라도 거부감이 적을 것 같다.


*Redhat Enterprise Virtualization (KVM)
Kernel-based Virtual Machine(KVM)은 Bare-metal virtualization과 hosted virtualization hypervisor 특성을 모두 가지고 있다.
KVM은 이름이 의미하는 것처럼 Linux Kernel에 탑재된 Hypervisor이기 때문에, VM이 Host OS를 경유하지 않고, Hardware resource에 접근한다.
유료라는 것과 다른 Hypervisor보다 적은 기능을 제공하는 단점이 있다.


그 외에도 몇 가지 제품이 더 있지만, 워낙 사용자가 없는 제품이라서 언급하지 않겠다.


지난 8년간 Hosted Hypervisor를 많이 써왔기 때문에, 이제부터 Bare-metal hypervisor를 사용할 계획이다.
Bare-metal hypervisor를 사용하면서 느낀 점이 있으면 또 추가로 글을 작성하겠다.








댓글 없음:

댓글 쓰기