開源虛擬化ProxmoxVE和XenServer的分析比較

基于近期調研使用Proxmox VE的經驗以及之前使用XenServer的經驗,在本文中,我將討論Proxmox VE和XenServer并將這兩個最受歡迎的開源虛擬機管理程序進行分析比較,此分析比較側重于虛擬機資源分配上的虛擬機管理程序優(yōu)勢,支持的虛擬化方法,服務器體系結構,虛擬機數(shù)量,主機和客戶機的操作系統(tǒng)兼容性以及管理功能。這兩款開源的虛擬機管理程序因提供了近似VMware產品的企業(yè)級用戶操作體驗而在全世界范圍內廣受歡迎?;陂_源的虛擬機管理程序的推進使用改變了企業(yè)管理者管理其計算資源的方式,降低了IT運營成本,提高了性能和靈活性。雖然國內也具有ZStack等許多優(yōu)秀的開源產品可供使用且用戶體驗并不低于上述兩款產品,但就企業(yè)級功能開放度而言,目前還無法與之相比較,因此不計入本文的比較范圍。

我們提供的服務有:做網站、網站建設、微信公眾號開發(fā)、網站優(yōu)化、網站認證、大方ssl等。為近1000家企事業(yè)單位解決了網站和推廣的問題。提供周到的售前咨詢和貼心的售后服務,是有科學管理、有技術的大方網站制作公司

虛擬機管理程序是虛擬化技術采用和投資的主要載體和核心。目前市面上的開源虛擬化內核廣泛,如Xen、KVM、LXC、Docker等。這些虛擬化內核均依托于的單個服務器硬件及系統(tǒng)而存在,在大規(guī)模運行的情況下,需要虛擬機管理程序對其進行管理、編排和硬件集群資源池化等操作。因此,管理程序的容量、兼容性、用戶體驗及性能等對于解決運營者在運用虛擬化技術的管理挑戰(zhàn)中至關重要。在這方面,開源的管理程序OpenStack一直做得很不友好,因此,專門針對這些痛點研發(fā)的開源虛擬化管理程序大受歡迎;另外,盡管虛擬化技術的增長帶來了顯著的價格下降,但通過使用開源虛擬化管理程序可以進一步降低IT投資和運營成本。因此,大浪淘沙過后,簡單實用、貼近用戶Proxmox VE和XenServer成為最受歡迎的開源虛擬化管理程序。

l?Proxmox VE(英語:Proxmox Virtual Environment,通常簡稱為Proxmox)是一種基于開源的虛擬化解決方案,它在一個軟件包中提供計算、網絡和存儲三大功能。Proxmox VE是一個既可以運行虛擬機也可以運行容器的虛擬化平臺。Proxmox VE基于Debian Linux開發(fā),并且完全開源。出于靈活性的考慮,Proxmox VE同時支持兩種虛擬化技術:KVM虛擬機和LXC容器。

l?XenServer是基于開源Xen項目發(fā)展起來的開源虛擬化平臺,后被Citrix公司收購,改名為XenServer,并在持續(xù)一段時間商業(yè)化后轉而繼續(xù)開源。XenServer主要基于Xen開源虛擬化內核構建虛擬化管理堆棧,經過和Citrix產品搭售及AWS云計算產品基于Xen的背書,廣泛應用于各大企業(yè)生產環(huán)境。

從今天成熟穩(wěn)定的開源虛擬化管理程序來看,擁有悠久歷史、版本迭代穩(wěn)定、歷經各種生產環(huán)境實踐的開源虛擬化管理產品也就上述兩款是最為出眾。而這兩款產品也從各個角度均表明在許多方面具有很高的相似性,因此分析比較能夠客觀的提供更加細致的比較分析,保證在節(jié)約成本及基于虛擬化技術實施行業(yè)解決方案等的運作上,采用者能夠匹配到最佳的虛擬化管理程序,并基于自身的考慮因素如虛擬化要求、組織規(guī)模、人員技能和計算工作負載等實施最優(yōu)的解決方案。

