2012年1月9日 星期一

邁向Hyper-V之路系列 (六) 轉移舊版虛擬主機至Hyper-V

在前文中,Server 2008 R2的Hyper-V角色建立後,接著就可以開啟轉移在舊版虛擬主機上的虛擬主機,如Virtual Server 2005 R2或Virtual PC 2007。

接下來的範例中,將會從Virtual Server 2005 R2及Virtual PC 2007上的虛擬主機轉到Hyper-V中,在轉換的過程中,有一點是需要特別注意的,也就是存在於Virtual Server 2005 R2或Virtual PC 2007中的【Virtual Machine Additions】,在轉移前的關機動作裡,強烈建議先將該元件移除後,在關機轉移。

而該範例中,我也特別的將一個虛擬主機的【Virtual Machine Additions】元件移除,另一個則不移除。

範例中:
Virtual PC 2007上的虛擬主機在關機前並沒有移除【Virtual Machine Additions】元件。
Virtual Server 2005 R2上的虛擬主機在關機前有移除【Virtual Machine Additions】元件。

切記:
Virtual Server 2005 R2或Virtual PC 2007我們只需要將【*.VHD】的檔案複製到Hyper-V的主機上。虛擬主機一定要正常關機,不要使用儲存的方式關閉,若有設定還原的話(Undo Disk)也請先將設定移除,並正常的做關機動作。

Virtual Server 2005 R2中的虛擬主機 (XPP-VSVM1)

Virtual PC 2007中的虛擬主機 (XPP-VPCVM1)

在關閉Virtual Server 2005 R2中的虛擬主機前,請在該虛擬主機裡的【新增或移除程式】裡,將【Virtual Machine Additions】元件移除,移除後在做關機動作。


在關閉 Virtual PC 2007 中的虛擬主機前,請在該虛擬主機裡的【新增或移除程式】裡,將【Virtual Machine Additions】元件移除,移除後在做關機動作。


範例中,VPC的虛擬主機沒有移除【Virtual Machine Additions】元件、VS則有移除Virtual Machine Additions】元件。

以下稱Virtual PC 2007為VPC、Virtual Server 2005 R2為VS。

將VPC及VS的虛擬主機中的【*.VHD】檔案,複製到Hyper-V主機中C磁碟的VMHD目錄。


左下角的【開始】--【系統管理工具】--【伺服器管理員】。另外,我們也可以直接點選工作列上的【伺服器管理員】快速啟動鍵來開啟【Hyper-V管理員】。


開啟【Hyper-V管理員】角色後,我們可以在Hyper-V主機名稱上按右鍵選【新增】-【虛擬機器】。或在【動作】裡的【新增】來新增虛擬機器。


開啟【新增虛擬機器精靈】後,請按【下一步】。


接著我們指定一個名稱給要新增的虛擬機器,以便日後在維護上比較好辨認,範例中我們先將VPC的虛擬機器新增進來,所以名稱中輸入VPC。

註:若沒指定虛擬機器的儲存位置,系統會將虛擬機器儲存在預設的位置。


接著我們要將C磁碟的VMHD目錄中的【VPC-沒移除】裡的【*.VHD】檔匯入進來。所以我們勾選【將虛擬機器儲存在不同位置】,並按一下【瀏覽】,將路徑指向【C:\VMHD\VPC-沒移除】,接著按【下一步】。


在來就是分配記憶體供虛擬機器使用,在此就使用預設的【512MB】,分配後按【下一步】。


接下來設定網路功能,預設連結是停留在【未連線】上。我們可以在此先設定或日後在設定網路功能。


範例中先將網路功能設定連線選在【新增虛擬網路】,按【下一步】。


連接虛擬硬碟,預設是會在【建立虛擬硬碟】,這個設定是要給新的虛擬機器使用,由於我們是要將舊版虛擬機器匯入,所以不選擇此項。


由於我們是要將舊版虛擬機器匯入,所以請選擇【使用現有的虛擬硬碟】,按【瀏覽】指定該【*.VHD】位置。


完成新增虛擬機器的動作後,請按【完成】。


接下來Hyper-V會開始設定、套用方才的設定。


套用後,我們可以在【Hyper-V管理員】中看到剛剛所新增的【VPC】虛擬機器,我們可以在【VPC】上按滑鼠右鍵選【設定】來做一些其他虛擬機器的設定。


