21 1 月 2013

ESXi 5.1如何將多個vmdk映像檔轉換成一個

作者:Jerry|發布日期:2012/12/13

在Virtual Machine中,有如下的vmdk映像檔
ubuntu-12.04.vmdk
ubuntu-12.04-s001.vmdk
ubuntu-12.04-s002.vmdk
ubuntu-12.04-s003.vmdk
ubuntu-12.04-s004.vmdk
ubuntu-12.04-s005.vmdk
ubuntu-12.04-s006.vmdk
ubuntu-12.04-s007.vmdk
ubuntu-12.04-s008.vmdk
ubuntu-12.04-s009.vmdk

在ESXi 5.1環境中,將多個*.vmdk映像檔,整合成單一vmdk映像檔,
且為ESXi 5.1認得的*.vmdk印象檔指令如下:
vmkfstools -i -d thin <新的vmdk映像檔>

但是卻無法將多個*.vmdk映像檔轉成一個ESXi 5.1認得的*.vmdk映像檔
原因是在ESXi 5.1中,必須先載入一個核心模組 ( multiextent ),使用vmware專屬指令vmkload_mod
載入方式:
#vmkload_mod multiextent
載入成功會呈現的訊息:
Module multiextent loaded successfully
若已載入過會呈現的訊息:
vmkload_mod: Can not load module multiextent: module is already loaded

再來才可將多個*.vmdk映像檔轉成一個*.vmdk映像檔
轉換方式:如上Virtual machine為例
vmkfstools -i ubuntu-12.04.vmdk -d thin ubuntu.vmdk

thin是指轉換的檔案格式,轉換的檔案不會固定當初配置的磁碟容量,而是隨著檔案的增加,而慢慢變大。
假設當初建立的Virtual Machine,硬碟配置30G空間,目前檔案大小為10G。在轉換中使用thin的檔案格式,轉換後的vmdk映像檔會是10G,再來伴隨著Virtual Machine的使用,此檔案大小會慢慢的增加,最多增加至30G。