從虛擬化技術的分類情況全虛擬化、半虛擬化、操作系統(tǒng)虛擬化和硬件輔助虛擬化等類別看,Proxmox VE和XenServer各自支持的虛擬化方法有所區(qū)別,具體來說:Proxmox VE支持完全虛擬化、硬件輔助虛擬化(基于KVM)和操作系統(tǒng)虛擬化,但XenServer支持完全虛擬化、半虛擬化和硬件輔助虛擬化,如下表1所示。

表1:虛擬化管理程序與虛擬化方法

開源虛擬化ProxmoxVE和XenServer的分析比較

對于XenServer的情況,雖然硬件虛擬化虛擬機在運行硬件輔助虛擬化時需要基于Intel的VT-x或AMD-V的x86 CPU,但半虛擬化不需要處理器虛擬化的功能支持,而是修改客戶操作系統(tǒng)內核,這一點Proxmox VE(KVM)的實現(xiàn)有所區(qū)別。與XenServer不同,Proxmox VE支持操作系統(tǒng)級虛擬化,這對于1型虛擬化管理程序并不常見?,F(xiàn)今市面上的大多數(shù)基于類型1的虛擬化管理程序支持半虛擬化和硬件輔助虛擬化,而完全虛擬化由于在運行期間涉及二進制翻譯,因此完全虛擬化的性能并不理想,主要是因為二進制轉換非常耗時,并且可能導致極高的性能開銷?,F(xiàn)今的主要解決方案是采用替代的高速緩存來改進二進制翻譯,以提升二進制翻譯的速度,但這可能會增加更多的內存使用成本。半虛擬化克服了完全虛擬化的性能問題,在x86架構上的半虛擬化可以提供主機80%到97%的性能。這是因為在半虛擬化技術實現(xiàn)機制下,操作系統(tǒng)能夠識別虛擬化管理程序發(fā)送的超級調用命令。因此,XenServer支持半虛擬化的好處是,基于Linux版本的操作系統(tǒng)運行于XenServer能夠得到很大的運行性能,但是由于半虛擬化需要修改操作系統(tǒng)內核,因此半虛擬化的方法不支持微軟的Windows操作系統(tǒng)。

很欣慰的是Proxmox VE和XenServer均支持基于硬件輔助虛擬化方法,通過硬件輔助虛擬化方法,Proxmox VE和XenServer均能夠提供適宜的運行性能。硬件輔助虛擬化能夠將軟件實現(xiàn)的虛擬化部分卸載到硬件上通過硬件設計的電路來執(zhí)行,執(zhí)行效率遠遠高于基于CPU處理器/內存虛擬化組合的計算能力。最典型的例子是AWS的Nitro,在 Nitro 系統(tǒng)架構中,網絡、存儲、安全管理及監(jiān)控都從傳統(tǒng)虛擬機中解耦,被遷移到專屬硬件中。這些功能都將模塊化、微服務化,使其能夠快速遷移并且隨時能夠根據(jù)新的需求而演進。Nitro 系統(tǒng)使用的是定制的 ASIC,將以前軟件實現(xiàn)的虛擬化方法通過專屬定制的ASIC硬件來執(zhí)行,這種架構的好處,是我們可以將所有服務器資源都分配給客戶的虛擬機或容器,各大IO模塊的享有和硬件一樣的高速運行速度。

隨著開源硬件OCP及天蝎項目等的運作和進展,我認為類似Proxmox VE和XenServer等虛擬化管理程序也能夠實現(xiàn)標準化解耦網絡、存儲、安全管理及監(jiān)控等的到專屬模塊化硬件的時候。但這不是我們今天的重點,開源的虛擬化管理程序在今天普遍硬件的架構下,滿足實用與好用的原則,就是現(xiàn)代基于虛擬化驅動的IT解決方案最有價值的方案。

