虛擬機器的磁碟存取一般可分兩種方式,一為讓虛擬機器存取虛擬平臺模擬出來的虛擬磁碟,虛擬磁碟的實體是虛擬磁碟檔案(如.VMDK或.VHD)。另一為讓虛擬機器直接存取實體磁碟,也就是將儲存設備的磁碟區直接掛載給虛擬機器使用,不經由檔案系統的中介,即所謂的原生裝置(Raw Device)模式。
存取虛擬磁碟檔依虛擬化類型而異
透過檔案系統儲存虛擬機器的虛擬磁碟檔案,是最普遍的一種虛擬環境儲存模式,依虛擬平臺屬於寄居式(Hosted,需安裝在已備妥作業系統的主機上)或裸機(Bare Metal,可直接安裝在無作業系統的主機)架構,有兩種作法:
寄居式虛擬環境的磁碟存取架構
寄居式架構的虛擬平臺,必須建立在底層主機既有的作業系統上,因此虛擬機器的虛擬磁碟,也就是直接存放在底層作業系統透過檔案系統提供的儲存空間上。
這種存取設定最為簡單,也最容易理解。先準備好裝有Windows或Linux等作業系統的實體機器,然後安裝VMware Workstation、Virtual Server等寄居式架構的虛擬平臺。接下來建立虛擬機器的虛擬磁碟時,將對應的虛擬磁碟檔案(.VMDK或.VHD等),存放在底層Windows或Linux的NTFS、Ext2/3檔案系統提供的空間即可。
這種作法的問題是,虛擬機器對實體硬碟的存取動作,都須經過兩層檔案系統的控制,包括虛擬機器內Guest作業系統的檔案系統,以及底層實體電腦作業系統的檔案系統,效能相對較差。
裸機式虛擬環境的存取架構
裸機式架構的虛擬平臺無須透過既有作業系統的中介,Hypervisor可直接安裝於實體電腦上。不過由於這種架構沒有底層作業系統,因此虛擬平臺便得自己扮演作業系統的角色,以便為上層的應用提供包括硬體資源配置、協調與檔案存取管理在內的基本服務。
Hypervisor可視為一種microkernel類型的作業系統,負責執行緒管理(Thread management)、記憶體管理與內進程通訊(Inter-process communication,IPC)等核心作業,而完整作業系統所需的其他功能如驅動程式(Device Driver)或檔案管理等,則由另外搭配的User-mode Servers提供相關服務,IPC就是用於溝通這些服務。
以Xen為基礎的虛擬化平臺如Citrix Xen、Sun xVM Server與Virtual Iron、Microsoft Hyper-V等來說,是透過Domain 0(即Control Domain)中經過特別修改的作業系統,來為整個環境的虛擬機器提供檔案存取服務,只有Domain 0會存取實體磁碟,其他虛擬機器(Domain U)都是透過Hypervisor聯繫Domain 0,存取模擬出來的虛擬磁碟。
因此視Domain 0中的作業系統不同,不同虛擬平臺提供的檔案系統類型也就不同。如Sun xVM Server平臺是以Solaris 10做為Domain 0,故其提供的檔案系統就是ZFS。而採用SUSE Linux核心的Virtual Iron,其檔案系統便是一般Linux常見的Ext3、Hyper-V則是Windows標準的NTFS等。
較特別的是VMware雖可使用Ext3這種Linux標準的檔案系統,但只用於存放開機、log等系統檔案,至於用於存放虛擬磁碟檔案的磁碟區,則採用VMware專屬的檔案系統上,也就是VMware Infrastructure 3架構中的VMFS(Virtual Machine File System)。
VMFS是VMware為虛擬環境應用而設計的專屬檔案系統(VMFS格式的磁碟區不能為其他作業系統辨識),可為不同虛擬機器分別調節Volume、區塊(Block)與檔案的大小,以為虛擬機器提供最適當的I/O效能,還能讓最多32臺ESX伺服器同時存取一個VMFS Volume,效能應該會比一般作業系統的檔案系統更好。
無須中介的原生裝置存取模式
所謂原生裝置(Raw Device)存取模式,是指讓虛擬機器直接存取實體磁碟機,而不是存取虛擬平臺模擬出來的虛擬磁碟機(實際上是對應於一組特定檔案),因此存取動作不會經過作業系統或虛擬平臺的檔案系統這一層,可讓資料直接從實體磁碟到虛擬機器進行傳輸。
在這種模式下,可把後端儲存設備上指定的LUN直接掛載給前端虛擬機器使用,因此更能確保虛擬機器所享有的I/O資源,只要在儲存設備上設好特定LUN占用的傳輸通道即可。
相對於前述虛擬磁碟檔案模式,由於多個虛擬機器的虛擬磁碟檔案都存放在同一個Volume上,也就等於所有虛擬機器必須共享這個Volume的存取通道,只能由虛擬平臺來協調I/O資源的優先使用順序。所以對於存取非常頻繁的應用程式來說,Raw Device理論上可大幅提高存取效能。
理論上,透過Raw Device模式,即可讓虛擬機器直接存取實體磁碟中的資料,無須透過虛擬磁碟檔案的中介,但不同虛擬平臺的Raw Device模式又有所差異,如VMware ESX的Raw Device模式,仍須在VMFS中產生一組對應於Raw Device的映射位址與基本設定的檔案(Map file),虛擬機器必須參照這組檔案去存取對應的實體磁碟區,VMware稱這種模式為Raw Device Mapping。
而另一些虛擬平臺如Virtual Iron或Citrix XenServer的Raw Device模式,則不需要依靠這類檔案的中介,只要透過虛擬管理伺服器為虛擬機器指派存取的磁碟區即可。
虛擬環境磁碟存取配置的基本類型 |
在虛擬磁碟模式中,虛擬機器存取的是虛擬平臺利用檔案系統空間模擬的虛擬磁碟,其本體為檔案系統中的虛擬磁碟檔案;而Raw Device模式則可讓虛擬機器直接存取實體儲存設備。 |
兩種儲存模式的優劣
顯然的,直接存取實體磁碟的Raw Device模式,理應具有較佳的效能,但這只是純就理論上而言,實際上的存取效能,仍須視資料大小與應用程式存取行為特性而定。
從另一方面來說,效能也不是決定採用何種儲存架構的唯一考量因素,透過虛擬磁碟存取仍有許多Raw Device所不具備的優點。例如虛擬磁碟檔案的配置更為彈性,一個磁碟區即可同時存放多個虛擬磁碟檔案,而Raw Device則必須將磁碟區切割為多個LUN,分別掛載到指定的虛擬機器上,容量利用效率較差,管理者必須事先在儲存設備上,做好儲存區域的劃分,並需搭配SAN架構。
另外若採用虛擬磁碟檔案,亦便於使用虛擬平臺內建的多種管理功能,如對虛擬磁碟執行快照(Snapshot)與複製(Clone)等。
不過對於已擁有SAN儲存設備的企業用戶來說,若要在虛擬環境中充分利用SAN儲存設備內建的快照、複製等進階磁碟應用功能,則Raw Device模式就是較好的選擇,而且透過儲存設備內建功能來執行快照,對前端系統不會造成負擔。相對的由虛擬平臺執行的快照作業,就會嚴重影響頂層Guest作業系統的效能。
而從系統部署或遷移的觀點來看,當用戶打算將既有的實體機器轉換到虛擬環境時,若在儲存方面採用虛擬磁碟模式,則需透過轉換工具將原來的實體磁碟機資料轉換為虛擬磁碟格式,而這種P2V作業十分費時。若用戶擁有SAN環境,且原來的實體伺服器就是存取後端SAN儲存設備提供的磁碟空間,則此時可採用Raw Device模式,直接將SAN磁碟機指派給虛擬機器存取即可,可省下花費在P2V作業上的時間。文⊙張明德
VMware ESX的Raw Device Mapping模式設定實作 |
VMware的Raw Device Mapping(RDM)是目前應用較廣的虛擬平臺原生存取模式,
|
熱門新聞
2024-11-25
2024-11-25
2024-11-15
2024-11-15
2024-11-26