參考:
https://www.proxmox.com/en/proxmox-ve
https://blog.51cto.com/u_14742102/3207448
簡介
Proxmox VE 是一個運行虛擬機和容器的平台。 這是 基於 Debian Linux,完全開源。 最大 靈活性,我們實施了兩種虛擬化技術 - 基於內核的虛擬機 (KVM) 和基於容器的虛擬化 (LXC)。
一個主要的設計目標是讓管理變得像 可能的。 您可以在單個節點上使用 Proxmox VE,或者組裝一個集群 許多節點。 所有管理任務都可以使用我們基於網絡的 管理界面,即使是新手用戶也可以設置和安裝 Proxmox VE 在幾分鍾內完成。
根據Proxmox VE的官網介紹,Proxmox Virtual Environment(簡稱Prxomox VE或PVE)由位於奧地利維也納的Proxmox Server Solutions公司開發和維護。Proxmox VE軟件和社區支持都是免費的,企業用戶則可以通過訂閱制來獲得付費商業支持。
根據Proxmox VE的官網介紹,Proxmox VE是一個集計算、網絡及存儲於一體的解決方案,這就是我們通常所說的超融合解決方案。
Proxmox VE是一個企業級虛擬化平台,該平台集成了基於內核的虛擬機管理程序(KVM)和基於Linux容器(LXC)這兩種虛擬化技術,同時還集成了軟件定義存儲和虛擬網絡功能。借助Web的管理界面工具,可以輕松地管理和配置虛擬機、容器、高可用性集群、軟件定義存儲、虛擬網絡以及備份等。
Proxmox VE最大的優勢在於安裝使用的方便以及Web管理界面的豐富,還可以相對比較簡單的實現企業虛擬化和企業私有雲。
從Proxmox VE 5.x 版本開始,官方整合了分布式文件系統Ceph,並對其進行了改進。這樣的話,Proxmox VE就和OpenStack一樣,存儲方面集成了分布式存儲,實現了計算、網絡、存儲一體化解決方案,即所謂的超融合。
Proxmox VE的主要特性,去中心化、超融合、高可用、開源低成本、易於實施管理。
Proxmox VE與ZStack、VMware、OpenStack比較
Proxmox VE是一個集計算、網絡及存儲於一體的解決方案,它主要的特性與ZStack、VMware以及OpenStack相比,既有相似性也有差異性,如下表所示。
開放程度
- Proxmox VE是商業公司Proxmox Server Solutions的開源產品,Proxmox VE軟件和社區支持都是免費的,企業用戶則可以通過訂閱制獲得付費商業支持。
Proxmox VE的主要劣勢,是這個開源產品只有Proxmox Server Solutions一家在維護,生態方面不如OpenStack。
-
ZStack是上海雲軸信息科技有限公司的商用產品,該公司同時發布ZStack開源產品,商用版本與開源版本的主要區別在於,開源版本不支持高可用。ZStack開源產品和ZStack社區由上海雲軸信息科技有限公司在維護,生態方面不如OpenStack。
-
VMware是威睿信息技術(中國)有限公司的商用產品,VMware只有商用產品,沒有開源產品,在國內產品定價高,功能按模塊收費,產品線繁雜。產品維保費用高,原廠服務價格貴同時服務支持響應慢。
-
OpenStack是一個開源雲計算項目,這個全球性項目由Rackspace和NASA共同創辦,采用了Apache2.0許可證,可任意使用。經過多年的發展,OpenStack現已發展成為一個廣泛使用的業內領先的開源項目,提供部署私有雲及公有雲的操作平台和工具集。
安裝部署
- Proxmox VE最大的優勢在於安裝使用的方便以及web管理界面的豐富,Proxmox VE社區提供iso鏡像,可以刻錄到光盤或者優盤,整個安裝過程在10分鍾之內安裝完畢。
除此之外,Proxmox VE是去中心化架構的,無論是單節點還是集群,都只需要安裝一個Proxmox VE套件。
-
ZStack的ZStack Cloud也提供iso安裝方式,但是ZStack的一些產品套件如多管理節點高可用套件是需要單獨安裝的。總體來說,ZStack安裝還算容易,但是需要分產品安裝,需要安裝多個產品套件。
-
VMware的vSphere的兩個核心組件是ESXi虛擬化平台和vCenter管理平台,ESXi也提供iso安裝方式,但是管理平台vCenter卻是與ESXi是分離的,需要單獨安裝。VMware的安裝總體來說跟ZStack差不多,安裝容易,但是需要分產品安裝。
-
OpenStack的架構復雜,組件眾多,配置煩瑣,整體安裝非常復雜,對於剛剛接觸到OpenStack的初學者而言,安裝一個OpenStack雲平台更是難上加難。沒有一支專家隊伍幫助實施,很難駕馭好OpenStack。
虛擬計算
-
Proxmox VE目前僅支持KVM這一種虛擬化技術,無法實現異構虛擬化統一管理,在VMware虛擬化市場占有率居高不下的情況下,無法納管VMware,無法保護企業既有的VMware投資。
-
VMware是一個商用閉源產品,在虛擬化技術方面,僅支持自有虛擬化技術ESXi。vSphere產品套件的核心產品是ESXi虛擬機管理程序,作為一個虛擬化層次,它是整個VMware產品線中的其他產品所依賴的基礎。
-
ZStack主要支持KVM、ESXi這兩種虛擬化技術,企業可以在部署時選擇KVM虛擬化技術來部署ZStack Cloud,在需要納管第三方VMware虛擬化平台時,可選擇ESXi虛擬化技術,來滿足ZStack納管VMware的需求場景。
-
OpenStack支持KVM、Xen、Hyper-V、ESXi等多種虛擬化技術,在OpenStack環境中,計算服務通過API服務器來控制虛擬機管理程序,企業可以在部署時選擇一種虛擬化技術來創建虛擬機,向用戶提供雲服務器。
虛擬存儲
- Proxmox VE支持多種存儲技術,虛擬機鏡像既可以保存在服務器本地存儲,也可以保存在基於NFS或SAN的共享存儲設備上。
在本地存儲方面,支持LVM、ZFS。
在共享存儲方面,支持NFS、SAN、CIFS。
在分布式存儲方面,支持Ceph、GlusterFS。
-
ZStack也支持多種存儲技術,根據官網的《PD2002 ZStack V3.10.0 技術白皮書》介紹,ZStack支持DAS/NAS/SAN/DFS等存儲類型,支持本地存儲、NFS存儲、SAN存儲、分布式塊存儲。其中分布式塊存儲支持Ceph。
-
VMware也支持多種存儲技術,在本地存儲方面,支持LVM、VMFS和NFS。在共享存儲方面,支持NAS和SAN。在分布式存儲方面,支持vSAN。
-
OpenStack目前提供持久性存儲服務的項目有3個,分別是代號為Cinder的塊存儲(Block Storage)、代號為Swift的對象存儲(Object Storage)和代號為Manila的共享文件系統(Shared File Systems)。支持多種后台存儲設備,包括LVM、NFS、SAN、Ceph、Sheepdog,以及EMC、IBM等商用存儲系統。
虛擬網絡
虛擬計算和虛擬存儲都有相對成熟的解決方案,在虛擬計算方面有KVM可以實現,在虛擬存儲方面有典型的Ceph分布式存儲可以實現。而虛擬網絡的實現,目前沒有統一的標准,而且不同業務的需求不同,也會導致虛擬網絡在架構方面有所不同。
- Proxmox VE在虛擬網絡方面,支持VLAN、VXLAN虛擬網絡,包括基於Linux虛擬網絡的VLAN網絡、基於開放虛擬交換機(Open vSwitch)的VLAN和VXLAN。
如需要支持虛擬路由器、虛擬防火牆、虛擬負載均衡等,則需要做定制化開發或者使用原生虛擬機去實現。
根據《Proxmox VE 6.2手冊》中文版手冊介紹,SDN目前是Proxmox VE中的一個實驗性功能,相關的文檔也在開發中,所以暫不討論Proxmox VE的軟件定義網絡。
可以說,Proxmox VE的網絡虛擬化功能比較弱,無法實現私有雲內大規模網絡虛擬化的需求,無法定制虛擬VXLAN和虛擬路由器,不過在私有雲規模不大的情況下,這倒不是大問題。
-
ZStack也支持VLAN、VXLAN虛擬網絡,根據官網的《PD2002 ZStack V3.10.0 技術白皮書》介紹,ZStack支持支持VLAN、VXLAN等網絡模型,可通過雲平台接管硬件交換機的SDN網絡,從而實現VLAN、VXLAN等網絡模型,進而實現虛擬路由器、NAT、DHCP、IPSEC隧道,實現VPC,從而具備了公有雲特性。
-
VMware自有的虛擬網絡套件NSX,支持多種的、豐富的虛擬網絡服務,包括虛擬交換機、虛擬路由器、負載均衡、防火牆等一系列虛擬網絡套件服務。
-
OpenStack網絡服務提供一個API讓用戶在雲中建立和定義網絡連接,該網絡服務的項目名稱是Neutron。Neutron提供虛擬網絡基礎架構,包括虛擬二層交換、虛擬三層交換、虛擬子網和虛擬路由器,除此之外,還提供虛擬防火牆(FWaas)、安全組(Security Group)、負載均衡(LBaas)和虛擬專用網(***aas)這樣的高級服務,具備了公有雲特性。
硬件兼容性
-
Proxmox VE在硬件兼容方面,僅支持x86_64架構硬件,不支持國產ARM架構硬件,不支持國產信創生態。
-
ZStack在硬件兼容方面,支持任何x86架構硬件,支持國產ARM架構硬件,支持國產信創生態,全面支持主流信創芯片、操作系統,同時全面支持中間件、數據庫、應用軟件等廣泛信創生態,打造新基建下的安全、可信的雲環境。
-
VMware在硬件兼容方面,僅支持x86_64架構硬件,不支持國產ARM架構硬件,不支持國產信創生態。
-
OpenStack在硬件兼容方面,支持任何x86架構硬件,支持國產ARM架構硬件,國內廠家基於OpenStack的雲平台產品,基本上支持國產信創生態。
裸金屬
-
Proxmox VE目前不支持管理沒有虛擬化的裸金屬主機,僅支持管理虛擬化的硬件。Proxmox VE后續版本會不會支持管理裸金屬,目前還不知道,不過根據我個人的看法,Proxmox VE主要面向小型虛擬化場景、小型私有雲場景,后續Proxmox VE版本可能不會支持管理裸金屬。
-
ZStack提供裸金屬管理服務,可為應用提供專屬的物理服務器,裸金屬管理服務的基本原理是:部署服務器提供DHCP服務和FTP服務,指示多台裸金屬設備由PXE網卡啟動並分配動態IP,裸金屬設備從部署服務器中下載相關軟件包,用於裸金屬主機的系統安裝。
-
VMware在裸金屬管理服務方面,暫不清楚是否支持,網上查不到相關信息,極有可能是不支持裸金屬管理服務。
-
OpenStack除了提供虛擬化和虛擬機服務之外,還提供傳統的主機服務——裸金屬。OpenStack可以將裸金屬與其他部署有虛擬化管理程序的節點通過不同的計算池一起管理。OpenStack通過Ironic管理裸金屬,主要通過PXE和IPMI進行控制管理。
GPU
-
Proxmox VE支持GPU直通模式和GPU虛擬化模式。在GPU直通模式下,可將物理GPU指定給特定的虛擬機,該特定虛擬機獨立享有物理GPU。如要實現GPU虛擬化模式,向不同虛擬機分配vGPU,則需要向硬件GPU廠家購買虛擬化許可。
-
ZStack同樣支持GPU直通模式和GPU虛擬化模式。根據《PD2002 ZStack V3.10.0 技術白皮書》介紹,ZStack以組為單位整體透傳物理GPU設備上攜帶的全部外接設備(包括:GPU顯卡、GPU聲卡、其它GPU上的小設備),有效提高雲主機高性能計算和圖形處理能力。在vGPU方面,同時支持NVIDIA和AMD顯卡虛擬化切割成vGPU,支持指定規格和指定設備兩種方式為雲主機加載vGPU。
-
VMware支持GPU直通模式和GPU虛擬化模式。在GPU虛擬化模式方面,支持vSGA、vGPU、vDGA等三種模式。
-
OpenStack同樣支持GPU直通模式和GPU虛擬化模式。關於在OpenStack環境下的GPU模式,原理與Proxmox VE、ZStack和VMware的相似,這里不在贅述。
高可用
- Proxmox VE的高可用主要體現在分布式多副本和雲主機高可用兩個方面,Proxmox VE高可用是建立在物理節點集群之上,依賴分布式存儲Ceph。
在實現物理節點集群的基礎之上,通過分布式Ceph設置數據/虛擬機鏡像的多副本數,默認情況下,使用3副本模式。
-
ZStack同樣支持分布式Ceph的多副本存儲技術,除此之外,ZStack支持零宕機方案Fault Tolerance,FT實現了業務零中斷,實現了CPU狀態全同步、內存狀態全同步、網絡狀態全同步、磁盤狀態全同步,目前我對ZStack的FT方案還不是很了解,后續會抽時間研究下ZStack的容錯方案。除了FT方案之外,ZStack支持熱遷移。
-
VMware同樣支持多副本存儲技術,支持FT方案,支持熱遷移,這里不再贅述。
-
OpenStack支持多副本存儲技術,支持OpenStack容錯方案,支持熱遷移。關於OpenStack的高可用性,我目前了解不多,留待后續有時間再研究。
數據庫服務
-
Proxmox VE在本質上是一個IaaS開源雲計算解決方案,目前幾乎不具備有PaaS層的服務能力,因此不具備有數據庫服務能力。
-
ZStack不僅具備IaaS層能力,同時還具備有PaaS層的能力,如支持數據庫Oracle、MySQL、ostgres、Mongodb、Influxdb、Cassandra和Redis等數據庫服務。支持Linux Tomcat、JAVA、Apache Web、Jboss、PHP、Node JS、Golang、Python等語言和運行環境。
-
VMware在本質上也是一個IaaS開源雲計算解決方案,幾乎不具備有PaaS層的服務能力,因此不具備有數據庫服務能力。
-
OpenStack不僅具備IaaS層能力,同時還具備有PaaS層的能力。基於OpenStack的雲產品廠家,大部分都進行PaaS開發,從而具備PaaS的服務能力,典型的如華為雲。
容器
-
Proxmox VE目前僅支持Linux容器(LXC),從Proxmox VE 4.0開始, Proxmox VE舍棄了OpenVZ 容器並轉向了LXC 容器技術。Proxmox VE基於LXC,提供輕量級Linux應用程序方案。
-
ZStack支持容器Docker和k8s,根據ZStack的官網介紹,ZStack Zaku容器雲平台是一款基於Kubernetes構建的企業級PaaS(平台即服務)軟件,最大化屏蔽原生復雜概念,依據傳統用戶使用習慣進行極簡化。提供多租戶、多集群、資源配額管理、CI/CD等功能,幫助企業快速進入雲原生時代。
-
VMware同樣也支持容器Docker和k8s,用戶可直接在VMware vSphere上安裝Kubernetes來運行Docker,並提供容器服務。
-
OpenStack同樣也支持容器Docker和k8s,關於OpenStack與k8s的關系,網上有很多,但是因為本人目前對OpenStack還不是很熟悉,這里就先不展開。
災備
-
Proxmox VE 內嵌了虛擬機備份工具(vzdump),可以在線創建KVM 虛擬機和LXC 容器的快照備份。創建的備份不僅包括虛擬機和容器的完整鏡像數據,同時包含了相應的配置文件信息。支持冷熱遷移。
-
ZStack具備較強的災備服務能力,包括:災備功能介紹、災備環境部署、以及本地災備、異地災備、公有雲災備場景實踐。支持冷熱遷移。
-
VMware提供了基於vSphere虛擬化平台的VMware Site Recovery Manager (簡稱SRM),在用戶可接受的成本下,提供了基於x86服務器平台的災備方案,讓用戶跨站點(site) 備份虛機數據,並在主站點失效時,自動切換到備份站點繼續應用運行。
-
OpenStack的災備方案,目前了解不深,這里不贅述,后續有機會另外撰文探討。
多雲管理
-
Proxmox VE基於Web界面進行去中心化管理,登錄任何一個節點,就可以管理整個集群的節點,但是Proxmox VE目前只能實現單一集群管理,無法實現多集群管理,無法實現多雲管理。
-
ZStack支持多雲管理,ZStack的ZStack CMP多雲管理平台深度對接ZStack Cloud,ZStack Mini,統一納管阿里雲,華為雲,天翼雲,VMware等多種主流公有雲、私有雲環境。
-
VMware的管理平台vCenter,通過中心架構管理方式,實現對物理節點進行管理,也就是說只能通過vCenter去管理物理節點或集群,目前暫不了解vCenter是否支持同時管理多個集群。
-
OpenStack支持多雲管理。基於OpenStack的雲產品廠家,大部分都進行了多雲管理平台(CMP)開發,實現對主流公有雲、私有雲的納管。
面向場景
- Proxmox VE主要面向中小型虛擬化場景、私有雲場景。
根據《Proxmox VE6.2手冊》介紹,“我們使用Corosync Cluster Engine來確保集群通信的穩定可靠,目前一個集群最多可擁有32個物理節點。”
官網文檔還介紹,Proxmox VE支持1000個虛擬機沒有問題。
換句話說,Proxmox VE最多能管理32台物理節點,大概在1000個虛擬機左右的量。
-
ZStack主要面向虛擬化場景、私有雲場景、公有雲場景以及混合雲場景,集群最多管理物理節點數不詳。
-
VMware主要面向大中小型虛擬化場景、私有雲場景,vCenter基礎版最多可以管理1000台ESXi物理節點,vCenter高級版最多可以管理3000台ESXi物理節點。(網上查的數據,不一定准確)
-
OpenStack主要面向大型和超大型的私有雲場景、公有雲場景,理論上可以管理無限台物理節點。