1. 程式人生 > >XenServer和VMware vSphere技術比較

XenServer和VMware vSphere技術比較

         此次將Citrix XenServer7.1和VMware ESXi 6.5從技術角度進行比較,並從企業角度對企業關心的項進行比較。主要包含市場地位、伺服器虛擬化底層穩定性、管理架構、相容性上進行分析。

市場地位

         VMware在虛擬化的地位類似於大型儲存中的EMC、小型機中IBM、網路中的思科、虛擬桌面中的Citirx、資料庫中的Oracle ,長期以來一直處於伺服器虛擬化中的壟斷地位,具有絕對性優勢,這點可以從2016年的Gartner伺服器虛擬化魔力象限中可以看出。

1

伺服器虛擬化底層穩定性

         先看看兩個伺服器虛擬化介質大小。

2

         從最新版下載的介質來看,XenServer比VMware大了近一倍,意味著程式碼可能是VMware的兩倍。更小的程式碼庫意味著“受***面”更小,需要修補的程式碼也更少,從而提高可靠性和安全性。ESXi的前身是ESX,ESX依靠Linux系統進行管理功能,管理功能包含執行指令碼,以及安裝用於硬體監控、備份或者系統管理的第三方代理。

         VMware為了系統更加穩定,從ESXi開始把管理功能全部刪除,上收到vCenter進行管理,這樣的好處是可以用最少的效能執行底層,功能更加單一,所需的磁碟容量最少,所以ESXi支援在SD卡安裝執行、在U盤安裝執行。甚至把SD卡、U盤拔掉,ESXi依然可以執行,虛擬機器照樣提供服務。這是XenServer無法實現的。下圖可以看到VMware ESXi只有一層Hypervisor。

3

        再來看下XenServer為什麼這麼大,而且必須要使用硬碟來安裝它的系統。

4

         從上圖可以看到,除了Xen提供的Hypervisor之外,XenServer安裝完成後還有一個Control Domain,一般我們稱為Domain0,Domian0其實是一個Centos系統,7.0以前是32位的,7.0以後用了64位的Centos。所以一直都有一個說法,XenServer安裝完成後的第一個虛擬機器是Domain0,這就是XenServer需要這麼大介質的原因。

         那再來看看這個虛擬機器是用於什麼用途的,主要用於模擬虛擬機器的硬體,包含常見的虛擬機器網路和虛擬磁碟,還有一些其它驅動,CPU和記憶體是直接通過Hypervisor呼叫的,這和VMware是一致的。但這裡就有一個致命的缺點了,所有的效能瓶頸,都在這個Domian0上,磁碟和網絡卡都需要先通過Domain0,再通過Hypervisor才能呼叫到底層的網絡卡和磁碟,所有我們一般在安裝XenServer的時候,都需要給Domian0分配4個vcpu,還有20-40GB左右的磁碟空間,用於存放日誌。

        瞭解到上面的一些基本原理後,我們再分析下,這個架構還可能會導致那些問題,讓我們的使用者無法接受。
1.驅動問題,一般的硬體廠商都會針對不同的作業系統有不同的驅動,舉個例子,某公司的一塊光纖網絡卡,VMware和XenServer都不帶這個驅動。這個時候我們只需要問廠商要針對於VMware的驅動,這個一般都可以要的到,目前還沒有碰到過要不到的情況。但XenServer驅 動就很難要到,一般需要使用者自己編譯,或者用已經編譯好的CentOS驅動。 經過千辛萬苦,編譯好了。打一些大的補丁的時候,或者做伺服器虛擬化底層升級的時候,驅動會丟失,還要再去重新編譯下。所以在日常工作中,如果XenServer不帶驅動,需要自己去打,那麼在打補丁和升級版本的時候,需要小心了!
2.網絡卡速率問題,VMware提供幾種網絡卡型別,主流的E1000和VMXNET3兩種,VMXNET3是最常用的,需要安裝VMware tools才能正常工作,它是10GB的,傳輸效率也會更高,而XenServer虛擬機器最大支援1GB,為了提高頻寬,Citrix建議用多個網路隔開,或者用微軟自帶的軟體進行網絡卡繫結。
3.磁碟精簡置備,XenServer7.1無法對虛擬機器磁碟進行精簡置備,XenServer7.6開始支援了,2018年9月6日釋出的,不在此次XenServer7.1的比較。精簡置備可以幫助使用者節省大量的儲存空間,在某些專案上面,可以幫助使用者節省近百萬的成本。

         精簡置備(thin provision):無論虛擬機器磁碟分配多大,以實際佔用多少空間為準,即用多少算多少。在某些核心的業務系統上面,VMware是不建議使用者開啟這項功能的,但在虛擬桌面環境裡面,這可以大大的提升磁碟的使用率。因為桌面降低點效能使用者是可能無法感知的。下圖是某使用者的精簡置備使用情況。容量一共7TB,分配出去的虛擬機器佔用了13TB,實際使用資料約6TB。已經提升了近一倍的利用率。

