VDI管理員應該掌握的四種虛擬磁盤格式
虛擬桌面項目依賴磁盤鏡像文件來存儲數據,市場上存在多種不同的虛擬磁盤鏡像文件格式,它們的差異很難區分。
磁盤鏡像文件存儲硬盤內的所有內容。它們用于各種不同的虛擬化軟件,格式也各不相同,而且跟各自的原開發廠商兼容性***。例如,VMDK虛擬磁盤格式與VMware vSphere和View集成。
這也就是說,各種不同虛擬化產品的虛擬磁盤鏡像模式及其發展方向各有不同。因此,我們需要了解它們的主要區別。下面是最常見的幾種類型的綱要、其相關的軟件和需要了解的限制。
VMware VMDK
VMware創建了VMDK格式,作為其服務器和桌面虛擬化產品的主流磁盤鏡像文件格式。最初就是作為開放文件格式發布的,允許其它軟件使用VMDK的處理程序。例如Oracle的VirtualBox就可以讀取VMDK卷。
VMDK卷支持鏡像、精簡配置(指的是文件可以根據需求而自動擴展,直到創建時指定的***卷容量)以及高級功能,例如支持64K數據塊。這意味著如果某個大扇區驅動器,如4K一個扇區的,在VMDK的文件系統內設置為非零時,該文件只會占用一個64K的數據塊來代表這個簇。(我接下來將提到的VirtualBox VDI簇,使用1MB大小的頁面,所以4K的簇將會占用整個1MB的空間來表示。)
所以,VMDK在空間的使用上效率更高。對于虛擬桌面管理員,這意味著VMDK文件可以為某些客戶端提供精簡卷,比其它的虛擬磁盤鏡像文件格式避免了浪費。
VMDK規格現在已經到第五代。VMware以“技術備忘錄”的方式和其它的開發者文檔一起發布了其規格,或者也可以在線發送規格請求。由于供應商在業界的廣泛接受度,其它的虛擬化產品識別VMDK磁盤鏡像文件變得很普遍,甚至有部分產品也是基于該格式工作。
Oracle VirtualBox VDI
VDI(Virtual Disk Image)是Oracle VM VirtualBox的默認虛擬磁盤格式。該格式支持很多在其它虛擬化產品的磁盤鏡像文件中具備的功能,例如快照和精簡卷。
您也可以在VirtualBox內使用別的磁盤文件格式,但是在對其進行維護之前需要先轉化為VDI格式——我曾經見過轉過過程失敗的例子。***的辦法是創建VirtualBox VM,同時掛載需要轉化的鏡像文件和一個全新的VDI格式鏡像,然后通過磁盤拷貝工具把內容全拷過來。
很多虛擬磁盤鏡像文件格式可以轉化為VDI格式。***不要使用它來為桌面客戶端準備鏡像,除非也使用VirtualBox作為客戶端或者您已經驗證過客戶端可以無縫地使用VDI磁盤鏡像格式。
雖然這種格式在技術上是公開的,但很難找到其規格的詳細文檔,只有VirtualBox的源代碼是公開的。在VirtualBox社區論壇公告內有一個非常詳細的技術細節描述,但是從2008年之后就沒有更新過。
微軟VHD
Connectix創建了VHD格式用于其虛擬PC產品,之后被微軟認可并廣泛用于其Virtual Server和Hyper-V虛擬平臺中。VHD格式的規格也是公開的,任何人都可以部署。和其它的虛擬磁盤格式類似,VHD是位于宿主機文件系統內的一個文件。該磁盤鏡像文件支持的功能包括固定和動態的磁盤大小,差分復制和快照。
在使用Windows OS時,VHD也有一些獨有的優勢。其中之一是較新的Windows版本的引導程序都可以配置為直接從VHD文件啟動。這也就是說指定的系統可以啟動多個獨立存儲的VHD Windows OS,相應的,可以通過其它的Windows實例來進行操作。
VHD還可以直接在Windows中掛載并通過微軟的磁盤管理器工具直接指定驅動器盤符,不需要其它工具支持就能訪問VHD磁盤鏡像文件內的內容。這也就是說桌面虛擬化管理員可以部署VHD作為***的Windows OS版本(Windows 7及其***結果),并使用VHD的各種功能,而不僅僅是作為虛機。
記住一點,VHD不能大于2TB,這對于現在3TB及更大的磁盤已經在最終用戶端使用而言,是個問題。微軟在Windows Server 2012中發布的VHDX格式把該限值提升到64TB。
Parallels HDD
Parallel軟件的HDD格式,是Mac OS X軟件hypervisor使用的,主要用于支持Mac用戶在自己的系統內運行Windows。
和VDI虛擬磁盤鏡像文件格式類似,HDD主要是Parallel使用,很少有其它程序。VirtualBox無需轉化,直接掛載和使用HDD磁盤鏡像文件,但僅限它們是“簡單格式”HDD文件(Parallel V2或更早版本)情況。在VirtualBox中使用***的版本需要先進行轉換。