Oracle和VMware是現代IT行業提供虛擬化解決方案的領導者。Oracle的虛擬機運行器是VirtualBox。VMware則有多個產品用於不同用例的虛擬機運行,包括VMware vSphere ESXi和Workstation。這兩個平台都快速可靠,並提供豐富的有趣功能。繼續閱讀以了解Oracle和VMware產品之間的差異以及在哪些情況下每個產品表現最佳。
VirtualBox vs VMware比較表
讓我們從Oracle VirtualBox和VMware虛擬化產品(Workstation Player,Workstation Pro,Fusion Player,Fusion Pro和ESXi)的最重要特性概述開始。表中的每個點將在下一節中進行更詳細的介紹。
html
Oracle
VMware
VirtualBox 7.0.6
Player 17
Workstation 17
Fusion 13 (Player)
Fusion Pro 13
ESXi 7.0
虛擬化類型
2
2
2
2
2
1
授權
免費 / 每用戶 $50 起
免費 / $150
從 $200 起
$150
$200
免費/付費 (從 $577 起)
虛擬化
硬體 + 軟體
硬體
硬體
硬體
硬體
硬體
主機作業系統
Linux、Windows、Solaris、macOS、FreeBSD
Linux、Windows
Linux、Windows
macOS
macOS
—
客戶作業系統
Linux、Windows、Solaris、FreeBSD、macOS
Linux、Windows、Solaris、FreeBSD
Linux、Windows、Solaris、FreeBSD
Linux、Windows、Solaris、FreeBSD、macOS
Linux、Windows、Solaris、FreeBSD、macOS
Linux、Windows、Solaris、FreeBSD
共享資料夾
是
是
是
是
是
否
共享剪貼簿
是
何為虛擬化軟體?
A hypervisor is a software product that allows you to create and run multiple virtual machines (guest machines) on a single physical machine (host machine). This provides several advantages, including agility and resource saving. Using a hypervisor simplifies the copying of machines from one server to another and the distribution of hardware resources between VMs.
虛擬化軟體將實體機器的軟體與底層硬體資源分離。建立的虛擬機器(VMs)在邏輯上與彼此隔離,並與底層實體機器獨立。
有兩種類型的虛擬化軟體:
- 第一類 虛擬化軟體,或稱為本地虛擬化軟體,可以直接在裸機上運行,直接訪問硬體。因為在這種情況下,虛擬化軟體作為操作系統工作,所以不需要底層操作系統(OS)。
- 適用於:大型生產環境
- 範例:VMware ESXi
- 第二類 虛擬化軟體 在現有的主機操作系統上運行作為應用程序,也被稱為主機虛擬化軟體。它們通過主機操作系統協調對 CPU、內存、磁盤和其他輸入/輸出資源的調用來提供虛擬化服務。
- 適用於:在個人電腦上運行虛擬機器
- 範例:Oracle VirtualBox、VMware Workstation、VMware Player和VMware Fusion
想法
- 如果您的环境需要最大性能,选择类型 1 的 hypervisor。
- 如果您需要在已安装 Linux、Windows 或 macOS 等操作系统的计算机上运行虚拟机,请选择类型 2 的 hypervisor。
许可模型:Oracle VirtualBox vs. VMware
Oracle VirtualBox 是一款免费的开源软件产品,根据 GNU 通用公共许可证第 2 版 (GPLv2) 分发。撰写时可用的 VirtualBox 最新版本为 VirtualBox 7.0.6。
还有VirtualBox 扩展包,可供评估、个人使用或教育目的免费使用(根据VirtualBox 扩展包个人使用和评估许可证分发),但您需要购买VirtualBox 企业许可证进行商业用途。VirtualBox 扩展包是一个闭源包,为产品添加了一些附加功能,包括 USB2.0/3.0 支持、VirtualBox RDP、PXE 引导、虚拟机磁盘加密 (必须安装在主机操作系统上) 和其他功能。
VMware Workstation Player(前身為VMware Player)可供個人、教育和非商業用途免費使用。企業和非營利組織必須購買Workstation Player商業許可證,約價值150美元(截至撰寫時),此許可證可允許在Workstation Pro/Fusion中建立的受限制VM中運行,並提供更好的大量部署支援。
VMware Workstation Pro (前身為VMware Workstation)可免費評估30天。通常,您需要購買Workstation Pro許可證,價值約200美元(截至撰寫時)。與僅包含基本功能的Workstation Player不同,Workstation Pro包含桌面虛擬化功能的完整集合。
VMware Fusion是適用於運行macOS操作系統的計算機的VMware Workstation等效。 VMware Fusion有兩個版本:VMware Fusion Player(約150美元)和VMware Fusion Pro(約200美元)。 Fusion Pro比Fusion Player具有稍微更多的企業級功能,主要面向家庭用戶。
VMware ESXi 必須使用 vSphere 授權 進行許可,價格從 $577 起,適用於 VMware vSphere Essentials Kit。ESXi 有 60 天的完整功能評估期。您也可以免費獲得 ESXi 授權,但有功能限制,包括無法使用 vCenter Server 管理 ESXi 主機,CPU 核心數有限(2 個物理 CPU),每個 VM 的 vCPU 數為 8。
重要提示: 所有價格均反映了撰寫時(2023 年 4 月)供應商網站上的價格,並且可能會有所變化。請務必在 Oracle 和 VMware 的官方網站上查看價格信息。
思考
在前文 VMware vs VirtualBox 比較的結論基礎上:
- 如果您需要一個具有最大功能的免費解決方案,並且需要一個第 2 類型的虛擬化監視器,請選擇 VirtualBox。如果成本節省是首要考慮的因素,這是正確的選擇。如果不需要與 VMware vSphere 集成,並且正在在 VMware Player vs VirtualBox 類別中選擇解決方案,那麼 VirtualBox 可能是更好的選擇,因為它提供了更多功能。
- 如果您需要在用户计算机上安装的虚拟化技术,并且需要与 VMware 虚拟环境(包括 VMware vSphere)集成,则选择 VMware Workstation 或 VMware Fusion(Pro)。如果您需要与其他 VMware 产品(如 VMware ESXi)的最大兼容性,请选择 VMware Workstation 或 Fusion Pro。
- 如果您需要为您的虚拟基础架构提供终极性能和可伸缩性,请考虑购买 VMware vSphere 许可证并部署 ESXi 主机。
硬件和软件虚拟化
硬件虚拟化(也称为硬件辅助虚拟化)使用 hypervisor 为虚拟机模拟硬件设备。物理机器(宿主机)上需要 Intel VT-x 或 AMD-V CPU 功能来启用硬件虚拟化,并且这些功能必须在 UEFI/BIOS 中启用。一些客户代码可以直接在宿主硬件上运行,从而提高了 VM 的整体性能。宿主和客户系统必须使用相同的平台,例如 x86-64。
VMware 和 VirtualBox 都支持硬件虚拟化。
软件虚拟化(也称为仿真)需要宿主系统通过使用特殊软件完全模拟整个客户平台,包括 CPU 指令。宿主机器的 CPU 不需要硬件虚拟化功能,但性能不如硬件虚拟化。宿主和客户平台可以不同。
VirtualBox 支持软件虚拟化。这意味着即使在其 CPU 不支持硬件虚拟化功能的旧硬件上,您也可以使用 VirtualBox 运行 VM。
注意: 舊版 VMware Workstation,如 VMware Workstation 7.0 及更舊的版本,支援軟體二進位翻譯。它們允許您運行具有 32 位元客戶操作系統的虛擬機,即使處理器不支援 Intel VT-x 或 AMD-V CPU 指令集。
想法
硬體輔助虛擬化是高效的,並得到了 VirtualBox 和 VMware 解決方案的支持。在我們的 VMware vs VirtualBox 比較中,只有 VirtualBox 支援軟體虛擬化,這使您能夠在甚至不支援 Intel VT-x 或 AMD-V CPU 功能的舊計算機上安裝 VirtualBox 並運行 32 位元虛擬機。
主機操作系統安裝
在 VirtualBox vs VMware 比較的這一部分中,我們將介紹可用於安裝第二類型超級管理程式的操作系統。正如您下面所看到的,VirtualBox 支援最多數量的主機操作系統。
Oracle VirtualBox | VMware Workstation/Player | VMware Fusion | |
主機操作系統 | Linux
Windows Solaris macOS FreeBSD |
Linux
Windows |
macOS |
支援的客戶操作系統
以下客戶操作系統可安裝在運行 VMware 和 Oracle 超級管理程式的虛擬機上。
Oracle VirtualBox | VMware | |
Guest OS | Linux
Windows Solaris macOS FreeBSD Legacy OS (DOS, OS/2, Novell Netware, etc.) Android |
Linux
Windows Solaris macOS* FreeBSD Android** |
*注意macOS僅可正式安裝為VMware Fusion/Fusion Pro的客戶操作系統。從技術上講,macOS可以使用特殊補丁安裝在VMware Workstation和ESXi上,但請確保在使用補丁之前遵守許可協議。
**查看此帖子以獲取有關在VMware虛擬機上安裝Android的更多信息。
您可以使用我們在VirtualBox vs VMware比較中考慮的所有虛擬機監控器來在VM上安裝VMware ESXi進行測試/教育目的。
用戶界面:GUI和CLI
VirtualBox提供GUI和CLI:
- VirtualBox Manager – 圖形用戶界面(GUI)
- VBoxManage是一個強大的命令行界面(CLI),您可以使用它來訪問虛擬化引擎的所有功能和設置,包括GUI中不可用的設置。VBoxManage命令對所有主機操作系統都相同。
VMware Workstation提供:
- a powerful and user-friendly GUI
- 用於管理虛擬機器(包括客戶操作系統)的
vmrun
命令行實用程序。您還可以在啟動Workstation、啟動虛擬機器、切換到全屏模式等情況下使用vmware
命令並提供適當的選項。
VMware Player 提供比Workstation更簡化的GUI(見下面的截圖)。安裝VMware-VIX API庫後,也可以使用vmrun
命令行實用程序來操作VMware Player。
注意:VMware Player的圖形用戶界面截圖是使用VMware Player 15創建的。版本17的GUI相同。
VMware Fusion提供了一個與Workstation GUI不同的GUI,因為它是為macOS用戶設計的。用於切換虛擬機器的標籤和包含虛擬機器列表的左側窗格都不見了。但是vmrun
命令行實用程序仍然可用。
VMware ESXi提供:
- a console (command line) interface that can be accessed either directly on the server or with a remote SSH connection. Configuring basic ESXi settings is available in the direct console user interface (DCUI), which is colored yellow and grey (the visual style is similar to the style of DOS applications).
- a graphical interface, which you can use if you connect to the ESXi server via a browser by using VMware Host Client (see the screenshot below).
想法
所有的虛擬化管理程序在這個VirtualBox vs VMware的比較中都提供了方便的GUI和廣泛的功能。比較VMware Workstation vs Player,VMware Player的GUI更簡單,並且不像Workstation那樣提供多個選項。
某些操作只能在所有解決方案的命令行界面中完成,而且每個虛擬化產品的不同操作系統使用的命令是相同的。
VMware ESXi的命令行界面與VMware Workstation和Fusion的命令行界面不同。更多關於ESXCLI命令和PowerCLI命令的資訊,可用於在VMware vSphere中管理ESXi。
共享資料夾、共享剪貼簿、拖放
一些虛擬化解決方案的功能,使得與虛擬機更方便和有效地工作,包括共享資料夾、共享剪貼簿和拖放。
共享資料夾
共享資料夾允許您通過網絡在主機操作系統和虛擬機操作系統之間方便地交換文件。您可以使用虛擬化應用程序在主機操作系統中輕鬆創建共享資料夾,然後在主機系統和虛擬系統之間傳輸文件。使用共享資料夾功能比使用操作系統的內建工具手動創建共享資料夾更方便。
VirtualBox Guest Additions和VMware Tools必須安裝在客戶操作系統上才能啟用共享文件夾。
在Oracle VirtualBox、VMware Workstation、VMware Player和VMware Fusion(Pro)中提供了共享文件夾功能。這個功能不適用於在ESXi主機上運行的虛擬機 – 您必須使用操作系統的內置工具在物理或虛擬機器上手動創建共享文件夾。
共享剪貼板
共享剪貼板允許您從本地或主機機器複製文本、圖像數據和文件並將它們粘貼到虛擬機器中(反之亦然)。在這個VirtualBox vs VMware比較中的所有解決方案都支持共享剪貼板,但是ESXi有所不同。
如果您使用VMware Workstation或VMware遠程控制台連接到虛擬機器,VMware ESXi對共享剪貼板有嚴格的限制。這是為了提高安全性。您只能複製和粘貼有限大小的文本(以KB為單位)。
默認情況下,對於存儲在ESXi主機上的虛擬機器,共享剪貼板是禁用的。您必須編輯虛擬機的VMX配置文件中的兩行來啟用此功能:
isolation.tools.copy.disable false
isolation.tools.paste.disable false
拖放
拖放是一個功能,允許您使用鼠標將文件從虛擬機器的窗口移動到主機操作系統的窗口(或桌面機器的窗口)。
除了VMware ESXi之外,所有VirtualBox和VMware hypervisors都支持拖放功能。
VirtualBox Guest Additions vs VMware Tools
VirtualBox Guest Additions 是一組驅動程序和系統應用程序,用於客戶操作系統,可用於改善虛擬機性能和可用性。Guest Additions可用於所有支持的客戶操作系統,因為VBoxGuestAdditions.iso文件位於安裝VirtualBox的目錄中。
要安裝VirtualBox Guest Additions,您應該將ISO映像掛載到虛擬機的虛擬DVD驅動器上並運行安裝程序。不同版本的ISO映像可以從VirtualBox網站下載。您可以使用命令行包管理器從軟件存儲庫在Linux系統上安裝Guest Additions。
VMware Tools 是運行在VMware平台上的虛擬機的VirtualBox Guest Additions的類比物。為了為每個支持的客戶操作系統安裝VMware Tools,提供了單獨的ISO映像(windows.iso,linux.iso,solaris.iso等),這些映像位於應用程序(VMware Workstation,Player,Fusion)的目錄中。至於ESXi,VMware Tools可以位於/usr/lib/vmware/isoimages/目錄中。
如果找不到適當的ISO映像,可以手動從VMware官網下載VMware Tools安裝程序。或者,您可以使用命令行包管理器從軟件倉庫為您的Linux客戶端操作系統安裝open-vm-tools和open-vm-tools-desktop。
安裝VirtualBox Guest Additions或VMware Tools後,以下功能將變得可用:共享文件夾、拖放、共享剪貼板、集成鼠標指針、自動登錄、更好的視頻輸出、時間同步等。
VirtualBox無縫模式與VMware Unity
VirtualBox無縫模式和VMware Unity是允許您在不顯示VM窗口的情況下顯示客戶端應用程序窗口的功能,類似於主機應用程序窗口的顯示方式。使用不帶VM窗口的客戶端應用程序使工作區更加集成和方便。例如,您可以在Windows VM上運行Photoshop,啟用VirtualBox無縫模式/VMware Unity模式,然後以與操作Linux主機OS的常規窗口相同的方式操作Photoshop窗口。
通常,在客戶端OS上運行的客戶端應用程序的窗口顯示在與VM相同的窗口中。當您啟用無縫或Unity模式時,VM窗口消失,在客戶端OS上運行的程序看起來像在主機OS上運行的程序。安全性不會被破壞,因為程序繼續在隔離的VM上運行。
VirtualBox 支援 Linux、Windows 及 Solaris 客體的無縫模式(macOS 不支援)。要使用 無縫模式,您需要安裝 VirtualBox 客體附加元件。
VMware 支援 Windows 作業系統的 Unity 模式(不幸的是,VMware Workstation 12 中已移除了 Linux 主機和客體的 Unity 模式支援)。Unity 模式不支援 macOS 客體。要使用 Unity 模式,需要安裝 VMware 工具。此模式不能用於運行在 ESXi 主機上的遠端 VM。
VM 快照
快照允許您保存 VM 在某個特定時刻的狀態。您可以創建多個快照,然後將 VM 回滾到其中一個快照以恢復 VM 狀態。在拍攝快照時,VM 可以處於關機或開機狀態。當拍攝運行中的 VM 快照時,虛擬記憶體也會保存到一個文件中。在 VM 快照功能方面,VMware 和 VirtualBox 之間沒有顯著差異,因為兩家廠商的產品(除了 VMware Player)都支援 VM 快照。
當您拍攝快照時,會創建一個差異虛擬磁碟;從那個特定時刻開始,所有變更都會寫入該差異虛擬磁碟。當您拍攝下一個快照時,會創建另一個差異虛擬磁碟。您可以拍攝多個快照,但請注意,快照會降低 VM 的性能。
當刪除一個快照時,差異虛擬磁碟會與父虛擬磁碟合併(前一個快照的差異虛擬磁碟也可以被視為父虛擬磁碟)。
快照對於測試很有用。例如,如果您不確定應用程式在安裝後是否能正常運作,請在安裝應用程式之前拍攝一個快照。這樣,如果出了問題,您可以將虛擬機器狀態恢復到快照時的狀態。要從快照中還原,虛擬機器不能運行。
快照不是備份,建議您使用專用的vSphere備份軟體來備份在ESXi伺服器上運行的虛擬機器。
USB裝置支援
有了USB裝置支援,您可以將USB裝置連接到主機,然後將USB裝置連接到客戶機。此功能對於連接USB硬碟驅動器、網路攝影機、Wi-Fi適配器、印表機、掃描儀等到虛擬機器非常有用。必須啟用虛擬USB控制器才能使用此功能。
VirtualBox和VMware平台(包括VMware Player、Workstation、Fusion、ESXi)支援將USB裝置連接到虛擬機器。您可以使用虛擬機器選項來連接/中斷主機與客戶機之間的可移動裝置。
VirtualBox 擴展套件(非開源)必須安裝在 VirtualBox 中以支援 USB 2.0/3.0,並且需要安裝 VirtualBox Guest Additions。VirtualBox 在未安裝擴展套件的情況下僅支援 USB 1.1。VMware 在默認情況下提供 USB 設備支援(包括 USB 3.0),並且必須在虛擬機上安裝 VMware Tools。
3D 圖形支援
一些軟體,例如用於創建和渲染 3D 模型的應用程式,可能需要 3D 加速支援。
VirtualBox 對 3D 圖形的支援有限(最高達到 OpenGL 3.0、Direct3D 9)。必須在虛擬機設置中手動啟用 3D 加速。最多支援 128 MB 的視訊記憶體。主機機器上必須安裝圖形驅動程序,並且在客戶機上必須安裝 VirtualBox Guest Additions。
VMware 提供 DirectX 11 和 OpenGL 4.3 支援的 3D 圖形,適用於 Player、Workstation、Fusion 和 ESXi。對於最新版本的 Workstation 虛擬機,默認已啟用 3D 加速。需要安裝 VMware Tools。最多可設置 2 GB 的視訊記憶體。主機作業系統必須安裝圖形驅動程序並啟用硬體加速。
通常情況下,VMware 為客戶虛擬機提供更好的 3D 圖形支援。
虛擬磁碟格式
虛擬磁碟像其他虛擬硬體一樣進行模擬。虛擬磁碟檔案代表著專用的容器,用於保存數據,並連接到虛擬機。
VirtualBox 支援以下虛擬磁碟格式:
- VDI(虛擬磁碟映像)是虛擬磁碟的一種原生VirtualBox格式。在VirtualBox中建立新的虛擬機器時,默認使用此格式。
- VMDK(虛擬機器磁碟)是由VMware開發的一種虛擬磁碟格式,用於VMware虛擬機器。其他供應商也使用這種格式。
- VHD(虛擬硬碟)是由Microsoft為Hyper-V開發的一種虛擬磁碟格式。
- HDD是Parallels Desktop 2格式的虛擬磁碟映像(在macOS上流行)。
VMware僅支持虛擬機器的VMDK格式的虛擬磁碟。
VirtualBox、VMware Workstation、Fusion(Pro)和ESXi支持使用OVF模板導入和導出虛擬機器。此功能可用於跨平台導出/導入虛擬機器。
請注意,我們的VMware vs VirtualBox比較的解決方案都不支持Microsoft Hyper-V使用的VHDX格式。
虛擬磁碟分配類型
在創建虛擬磁碟時,有兩種磁碟分配類型可供使用:
- 預分配或厚配置。您可以在創建時預先分配整個空間。例如,如果您創建一個10 GB的虛擬磁碟,那麼虛擬磁碟文件在創建後會立即佔用10 GB的存儲空間。在VirtualBox中,此類磁碟稱為固定磁碟,而在VMware中,這些被稱為厚配置磁碟。
- 動態分配或薄配置。您可以創建一個動態分配的虛擬磁碟文件,該文件在數據寫入磁盤時可以擴展。這種類型的虛擬磁碟在創建時非常小,並且隨著數據被寫入新塊,逐漸增長直到磁盤大小達到最大配置大小。這類磁盤在VirtualBox中被稱為動態分配磁盤,而在VMware中被稱為薄配置磁盤。
閱讀關於厚配置和薄配置的博客文章以獲取更多信息。
請注意,您可能需要在刪除厚配置(動態分配虛擬磁碟)上的文件後執行空間回收,以使虛擬磁碟文件變小。VMware ESXi在VMFS 6文件系統中提供自動空間回收。至於在VirtualBox、VMware Workstation、Player和Fusion上運行的虛擬機器的虛擬磁碟,必須使用相應的工具和命令手動回收薄配置磁碟上的空間。
想法
在VMFS上使用薄配置磁碟時,VMware ESXi是領先者。自動空間回收使存儲空間的使用效率最高。
支持鏈接克隆
A linked clone is a virtual machine that has a virtual disk linked to another virtual disk of another VM. It only saves data that differs from the data stored on the disk of a linked (parent) VM. For example, you can create a basic VM with updates and software installed on it. Then, you can create multiple linked clones and install different specialized software on each linked clone that would be used for each appropriate purpose.
這種方法可以幫助您節省存儲空間,因為僅將差異寫入鏈接克隆的虛擬磁盤。這也可以幫助您節省在創建克隆時所花費的時間。在創建鏈接克隆時,基本VM會自動創建快照,然後將其用作鏈接克隆的基礎。鏈接克隆必須始終可以訪問父VM。
VirtualBox、VMware Workstation和VMware Fusion Pro支持鏈接克隆。至於VMware ESXi,您可以通過為PowerCLI編寫特殊腳本來手動創建鏈接克隆。VMware還為VMware Horizon VDI(與vSphere配合使用的虛擬桌面基礎設施解決方案)提供了鏈接克隆。
虛擬網絡
網絡模式指定了VM如何與主機通信,就像物理網絡中使用交換機、路由器和電纜一樣。VirtualBox和VMware比較的這一部分涵蓋了每個虛擬化解決方案支持的網絡模式。
VirtualBox網絡模式
VirtualBox網絡設置提供以下模式:
- 未連接。在此模式下,為VM啟用虛擬網絡適配器,但模擬了一根未插入的網絡電纜。因此,VM沒有網絡連接。
- NAT(網路位址轉換)是新 VM 的預設網路模式。此模式允許您在虛擬路由器後啟用 VM 的私人網路,該虛擬路由器已整合到 VirtualBox 引擎中。客戶機可以訪問主機機器以及主機機器連接的其他主機的網路。客戶機還可以訪問外部主機並具有互聯網訪問權限(就像主機機器一樣)。 VM 無法從主機機器和外部網路訪問(您可以手動配置端口轉發來解決此問題)。集成的 DHCP 服務器用於為 VM 網路適配器分配 IP 地址。
- NAT Network(服務)比 NAT 更高級,允許位於 NAT Network(在 NAT 後面)中的 VM 透過網路相互訪問。要配置 NAT Network,您應該通過轉到 File > Preferences > Network 來創建一個虛擬網路。如果您想要從主機機器啟用 VM 的網路訪問,則應該手動配置端口轉發。
- 橋接適配器。在此模式下,VM 連接到與主機機器相同的網路。在這種情況下,VM 看起來像是通過網路電纜連接到與主機機器相同的交換機的物理機器。對於主機機器的有線和無線網路適配器,使用不同的橋接技術。
- 內部網路 允許 VM 之間相互連接。在這種情況下,網路方案看起來好像虛擬機器連接到交換機,而交換機未連接到任何路由器或物理機器。
- 主機網路ONLY adapter。虛擬機可以與其他虛擬機以及主機機器進行溝通,同時主機可以透過網路訪問虛擬機。VirtualBox主機僅網路adapter創建在主機OS中。
以下是VirtualBox虛擬機網路模式的比較表:
VM → Host |
VM ← Host |
VM1 ← → VM2 |
VM → LAN* |
VM ← LAN* |
主機OS中的虛擬網路adapter |
NAT
+
埠口轉發
–
+
埠口轉發
–
NAT網路
+
埠口轉發
+
+
埠口轉發
–
橋接adapter
+
+
+
+
+
–
內部網路
–
–
+
–
–
–
主機僅網路adapter
+
+
+
–
–
+
*LAN 是主機連接的實體區域網路。
VMware 網路模式
VMware 提供以下虛擬機網路模式:NAT、橋接和僅主機。這些模式適用於 VMware Player、Workstation、Fusion(Player)和 Fusion Pro。VMware Workstation 和 Fusion Pro 包含虛擬網路編輯器,而 Player 和 Fusion Player 則不包含。
- NAT。在這種模式下,虛擬機器連接到NAT後面的私有網路。VM能夠彼此通信,與主機機器以及主機機器能夠在VM NAT網路外通信的其他主機通信。主機機器可以與VM通信,但是NAT網路之外的其他主機無法以這種方式與這些VM通信。NAT網路的默認名稱是VMNet8。當添加NAT網路時,主機操作系統會添加一個虛擬網路適配器。VMware產品使用內置虛擬路由器和DHCP服務器來建立VM的NAT網路連接。
VMware VM的NAT網路工作原理與VirtualBox中的NAT網路模式類似。但是,您不需要手動添加端口轉發規則(除非您需要從物理局域網上的任何主機連接到VM)。
- 橋接。此模式使您的虛擬機器(VM)與物理網路中的任何其他機器類似地工作。其工作原理與VirtualBox的橋接連接的工作原理類似。橋接網路的默認名稱為VMNet0。
- 僅主機。在此模式下,VM連接到一個孤立的網路,可以互相通信以及與主機通信。連接方案看起來好像VM和主機連接到同一個交換機,而該交換機未連接到任何路由器(就像在VirtualBox中一樣)。在主機操作系統中創建一個虛擬網路適配器,並且該網路的默認名稱為VMNet1。VMware產品中包含一個虛擬DHCP服務器,以便為連接在僅主機模式下的VM網路適配器分配IP地址。
您可以在虛擬網路編輯器中添加、編輯和刪除虛擬網路(包括網路地址、路由器的IP地址、DHCP服務器的設置等)。VM網路的最大數量為20個(VMNet0到VMNet19)。
以下是VMware產品的網路模式比較(除了下面將介紹的ESXi):
VM → 主機 | VM ← 主機 | VM1 ← → VM2 | VM → LAN* | VM ← LAN* | 主機作業系統中的虛擬網路介面 | |
網路地址轉換 (NAT) | + | + | + | + | 端口轉發 | + |
橋接 | + | + | + | + | + | – |
僅主機 | + | + | + | – | – | + |
*LAN 是主機連接的實體本地區域網路。
VMware ESXi 網路
VMware ESXi 包含了稍微不同的工具來連接虛擬機器到網路。預設的虛擬機器網路連接方法類似於橋接模式。虛擬機器的虛擬網路介面連接到默認 vSwitch 的一個端口,該 vSwitch 通過 ESXi 主機的物理網路介面控制器 (NIC) 連接到物理交換機。可以在 vSwitch 上創建多個端口組。您可以為 VMware 虛擬交換機的不同端口組設置 VLAN ID,然後(使用 L2 交換機)將它們連接到物理或虛擬路由器。
連接到這些端口的具有虛擬網路介面的虛擬機器連接到相應的網路。VMware 提供 NSX 來虛擬路由器以及構建軟體定義網路 (SDN)。每個虛擬機器的最大虛擬網路介面數為 4 個 (VirtualBox) 和 10 個 (VMware)。
VMware ESXi具有一個強大的功能,稱為分散式虛擬交換機(DVS),它允許您在vCenter中配置一次後,將虛擬交換機的相同配置應用於多個ESXi主機。ESXi還支持NIC隊列技術,用於連接聚合和提高網絡的容錯能力。
VMware vSphere還提供VMware NSX,這是一個擴展的專業解決方案,用於構建複雜的虛擬網絡。
想法
在這次VirtualBox與VMware網絡比較中,有三個主要觀點值得強調:
- 至於型號2虛擬機監視器,Oracle VirtualBox、VMware Workstation和VMware Fusion Pro具有廣泛的網絡選項和虛擬網絡編輯器。
- 至於VMware Player與VirtualBox的比較,VMware Player不允許您編輯虛擬網絡,而VirtualBox的功能比Player和Fusion Player更好。
- VMware ESXi作為VMware vSphere的主要組件,需要手動配置虛擬網絡並提供虛擬交換機功能(與VirtualBox、VMware Workstation和Fusion的功能不同)。您可以在vSphere中部署VMware NSX,這是一個專業的企業級解決方案,用於在數據中心創建複雜的虛擬網絡。
共享存儲支援
共享存儲允許您擁有更可擴展的虛擬基礎設施,並將 VM 文件存儲在外部存儲(在運行虛擬機的主機之外)。就 VMware 和 VirtualBox 共享存儲而言,用於共享存儲的協議包括 iSCSI、NFS 和 SMB。光纖通道是部署具有存儲區域網絡的共享存儲的高級專用技術。
iSCSI 存儲
iSCSI 是一種常用的網絡協議,用於以塊級訪問共享存儲。通過使用以太網絡將存儲附加為遠程磁盤,iSCSI 很方便。客戶操作系統與此類存儲的工作方式與普通塊存儲相同。提供共享存儲的服務器稱為 iSCSI 目標,而啟動與服務器建立連接的客戶端稱為 iSCSI 發起者。當需要在主機之間遷移 VM 時,將共享 iSCSI 存儲用作 VM 的虛擬磁盤尤其有用。 VM 在遷移後使用相同的共享 iSCSI 目標存儲虛擬磁盤,但會消耗另一台主機的計算資源。
- VirtualBox 包含內置的 iSCSI 發起者。必須使用命令行將 iSCSI 目標連接到 VirtualBox 中的 VM。將 iSCSI 目標附加到 VM 後,內部 VM 文件將直接存儲在 iSCSI 磁盤上。在這種情況下不會創建虛擬磁盤文件。
- VMware ESXi支援將 iSCSI 目標附加,以用作存儲 VM 檔案(包括虛擬磁碟)的數據存儲庫。ESXi 中存在 iSCSI 初始程序。與 VirtualBox 的主要區別在於,VirtualBox 虛擬機僅直接使用 iSCSI 目標而不創建虛擬磁碟,而 ESXi 使用 iSCSI 目標作為存儲 VM 的虛擬磁碟檔案的數據存儲庫。
建議您為連接到 ESXi 主機的 iSCSI 目標配置專用的 ESXi 網路。您可以使用原始設備映射(RDM)將 VMware VM 的數據直接存儲到 iSCSI 磁碟上,繞過虛擬磁碟檔案。但是,請注意,在這種情況下,VM 的性能並未改善。
- VMware Workstation、Player 和 Fusion(Pro 和 Player)不支援 iSCSI,也沒有 iSCSI 初始程序。將虛擬磁碟存儲在 iSCSI 存儲中的唯一方法是通過使用主機操作系統的內置 iSCSI 初始程序(如果 OS 中存在此初始程序)連接 iSCSI 目標。然後,您可以使用掛載的磁碟來存儲 VM 的虛擬磁碟檔案。
NFS、SMB 和 Fibre Channel
NFS, SMB, 以及光纖通道
VirtualBox 亦支援 NFS 和 SMB 共用儲存,而 VMware ESXi 支援 NFS 和光纖通道 共用儲存。NFS 和 SMB 是檔案層級存取協定。值得注意的是,SMB 與 CIFS 並非相同.
思考
我們現在可以總結 VMware 和 VirtualBox 共用儲存能力的差異:
- VMware ESXi 支援最廣泛的共用儲存,包括光纖通道、iSCSI 和 NFS。這些共用儲存類型最適合大型生產環境。
- 如果我們比較 VMware Workstation、VMware Player 和 VMware Fusion 與 VirtualBox,VirtualBox 因為內建的 iSCSI 啟動器而有更好的共用儲存支援。內建的 VirtualBox iSCSI 啟動器允許您將 iSCSI 目標直接連接到 VM 作為虛擬磁碟,而無需在共用儲存上建立虛擬磁碟檔案。
- VMware Workstation、Player、Fusion(Pro 和 Player)和 VirtualBox 可以將 VM 檔案儲存在使用主機操作系統能力的共用儲存上。在這種情況下,可以使用 iSCSI、SMB 和 NFS 協定。
VM 即時遷移 – VirtualBox Teleporting 與 VMware vMotion
當您擁有多個主機與虛擬機器時,可能需要在虛擬機器運行時將其從一個主機遷移到另一個主機。使用的技術包括VirtualBox中的Teleporting和VMware中的vMotion。
VirtualBox Teleporting
VirtualBox支援在虛擬機器運行時,透過TCP/IP網絡將其從一個VirtualBox主機遷移到另一個主機。此功能在VirtualBox中稱為Teleporting。必須使用共享儲存(iSCSI、NFS或SMB)作為虛擬磁碟,並且必須由兩個VirtualBox主機存取。
A virtual disk is not migrated from one host to another. Rather, the state of the VM is transferred – with minimal downtime if the VM is running. As a result, the VM consumes the computing resources (CPU, memory) of the target host but not the resources of the source host. A VM can be migrated between hosts regardless of the host OS. For example, a VM can be migrated from a Linux host (source) to a Windows host (target).
使用VirtualBox Teleporting的要求包括:
- 用於儲存虛擬機器檔案的共享儲存。
- 在目標主機上配置VirtualBox虛擬機器。必須創建一個硬體設置與源虛擬機器硬體設置完全相同的虛擬機器(虛擬記憶體的數量必須相同)。
- 虛擬機器名稱可以不同。
- A command line interface (VBoxManage) must be used to perform VM Teleportation between VirtualBox hosts.
- 建議在VirtualBox主機上使用相同系列的處理器以獲得最大相容性。
- 虛擬機器不得有快照。
VMware vMotion
VMware提供vMotion功能,用於在vSphere中透過網絡在ESXi主機之間遷移虛擬機器,並且在虛擬機器運行時不會有停機時間。虛擬機器的負載(CPU和記憶體)會無縫轉移。因此,虛擬機器的服務和應用程式不會中斷。當使用vMotion時,虛擬磁碟不會遷移。對於將虛擬磁碟從一個數據存儲遷移到另一個數據存儲,使用的是Storage vMotion。
主要要求包括:
- VMware vCenter Server。
- 共享資料儲存,可供兩台ESXi主機存取
- ESXi主機上的同一系列處理器
與VirtualBox的Teleporting不同,使用vMotion進行VMware VM的即時遷移時,您無需創建新的空白VM。建議您配置專用網絡用於VM遷移與vMotion。您可以通過VMware vSphere Client的圖形用戶界面或PowerCLI執行遷移。
注意:如果ESXi主機上的處理器屬於同一供應商的不同代,您可以使用VMware EVC模式。
VMware Player、Workstation和Fusion不支援任何VM即時遷移功能,如vMotion。您只能手動從一個主機複製已關機VM的文件到另一個主機。
思考
在VMware與VirtualBox的比較中,VMware ESXi在VMware vSphere中具有vMotion功能,在VM即時遷移類別中勝出。VMware vMotion提供了比VirtualBox Teleporting更先進和靈活的即時遷移功能,包括:
- 帶有快照的VM遷移
- 同時遷移多個VM
- 長距離遷移
VMware vSphere with vMotion between ESXi hosts是組織和大型企業環境的最佳選擇。
集中式遠程管理界面
遠程和集中管理虛擬化服務器(主機)非常重要,尤其是如果您必須管理在多個主機上運行的虛擬機。在本節中,我們將解釋VMware和VirtualBox在遠程和集中管理虛擬基礎架構方面的界面差異。
- PhpVirtualBox是一個類似於VirtualBox標準界面的網絡界面。它允許您通過網絡瀏覽器管理遠程VirtualBox實例。PhpVirtualBox是用PHP編寫的,是一個免費的開源解決方案。PhpVirtualBox和VirtualBox不必安裝在同一台機器上,因為它們之間的通信通過網絡進行。因此,您可以部署PhpVirtualBox來管理安裝在不同主機上的多個VirtualBox實例(即使主機操作系統沒有GUI)。這是一個簡單而輕量級的用戶界面,用於管理VirtualBox主機上的虛擬機。
VirtualBox遠程桌面擴展(VRDE)可以遠程顯示虛擬機,允許您從另一台計算機管理此虛擬機。Oracle VirtualBox遠程顯示協議(VRDP)是Microsoft遠程桌面協議(RDP)的後向兼容擴展。您必須安裝VirtualBox擴展包並在每個虛擬機基礎上啟用VRDP服務器才能使用此功能。
- VMware 提供 vCenter Server 用於集中管理 ESXi 主機和其他 vSphere 組件。您可以透過 VMware vSphere Client 連接到 vCenter,它具有用戶友好的 GUI。VMware vSphere Web Client(基於 flash)和獨立的 VMware vSphere Client(即 Windows 應用程式)已不再使用。如果您沒有 vCenter Server,您可以透過網頁瀏覽器中的 VMware Host Client 管理獨立的 ESXi 主機。
VMware 還提供 vSphere PowerCLI,這是一個用於管理 ESXi 主機和具有 vCenter 的 vSphere 的命令行界面 (CLI)。PowerCLI 是為 Windows PowerShell 收集的 cmdlet 集合。
- VMware Workstation 和 Player 並未提供如 VirtualBox 或 VMware vSphere 的遠端和集中管理功能。在遠端管理方面,我們唯一需要提及的是 配置 VMware Workstation Server 功能,這允許您與安裝了 VMware Workstation 的主機共享正在運行的 VM,並使用 VMware Workstation 或 VMware Fusion Pro 從另一台機器連接到該主機。
想法
我們可以得出結論,VMware vCenter 為 VMware vSphere 虛擬化環境提供更先進和全面的管理能力:
- VMware vCenter 提供比 PhpVirtualBox 更多的虛擬基礎設施管理選項。
- 雖然 PhpVirtualBox 適合小型和中型虛擬環境,但 VMware vCenter 被採用來管理任何大小的環境,包括大型和複雜的虛擬環境。
VM 加密支援。
VirtualBox 內建加密功能,允許您加密 VM 的虛擬磁碟。配置 VM 加密很簡單:選擇加密密碼(XTS-AES-256 或 XTS-AES-128),並在 VM 設置中輸入密碼。VM 磁碟加密可能需要一些時間,具體取決於虛擬磁碟的大小。啟動已加密 VM 時,需要輸入密碼。對於客戶操作系統來說,虛擬磁碟加密是透明的(客戶操作系統無法看到 VM 已加密)。稍後,如果需要,您可以在 VM 選項中禁用加密。要啟用 VM 加密選項,必須安裝 VirtualBox 擴展包。
VMware 也提供 VM 加密/限制選項,每個 VMware 產品的選項都不同。與 VirtualBox 類似,VMware VM 的虛擬磁碟可以進行加密。如果為 VM 設置了到期日期,則用戶可以在到期日期之前使用 VM。此後,管理員必須輸入用於 VM 加密的密碼,以重置或延長 VM 限制選項。
- VMWare Player。使用 VMware Player 無法加密 VM,但 VMware Player 可以播放已加密的 VM(在這種情況下需要商業許可證)。
- VMware Workstation 允許您配置 VM 加密,您可以啟用或禁用加密,編輯已加密或受限制的 VM,以及為加密 VM 設置到期日期。所有加密和限制功能都可用。虛擬磁碟文件的加密使用 AES-256 加密算法。
- VMware Fusion Player。您可以啟用和停用尚未加密的虛擬機的加密。唯一可以進行的更改是密碼 – 如果虛擬機以前已使用其他 VMware 產品進行加密/限制(其他加密和限制設置對於 VMware Fusion 是唯讀的)。如果這些選項不足夠,請考慮使用 VMware Fusion Pro。
- VMware Fusion Pro。您可以為已經啟用限制的虛擬機啟用、停用和編輯加密設置。通過使用 VMware Fusion Pro,所有加密和限制選項都可用於虛擬機。
- VMware ESXi。如果您在 vSphere 中使用 ESXi 主機與 vCenter,則為虛擬機和 VM 文件提供更多的加密選項。您可以加密 VM 文件(VMDK、NVRAM、VSWP、VMSN)或虛擬磁盤(VMDK)。用於創建數據加密密鑰(DEK)的算法為 XTS-AES-256,用於創建密鑰加密密鑰(KEK)的算法為 AES-256。
A Key Management Service (KMS) is used to provide keys for vCenter. VMware vSphere client must be used to encrypt particular VM files. Log files, VM configuration files (VMX, VMSD), and virtual disk descriptor files are not encrypted. Network communication used to manage and transfer VMs is encrypted for ESXi hosts in VMware vSphere.
思考
VMware 為保護 ESXi 和 VMware vSphere 中的虛擬機提供了更全面的加密選項。除了在 VMware 環境中加密 VM 文件外,還支持通信過程中的數據加密。
記憶體平衡
記憶體超額認購(又稱為記憶體氣球化)是一種記憶體回收技術,它允許主機從某些運行中的虛擬機(VM)中回收未使用的記憶體,並將這些記憶體重新分配給需要更多記憶體的運行中的虛擬機。當主機的實體記憶體即將耗盡時,此功能會被啟用。主機不能將從虛擬機回收的記憶體用於其自身的任務。
A hypervisor creates a special driver-locked ballooning process, which simulates the consumption of a part of the VM memory. This process prevents the use of this part of memory by other guest applications, while a hypervisor can redistribute the ballooned memory to other VMs.
例如,如果一個主機有16 GB的實體記憶體,記憶體超額認購允許你運行3個虛擬機,這些虛擬機在虛擬機設定中配置為每個虛擬機使用6 GB的記憶體(3×6=18 > 16)。如果一個客戶端虛擬機的記憶體被氣球化過程填滿,並且需要額外的記憶體,客戶端操作系統會使用交換檔案。
- VirtualBox支援記憶體氣球化。此功能只能透過命令列中的VBoxManage進行配置。為了使用記憶體氣球化,必須在虛擬機上安裝VirtualBox Guest Additions,因為需要Guest Additions中的一個特殊驅動程式。記憶體氣球化僅支援64位元主機,並且不支援macOS主機。
- VMware為VMware Workstation、Fusion和ESXi提供記憶體氣球化。與VirtualBox不同,此功能可以透過圖形用戶界面(GUI)進行配置。VMware Tools是必需的,因為它們包含一個特殊的vmmemctl.sys氣球驅動程式。
思考
在托管虛擬化技術中,VMware和VirtualBox在記憶體充氣方面的區別是微小的。在VirtualBox和VMware Workstation中,VM記憶體充氣的實現方式相似:虛擬機中使用一個虛擬設備,該虛擬設備與虛擬機監控程序進行通信,根據需要分配和釋放記憶體。然而,VMware ESXi提供了更先進的VM記憶體管理功能。
ESXi中的透明頁面共享、記憶體壓縮和記憶體去重是先進的記憶體管理功能,可以更好地優化虛擬環境中物理內存的使用。
集群技術
不幸的是,VirtualBox目前不提供集群功能。
VMware vSphere通過使用ESXi服務器和vCenter在vSphere中提供了部署兩種類型的集群的能力:
- 高可用性(HA)集群。在ESXi主機硬件故障的情況下,HA集群可以執行虛擬機故障轉移,同時確保最小的停機時間。
- 分佈式資源調度器(DRS)集群。DRS集群可以合理利用虛擬機的硬件資源,並將虛擬機從過載的ESXi主機遷移到具有空閒計算資源的主機中。
VMware 集群在 VMware vSphere 中也提供了故障容錯,這是 HA 集群的一個很好的功能,可以在硬件故障時實現 VM 的故障切換,而無需停機。
VMware Player、Workstation 和 Fusion 不支持集群,與 VirtualBox 類似。
為開發人員提供 API
VirtualBox 和 VMware 虛擬化解決方案提供了開發人員 API,以自動化和擴展其功能。VirtualBox 和 VMware 解決方案的 API 可以在 C++、Java 和 Python 中使用。VirtualBox、VMware Workstation 和 VMware vSphere 的 API 是全面的,可以用於自動化 VM 管理任務,如創建和克隆 VM、訪問和修改虛擬機設置。
下面您可以找到 VMware 和 VirtualBox API 功能的差異。
- VirtualBox 為開發與 VirtualBox 交互的應用程序提供了強大的 API(應用程序編程接口);同時也使得創建應用程序的集成更加容易和便捷。Oracle 還提供 VirtualBox SDK(軟件開發工具包)。
VMware 為開發人員提供了不同的 API 和 SDK,包括整合開發和測試工具(如 Eclipse)的能力。您可以使用 Eclipse 插件為 VMware Workstation 設置 Eclipse 集成虛擬調試器環境。VMware 還提供了 VMware Studio – 一個用於構建 vApps 和虛擬設備的免費開發工具。 - VMware 提供了多種 API 和 SDK 供開發者使用,其中包括整合開發和測試工具的能力,例如 Eclipse。您可以使用 Eclipse 插件來設置適用於 VMware Workstation 的 Eclipse 集成虛擬調試器環境。VMware 還提供了 VMware Studio —— 一個免費的開發工具,用於構建 vApps 和虛擬設備。
VMware vSphere 強大的 API 可用於自動化管理底層 vSphere 基礎架構,包括創建和修改數據存儲、虛擬網絡和虛擬交換機。
總結
無論是 VirtualBox 還是 VMware 都提供了高性能和高可靠性。最終的選擇取決於您。評估哪些功能和優勢對您的基礎架構至關重要,並選擇最合適的產品。如果您想了解更多關於虛擬化解決方案的信息,您還可以閱讀有關VirtualBox vs. Hyper-V的比較。
請記住,虛擬機應該通過備份和/或複製來保護,以避免數據丟失並確保不間斷的工作流程和可用性。NAKIVO Backup & Replication 是一個專為 ESXi 虛擬化環境設計的數據保護解決方案,以確保在任何情況下都能快速有效地進行備份和恢復。
Source:
https://www.nakivo.com/blog/vmware-vs-virtual-box-comprehensive-comparison/