虛擬化技術最主要的虛擬主體就是我們的硬件CPU、內存和IO。

首先,從支持的CPU架構上看,Proxmox VE和XenServer均只支持x86_64的CPU,不支持Power等架構的CPU。雖然從虛擬化內核Xen和KVM的角度,Xen以及KVM等均適配了Power等架構的CPU,甚至國產龍芯等MIPS架構的CPU,龍芯中科等均做了適配,但是這兩款虛擬化管理程序并為花費心思對其進行集成和適配。

表2顯示了虛擬化管理程序和CPU體系結構之間的對應關系摘要。

表2:虛擬化管理程序與CPU架構

開源虛擬化ProxmoxVE和XenServer的分析比較

其次,在支持的客戶機操作系統(tǒng)上,通過閱讀官方提供的兼容性列表,我們可以發(fā)現(xiàn)Proxmox VE和XenServer針對客戶機操作的兼容性差異在于Unix系統(tǒng)的兼容性上。具體如下:

表3:虛擬化管理程序與客戶機操作系統(tǒng)

開源虛擬化ProxmoxVE和XenServer的分析比較

在這方面,Proxmox VE是唯一基于開源的1型虛擬機管理程序,可與所有客戶操作系統(tǒng)高效協(xié)作。與Proxmox VE不同,XenServer不支持FreeBSD,NetBSD或任何其他BSD變體作為客戶操作系統(tǒng),但是用戶可以嘗試將其安裝為HVM來賓,自行安裝FreeBSD等操作系統(tǒng)的,但由于I / O是模擬實現(xiàn)的,因此其性能與其他半虛擬客戶機不匹配。FreeBSD等BSD系統(tǒng)有一個專門為其而生的虛擬化管理程序bhyve,有興趣可去了解,目前正在尋求對X86-64架構的其他操作系統(tǒng)的兼容性支持。

在支持的虛擬機數(shù)量上,由于每個版本的參數(shù)性能均不同,因此采用兩個管理程序的較新版本進行比較,如Proxmox VE 5.x和XenServer 7.x。虛擬機管理程序支持的虛擬機數(shù)量是評估其處理能力及內存特性對資源分配和服務器整合能力的重要指標。下表4總結了Proxmox VE和XenServer虛擬機管理程序支持的虛擬機數(shù)量。

表4:VM數(shù)量,CPU和RAM特性

開源虛擬化ProxmoxVE和XenServer的分析比較

在XenServer 7中的最大客戶機數(shù)量為500,但對于基于Linux的客戶機,此數(shù)量可以增長到650,但是這種測試的數(shù)量可以通過可接受的性能基線值而發(fā)生變化,比如配置更低的虛擬機可以運行更多的數(shù)量。Proxmox VE也具有類似的負載動態(tài)性。在虛擬機的vCPU支持上,XenServer支持每個虛擬機最多添加32個vCPU,對于VCPU之間的資源均衡,XenServer使用公平共享平衡算法,以確保虛擬機之間分配CPU資源相應地在物理CPU資源上平衡負載運行。此外,XenServer還可以將物理處理器動態(tài)分配給任何特定的虛擬機,動態(tài)分配允許虛擬機在可用時有效地利用可用的CPU資源。XenServer的一個好處是它能夠在同一資源池中使用不同類型的CPU,即支持異構資源池。通常,XenServer分別使用針對Intel和AMD的FlexMigration和Extended Migration技術來運行異構環(huán)境。對于Proxmox VE來說,每個虛擬機可支持的vCPU數(shù)為160。并可為單個客戶虛擬機分配最大192GB的內存空間。兩者均支持動態(tài)內存控制及CPU、內存、網絡及硬盤的熱插拔。