5

         不好地方在於可能會有IO延遲。但實際環境中,儲存加了快取記憶體,還有SSD做加速,IO已經可以滿足虛擬桌面的要求。這個時候我們更要關心的是如何提升儲存的利用率。精簡置備的磁碟還支援虛擬機器磁碟的線上擴容,虛擬機器磁碟擴容可以做到不停機操作。

管理架構

         vSphere是由ESXi+vCenter組成,XenServer採用master機制,就是從各XenServer裡面選擇一個XenServer作為總管理節點,管理員只需要連線master就可以了,預設情況下第一臺XenServer會成為master,也可以通過設定優先順序的方式指定。這種機制有個很大的弊端在於,有時候master意外宕機後,會出現其它XenServer主機進入緊急模式,然後XenServer網絡卡會丟失,虛擬機器網路中斷。所以專案中我們很怕XenServer的網路不穩定,一旦出現這種情況就需要去XenServer上打命令, 詳見KB https://support.citrix.com/article/CTX129815,這種情況目前也沒有很好的解釋,但由於master出現問題導致成員機器上的虛擬機器停止服務是管理員無法接受的。  

         相反,vCenter+ESXi的機制卻很穩定,這裡一定要糾正一個問題,vCenter只是一把開啟功能的鑰匙,功能並不在vCenter上,而是在ESXi本身的。什麼意思呢,vCenter掛了,ESXi的功能依然可以正常執行,比如HA、DRS都在正常工作,一臺主機壞了,HA依然生效。現在很多專案中,vCenter就直接部署在叢集裡面,vCenter所在主機壞了,vCenter馬上會在另外的主機上執行起來,管理依舊。在早期,很多管理員會多建立一個vCenter,當主的vCenter掛掉的時候,用備用的vCenter去接管,屬於一種冷備。在vSphere6.5中,引入了vCenter HA機制,可以直接利用vCenter裡面的功能,複製一個影像系統出來,當主的vCenter掛了後,影像系統直接接管,屬於HA熱備機制。

相容性

         伺服器虛擬化只是桌面虛擬化的基石,桌面虛擬化是其中的一種功能,好比大樓建好了,裡面各個房間也可以用了。這個時候,消防、逃生通道成為日後管理的重點。在系統建好後,我們需要更多的考慮備份、防毒安全。

6

         從實際專案中和官方文件顯示,領導者象限中僅有Commvault支援XenServer備份,其餘廠商都不支援XenServer虛擬機器備份。 針對於VMware ESXi的備份,幾乎所有的備份廠商都支援VMware虛擬機器備份。使用者有充足的選擇空間,選擇一款最適合企業的備份解決方案。 防毒軟體就不舉例了,和備份類似。

總結:

         此次比較主要針對一些企業常用的特性進行比較,其它如NSX、vSAN、FT還有很多特性就不一一舉例。

XenServer現在主要的價值在於價格了,在開源的道路上面,更多的廠商已經偏向於KVM。在商業軟體上面,VMware依然是不二之選,能夠讓企業更輕鬆的步入企業私有云。

目前會XenServer排錯和問題修復的人已經越來越少,更多的是依靠思傑800廠商,而VMware已經從學校開始培養了大批的管理員,更適合企業未來管理員的引進。