接著,我們可以在虛擬機器中的【VPC】上按滑鼠右鍵選【啟動】。


也可以在【VPC】上點兩下滑鼠右鍵,就能開啟該【虛擬機器連線】的畫面,接著在【虛擬機器連線】上按【動作】-【啟動】。


在第一次啟動後,VPC的虛擬主機會出現【歡迎使用尋找新增硬體精靈】,在此直接都按【取消】。

註:在沒有安裝整合服務時,要將滑鼠、鍵盤在虛擬機器中釋放的話,請按【CTRL+ALT+方向鍵的向左鍵】。


接下來點選【虛擬機器連線】上的【動作】-【插入整合服務安裝磁片】。


此時會發生錯誤,因為這就是在轉移前沒有將舊版的【Virtual Machine Additions】元件移除。


別擔心,只要在將舊版的【Virtual Machine Additions】元件移除就可以了,請在虛擬機器上的【新增或移除程式】裡,將【Virtual Machine Additions】元件移除,請按【移除】。


系統會詢問,是否要移除【Virtual Machine Additions】元件,請按【是】。


【Virtual Machine Additions】元件移除中,請稍候。


移除【Virtual Machine Additions】元件後,系統會要求重新開機,請按【是】,重新開機。


接著系統將進行重新開機.............


在重新開機後,VPC的虛擬主機會出現【歡迎使用尋找新增硬體精靈】,在此直接都按【取消】。

註:在沒有安裝整合服務時,要將滑鼠、鍵盤在虛擬機器中釋放的話,請按【CTRL+ALT+方向鍵的向左鍵】。


接下來點選【虛擬機器連線】上的【動作】-【插入整合服務安裝磁片】。


系統整合服務在安裝中,會需要升級舊版虛擬主機內的HAL,此時會告知會升級HAL,請按【確定】。

註:HAL (Hardware Abstraction Layer),硬體抽象層。


升級HAL的同時,請您稍後一段時間。


升級HAL後,需要重新開機才能在做後續的Hyper-V整合服務。請按【是】,重新啟動。


重新開機後,我們一樣忽略掉【歡迎使用尋找新增硬體精靈】,此時【Hyper-V整合服務】會開始進行安裝虛擬元件,請稍候。


當虛擬元件安裝後,Hyper-V整合服務會自動開始偵測新的裝置,請稍候。


Hyper-V整合服務安裝成功後,系統必須重新開機才能套用新的設定,請按【是】重新啟動。


Hyper-V整合服務安裝完成後,我們點選【虛擬機器連線】內的【媒體】-【DVD光碟機】-【退出vmguest.iso】。這個動作就好像實體主機我們從DVD光碟機裡退出光碟片的動作。


看一下虛擬機器內新增或移除程式中,Hyper-V整合服務已經安裝在內了。


Hyper-V管理員中也能看到,舊版虛擬主機轉移過來的虛擬機器也成功的在Hyper-V中執行。


在來就可以開始匯入其他舊版的虛擬主機了,由於後續的舊版虛擬主機都已經有移除【Virtual Machine Additions】元件,所以後續的新增動作就不需要這麼麻煩了,只要直接安裝Hyper-V整合服務即可。


在本文中,都是以Windows 平台做為轉移舊版虛擬主機的介紹,若舊版的虛擬主機系統為Linux或CentOS非微軟作業系統平台的話,就必須要另外到微軟官方下載中心下載【Linux Integration Services Version v3.2 for Hyper-V - 中文(繁體)】,這是微軟免費釋出給Linux或CentOS用的Hyper-V整合服務。

筆者成功將公司內所有存在於舊版虛擬主機內(Virtual Server 2005 R2)的大大小小系統,成功轉移到Microsoft Windows Server 2008 R2 with SP1的Hyper-V角色裡,繼續運作。

雖然過程中也有運用到小部份的工具進行轉移其他虛擬平台的虛擬主機到Hyper-V中,日後也運用了強大的管理工具(SCVMM)進行Hyper-V的管理。這些都會在這系列的最後一篇做介紹。

接續...................【邁向Hyper-V之路系列 (七) Hyper-V管理工具介紹及總結

沒有留言:

張貼留言