在網絡功能上,對于虛擬網絡接口卡(NIC),XenServer可以為每個虛擬機分配的最大NIC數(shù)為7,但是,存在基于來賓操作系統(tǒng)的變化,有些操作系統(tǒng)支持給更多的虛擬網卡。并且在XenServer物理主機中,支持的最大物理網卡數(shù)為16。對于Proxmox VE,由于其基于Debian系統(tǒng)構建,因此支持的網卡數(shù)量遠遠超出這個限制。Proxmox VE和XenServer均使用Linux Braidge和Open vSwitch在VM之間提供公平的網絡I / O資源并進行QoS控制。在網絡功能上,XenServer要比Proxmox V的網絡功能強大一點,但是強大的部分均基于商業(yè)版本,從開源版本的功能比較上,兩款產品的網絡管理功能均一致。在Proxmox VE中,每個節(jié)點最多可支持4,094個網橋,其通用命名格式為vmbrX,其中X表示0到4,094之間的整數(shù)。Proxmox VE的優(yōu)勢之一是允許節(jié)點間實時遷移的條件少于XenServer。

對于虛擬磁盤I / O的情況,XenServer可以分配給VM的最大虛擬磁盤驅動器數(shù)量為16,但這可能會因客戶操作系統(tǒng)的類型而異。在VM之間拆分的磁盤I / O資源是使用基于所定義的設置優(yōu)先級的公平共享方法完成的。XenServer使用存儲管理器,它是對基于文件和塊的存儲類型的內置支持。對于Proxmox VE,支持的存儲包括滿足本地存儲的目錄、用于本地或共享iSCSI目標的邏輯卷管理(LVM)、用于(OmniOS,F(xiàn)reeNAS,Ubuntu等)的網絡文件系統(tǒng)(NFS)、Gluster文件系統(tǒng)( GlusterFS)和Ceph。 出于備份目的,Proxmox使用FreeNAS。雖然NFS共享是最常用于VM備份方案,但也可以使用本地和Ceph FS進行完整備份。

最后,從管理功能上比較兩個管理程序。虛擬機管理程序中的管理功能對于輕松創(chuàng)建和管理虛擬機非常重要。 一些管理功能包括資產管理、配置快照、高可用性、實時遷移、維護模式、性能指標、存儲遷移、虛擬機克隆、VM遷移,容量規(guī)劃/管理、虛擬防火墻、虛擬機備份/恢復、精簡配置、存儲多路徑、性能報告、自動發(fā)現(xiàn)、故障轉移和多個主機資源池等。下表5顯示了Proxmox VE和XenServer虛擬機監(jiān)控程序支持的不同管理功能。

?

表5:虛擬化管理程序的管理功能

?

開源虛擬化ProxmoxVE和XenServer的分析比較

從上面的表5可以看出,兩個管理程序都提供了類似的管理功能,這意味著兩個管理程序之間沒有顯著差異。但是,這些功能如何工作并產生預期結果存在重大差異。例如, XenServer和Proxmox VE都支持圖形用戶界面(GUI)和命令行界面(CLI)管理。但是XenServer是基于CS架構的GUI客戶端,通過安裝在Windows環(huán)境下的GUI客戶端,并通過使用256位SSL(AES)加密來保護和XenServer主機之間的所有通信。而Proxmox VE使用基于HTML5的Web GUI客戶端來實現(xiàn)Proxmox VE的圖形接口操作訪問。兩者都具有專有的CLI管理命令工具。另外一個管理功能比較有所區(qū)別的是虛擬機的克隆。XenServer和Proxmox VE都支持完整克隆和連接克隆。區(qū)別在于兩者的存儲文件格式類型不一,所支持的虛擬機的克隆能力有所異同。此外,在存儲空間的利用上,XenServer通過支持在本地磁盤上對現(xiàn)有虛擬機進行精簡置備,格式為EXT3和NFS存儲庫,Proxmox VE由于利用KVM內核,因此和支持的格式有關。對于虛擬防火墻,兩個虛擬機管理程序都具有管理功能,均通過內部包過濾和監(jiān)控功能來增強安全性。從安全角度來看,XenServer由一個控制域(Dom0)組成,它是一個安全的特權虛擬機,運行XAPI(管理工具堆棧),可用于控制網絡、存儲、身份驗證和計算資源管理中的虛擬機生命周期操作。Proxmox VE使用基于角色的用戶和權限管理來監(jiān)控虛擬機和容器、存儲池和主機節(jié)點。此外,Proxmox VE使用Linux PAM或LDAP應用用戶身份驗證。這兩個虛擬機管理程序還提供實時遷移、高可用性(HA)、虛擬機快照和性能報告。這些均是企業(yè)在運行過程中能夠對業(yè)務運行產生重大幫助的優(yōu)秀功能。

