Code Section

Tuesday, July 24, 2018

VMware 豆知識 - 虛擬環境的 Virtual Machine 組成元件有哪些

在實體的世界中,眼睛看得到的都是就是各個硬體元件,例如一台電腦,拆開之後看得到就是主機板 (包含內建的顯示卡、磁碟控制器、網路卡、音效卡…等)、處理器、記憶體、硬碟等組成元件。

而轉換到了虛擬世界,由於每台實體機器都變成了虛擬機 (Virtual Machine, VM),不論是 Host OS 型態或是 Hypervisor 型態的虛擬化,在虛擬化平台上,每個虛擬機都只是由底層執行的一個程序 (Process),所以每台虛擬機就變成了一個資料夾,裡面有著這個虛擬機的許多組成檔案,對應到實體環境所看到的各個硬體組成元件。

Host OS 型態的 Virtualization,在原來的作業系統上,執行虛擬化軟體,模擬出數個 VM。(如下圖)

Hypervisor 型態的 Virtualization,這層 Hypervisor 就是底層的作業系統,它本身具備虛擬化功能,可直接模擬出數個 VM。(如下圖)

簡單來說,實體與虛擬的常用零組件對照方式為:
(實體)處理器 CPU --> (虛擬)描述設定檔
(實體)記憶體 Memory --> (虛擬)描述設定檔
(實體)顯示卡 VGA --> (虛擬)描述設定檔
(實體)磁碟控制器 --> (虛擬)描述設定檔
(實體)網路卡 NIC --> (虛擬)描述設定檔
(實體)音效卡 Audio --> (虛擬)描述設定檔
(實體)光碟機 DVD-ROM --> (虛擬)描述設定檔
(實體)硬碟 Hard Disk --> (虛擬)虛擬硬碟檔案 Virtual Disk File
也就是虛擬機的組成元件,主體就是一個描述設定檔,以及一個或數個的虛擬硬碟檔。

談到 Virtual Machine 的各項組成元件,在 VMware vSphere/ESXi 環境下,各種的組成檔案包括 (依副檔名說明):
vmx:configuration files,虛擬硬體元件組成設定檔。
vmdk:virtual disk,虛擬硬碟。
nvram:virtual BIOS state,BIOS狀態檔。
vswp:virtual swap file,虛擬記憶體交換檔。
vmsd:snapshot infomation database,快照資訊資料庫。
vmsn:snapshot state file,快照狀態檔。
-xxxxx.vmdk、-xxxxx-delta.vmdk:delta disk,作完快照後新產生的差異硬碟。
.lck:lock file,目前被系統鎖定禁止從外部更動的檔案 (通常是在執行中會鎖定),會產生檔名對應的.lck。

一般在操作或管理時不需要瞭解這麼多,但有些元件在操作時的變動,會跟儲存空間的消耗息息相關,這就需要管理者多多注意。
佔據較多儲存空間的檔案類型有以下幾種 (通常空間消耗是 GB 等級起跳):
(1)vswp:在 Power on VM 後就會產生的檔案,與該台 VM 的 virtual memory 的大小相同。
(2)vmsn:如果 Take Snapshot 時,勾選 Snapshot the virtual machine's memory,則產生的檔案會包含該 VM 的 configuration+active state+memory,也就是說會比 virtual memory 的大小還要大一些。
(3)-xxxxx.vmdk、-xxxxx-delta.vmdk:在快照後的資料變動,都會改寫到 delta disk,如果這個 VM 的資料異動量大,就會讓 delta disk 的尺寸激升。

上述的情況 (2) 提到,在Take Snapshot 時,勾選 Snapshot the virtual machine's memory。(如下圖)

另外關於 VMware Snapshot 快照還有很多可以談的,會再另開文章來寫,敬請期待。


<<參考資料>>
What Files Make Up a Virtual Machine?

What Files Make Up a Virtual Machine in ESXi 5.5? … in VMware Workstation 10? | TechRant


〈本文同步刊載於痞客邦部落格〉
VMware 豆知識 - 虛擬世界中的 Virtual Machine 是什麼? @ 狸貓先生愛廢話講堂 :: 痞客邦 ::

No comments:

Post a Comment