使用Disk2VHD進(jìn)行P2V轉(zhuǎn)換需要知道的一些事
據(jù)不可靠統(tǒng)計(jì),有「無數(shù)」工具可以實(shí)現(xiàn)物理機(jī)到虛擬機(jī)的(P2V)轉(zhuǎn)換,雖然有很多此類工具都被開發(fā)商帖上了高價(jià)標(biāo)簽,但至少來自微軟 Sysinternals 工具集中的 Disk2VHD 還是可以免費(fèi)使用的,本文我們就來討論下使用 Disk2VHD 工具的一些相關(guān)常見問題。
Disk2VHD 是一個(gè)綠色輕量級(jí)的 P2V 工具,令人驚訝的是其體積居然小于 10 M。其界面和功能也簡(jiǎn)潔得令人發(fā)指,只需勾選好要轉(zhuǎn)換的卷,選擇一個(gè) vhd 或 vhdx 的生成路徑之后點(diǎn)擊 Create(轉(zhuǎn)換)按鈕就大功告成了。下圖為 Disk2VHD 的主界面:
對(duì)于需要批量操作的管理員來說,Disk2VHD 工具還可以直接當(dāng)成命令行工具來使用的哦。
由于界面的簡(jiǎn)潔性,可能讓很多首次使用 Disk2VHD 的用戶覺得物理機(jī)到虛機(jī)的轉(zhuǎn)換過程會(huì)非常簡(jiǎn)單。在這里我要提醒大家,千萬別被它的干凈界面所蒙蔽了。如果你計(jì)劃在虛擬化或私有云項(xiàng)目中使用 Disk2VHD 完成 P2V 遷移,有一些必要的注意事項(xiàng)需要上心,不然很可能造成非常多的「不成功轉(zhuǎn)換」或「虛擬機(jī)啟動(dòng)失敗」經(jīng)歷,甚至讓客戶對(duì)我們失去信心。針對(duì)這些個(gè)情況,下面我就介紹并分享一些本人使用 Disk2VHD 工具的最佳實(shí)踐。
版本更新
雖然至 2014 年以來 Disk2VHD 一直停留在 2.01 版本,但你也應(yīng)該像其它 Sysinternals 工具一樣保持版本更新。
保持虛擬磁盤文件
另外必需小心處理 Disk2VHD 所生成的 vhd 或 vhdx 虛擬磁盤文件。
一些高版本 Windows 允許用戶直接雙擊掛載 vhd 和 vhdx 虛擬磁盤文件,我們可以直接往虛擬磁盤中添加、刪除文件甚至驅(qū)動(dòng)程序。表面上看起來這個(gè)功能非常 Great,但拿來處理 Disk2VHD 生成的虛擬磁盤文件則會(huì)有很大問題。
當(dāng)執(zhí)行物理到虛擬轉(zhuǎn)換時(shí),作為轉(zhuǎn)換過程的一部分,Disk2VHD 并不會(huì)破壞物理服務(wù)器的內(nèi)容。轉(zhuǎn)換完成后,虛擬磁盤將直接模擬物理磁盤,但物理磁盤保持不變,物理機(jī)器也仍保持完全正常運(yùn)行。這就可能造成問題:
Windows 操作系統(tǒng)會(huì)將簽名寫入到每個(gè)磁盤當(dāng)中,此簽名用允許 Windows 對(duì)磁盤機(jī)制進(jìn)行識(shí)別。由于虛擬磁盤文件是物理磁盤的精確副本,所以它會(huì)包含與創(chuàng)建它的物理磁盤相同的簽名。如果你使用與創(chuàng)建虛擬磁盤文件的物理機(jī)來安裝虛擬磁盤,則會(huì)出現(xiàn)簽名沖突。而 Windows 會(huì)自行嘗試向虛擬磁盤寫入新簽名以解決沖突,此時(shí)就會(huì)因 BCD 數(shù)據(jù)庫(磁盤引導(dǎo)配置數(shù)據(jù)庫)引用了已不存在的磁盤簽名而造成虛擬機(jī)無法引導(dǎo)。
不適宜場(chǎng)景
Disk2VHD 工具必需小心地在正運(yùn)行的系統(tǒng)上使用,它與很多備份工具的原理類似,都是調(diào)用了 Windows 底層的卷影復(fù)制服務(wù)(VSS)以創(chuàng)建正轉(zhuǎn)換的磁盤的快照,這樣就不用擔(dān)心內(nèi)容在轉(zhuǎn)換過程中被修改。調(diào)用 VSS 雖然可以保證生成虛擬硬盤文件的完整性,但從另一方面來說,轉(zhuǎn)換過程中或之后在物理服務(wù)器上創(chuàng)建或修改的任何數(shù)據(jù)都不會(huì)包含在虛擬硬盤中。這意味著有可能在 P2V 時(shí)發(fā)生數(shù)據(jù)丟失,特別是在運(yùn)行高度事務(wù)性應(yīng)用的系統(tǒng)上。
例如:Exchange Server 雖然理論上可用 Disk2VHD 來實(shí)現(xiàn) P2V 轉(zhuǎn)換,但轉(zhuǎn)換之后的原服務(wù)器消息一直在發(fā)送和接收,就有非常大的數(shù)據(jù)丟失風(fēng)險(xiǎn)。所以對(duì)于像 Exchange 這樣的業(yè)務(wù),最好的 P2V 方式便是通過新增虛擬機(jī) DAG 成員再卸載舊服務(wù)器的方式來完成過渡。
對(duì)于必須保持在線的高度事務(wù)性服務(wù)器(例如 Exchange Server 或 SQL Server 等),最好的選擇是通過數(shù)據(jù)復(fù)制來輔助虛擬化過程,而不是依靠 Disk2VHD。當(dāng)然也可以通過「計(jì)劃停機(jī)」的方式停止和禁用與應(yīng)用程序相關(guān)的系統(tǒng)服務(wù),防止應(yīng)用程序在轉(zhuǎn)換過程中處于活動(dòng)狀態(tài),以防數(shù)據(jù)丟失發(fā)生。
其它小結(jié)
當(dāng)然,在 Disk2VHD 完成 P2V 轉(zhuǎn)換之后將虛擬機(jī)投入生產(chǎn)之前,還可能需要對(duì)虛擬機(jī)進(jìn)行一些調(diào)整。至少要先裝上 Hyper-V 集成服務(wù),再對(duì) TCP/IP 配置進(jìn)行調(diào)整之后才能完成上線測(cè)試吧。