另外從虛擬機的導入導出和遷移上,XenServer比Proxmox VE做得要好?;旧希琗enServer支持在同構和異構環(huán)境中導入和導出虛擬機,并支持行業(yè)標準的開放虛擬化格式(OVF),因此它可以接受從其他虛擬機管理程序創(chuàng)建的所有虛擬機,包括VMware和Hyper-V等專有虛擬機管理程序。這主要是使用XenServer Conversion Manager實現(xiàn)的。Proxmox VE未開發(fā)專門的GUI導入導出工具,但是支持qcow2、raw和vmdk格式的虛擬機,其導入導出功能需通過CLI工具實現(xiàn)。

?qcow2支持的存儲是NFS和目錄、Raw格式支持LVM,RBD,iSCSI和目錄。 vmdk支持NFS和目錄。由于高I / O開銷和低處理速度,qcow2格式不適用于數(shù)據(jù)密集型虛擬機,如數(shù)據(jù)庫服務器。但是,當存在預算限制和有限的存儲空間時,qcow2文件很有用。此映像類型支持KVM實時快照以保留VM狀態(tài)。原始映像類型可確保性能,因為VM具有直接傳遞訪問權限,因此速度更快。原始文件格式只能提供固定大小或密集配置的VM映像,因此它是所有Proxmox VM的首選文件格式??梢栽赑roxmox中添加的虛擬驅動器是IDE(3),SATA(5),VirtIO(15),SCSI(13)。原始磁盤映像文件始終是預分配的,因此存在超出總可用存儲空間的過度配置風險。此映像類型的另一大優(yōu)勢是它支持KVM實時快照。關于vmdk圖像格式,Proxmox使用它只是為了便于VM遷移到其他虛擬機管理程序。 vmdk文件格式的存在允許Proxmox文件在異構管理程序環(huán)境中游動。

Proxmox VE和XenServer在許多方面類似,但主要區(qū)別在于XenServer不支持Linux容器(操作系統(tǒng)虛擬化),而Proxmox VE支持。與XenServer相比,此功能可提升Proxmox VE的強度。雖然Proxmox VE使用獨特的虛擬化API,并利用KVM完全虛擬化和基于LXC容器的操作系統(tǒng)虛擬化,但是其運行和管理歷經生產環(huán)境實踐,不使用Libvirt接口也可以很好運行。Proxmox VE和XenServer都是流行的虛擬機管理程序,均需要高水平的操作系統(tǒng)及虛擬化技能才能在整個虛擬機生命周期內進行安全管理。根據(jù)采用組織的規(guī)模和要求,如何在虛擬機之間分配和共享資源是虛擬化管理程序的主要作用。因此,對于旨在以最高性能降低成本削減虛擬化解決方案的組織,Proxmox VE和XenServer是虛擬化服務器基礎架構的最有價值和可行解決方案。

?

名稱欄目:開源虛擬化ProxmoxVE和XenServer的分析比較
瀏覽路徑:http://bm7419.com/article26/iehpjg.html

成都網站建設公司_創(chuàng)新互聯(lián),為您提供網站設計、網站策劃做網站、自適應網站、搜索引擎優(yōu)化、微信小程序

廣告

聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

商城網站建設