星期四, 7月 28, 2011

初探 XenServer 免費版

主管指示要開始朝虛擬化前進,原本是想採用 Hyper-V Server ,安裝及設定參考蘇老的文章,用起來也很不錯。沒想到Hyper-V Server 2008 R2 SP1對Linux的相容性比以前還糟,我愛用的TrueImage開機光碟完全不能用。

接下來只好準備換跑道,看到保哥在噗浪上寫 KVM 效能遠勝過 Hyper-V Server ,於是在我的Ubuntu桌機設定 KVM,跑起來感覺並沒有很快。接著我再換 Xen 核心,跑起來其實和 KVM差不多。其實在這裏我犯了嚴重的錯誤,企業級虛擬化與個人用虛擬化不同,應該要使用"乾淨"的測試環境才準。關於Xen的安裝及原理可以參考鳥哥的利用 Xen 設計虛擬機器。至於市場龍頭VMWare 免費Server ESXi很挑硬體,我手上沒有SCSI硬碟,所以就算了。(而且聽說它的管理工具要錢,這...)

其實KVMXen很類似,都是建立在修改Linux Kernel之上(但是KVM算是Linux Kernel內建功能),也都利用QEMU做為虛擬機執行平台,較新的Linux Kernel都內建支援XenKVM。現在Virt管理工具也做的不錯,但我暫時選擇XenServer。原因為何?Xen已經非常成熟,在多篇效能比較裏,它的CPU使用率都很低,I/O效能也好,加上商用軟體整合性好;我需要有良好UI管理工具,並且要易於安裝,用KVM有不少東西得手動來。

XenServer還有個特點,就是免費版也具有動態搬移VM的功能(Live Motion,在Hyper-V叫Live Migration,在 Hyper-V Server 2008 R2之後具備),可以參考這篇

安裝主機很簡單,步驟可以參考,硬體需求就是CPU要有支援Intel VT或AMD-V,詳情看XenServer 安裝指南。裝好後,找台支援.Net framework 2.0的Windows安裝管理介面Xen Center,隨附在安裝ISO檔裏。

接下來當我在XenServer上安裝VM時,第一個想法就是:「真是麻煩呀!」。它不像Hyper-V Server能夠直接丟ISO檔過去,而是必須讓它mount遠端的網路磁碟。所以我後來幾乎都是利用TrueImage將線上的Server備份,直接在上面還原。

不過裝好以後,效能表現確實令人讚賞呀!請看在下的使用狀況:

註:這台主機是一台商用PC,接了1TB硬碟,16GB RAM,CPU是Core i5-2500

XenServer的guest支援工具(XenServer  Tools)支援Windows及Linux kernel 2.6以上,所以可以看到那台Linux VM(WWW)顯示未安裝支援工具,看不到記憶體使用量,但仍然使用非常低的CPU,若是WIndows主機沒安裝支援工具則會使用較多記憶體。

當然我初期會虛擬化一定是選擇使用率較低的Server,但XenServer的效能實在太令我驚訝!某一台原本是Q6600 4GB RAM的Windows 2003 Server,虛擬化之後居然比實機更快!我不清楚是因為I/O變快還是Xen造成,但是快到使用者點選網頁都有感覺反應變快,不虛擬化的藉口完全消失。

說完優點得說一下缺點:Xen Center免費版能夠調整的很有限,硬體的規格也完全不能改(例如:SATA、IDE、SCSI、模擬網卡類型等等);也不能用Virt連上XenServer,要自己編譯libvirt裝上XenServer也幾乎不可能(不知道為何,但是搜尋到的結果是如此)。也就是說,對我這種技術控來說,這樣的黑箱作業用起來有點毛毛的..

要建立不停機備援得建立Server Pool,XenServer要求兩台完全一樣規格的硬體,因此請期待下集...

參考資料:
  1. XenServer管理指南
  2. Citrix XenServer x86虛擬化解決方案
  3. 詳解Citrix思傑XenServer虛擬化
  4. 射手科技的 XenServer/XenDesktop 虛擬化應用方案
  5. 射手的 XenServer 虛擬化瑣事
  6. Hyper-V vs. ESXi vs. XenServer (有點舊)
  7. KVM(Kernel-based Virtual Machine) + KQEMU
  8. Xen Server Book

4 則留言:

匿名 提到...

會快是因為你放到新主機啦!XenServer放在原本Q6600上面一定會變慢的。

Tseng Teng-Yi 提到...

這位老大,您搞錯了,我測試都是使用相同的主機。雖然最早是使用Q6600,後來就改用Core i5,測試滿意後,使用XenServer Free架Cluster近兩年的時間。

當初寫這篇時是與Hyper-V 2.0相比,若是與vSphere比,我想不會有太大的差別。

匿名 提到...

請教一下室使用何種工具將實體機轉進XenServer中。

Tseng Teng-Yi 提到...

你是指P2V嗎? 以前有個XenConvert的免費工具,剛才去找沒看到了。 現在我們有買Acronis,可以很方便的異機還原,就是我內文提到的TrueImage,後來Server版改名叫Acronis Backup & Restore,你沒有用心看喲。

另外,現在主流是vSphere和KVM,若不想花錢,去玩KVM吧,我不再推薦XenServer了。若不熟Un*x,就去試Hyper-V Server,免費功能又強大。