使用vmware vconverter從物理機遷移系統到虛擬機P2V(多圖)

本文完整記錄瞭如何從物理服務器,保持全部環境配置信息,紋絲不動的遷移到虛擬機上,俗稱 P2V 。採用的工具是VMware公司的 VMware vcenter vconverter standalone,它支持將windows和linux操做系統用做源,能夠執行若干轉換任務:linux

  • 將正在運行的遠程物理機和虛擬機做爲虛擬機導入到vCenter Server管理的獨立ESX/ESXi或ESX/ESXi主機
  • 將由VMware Workstation或Microsoft Hyper-V Server託管的虛擬機導入到vCenter Server管理的ESX/ESXi主機
  • 將第三方備份或磁盤映像導入到vCenterServer管理的ESX/ESXi主機中
  • 將舊版服務器遷移到新硬件,而不從新安裝操做系統或應用程序軟件等
  • 完整功能見《Converter Standalone 用戶指南》

Converter Standalone的組件,只能安裝在Windows操做系統上:數據庫

  • Converter Standalone Server —— 啓用並執行虛擬機的導入和導出
  • Converter Standalone agent —— Converter Standalone Server會在Windows物理機上安裝代理,從而將這些物理機做爲虛擬機導入,完成後能夠選擇自動刪除
  • Converter Standalone client —— 與Converter服務端配合使用,包括看到的用戶界面、建立和管理轉換任務等
  • Vmware vCenter Converter引導CD:是單獨的組件,可用於在物理機上執行冷克隆

冷克隆能夠建立一致的源計算機的精確副本,而咱們更多的是進行熱克隆,也就是源服務器在遷移過程當中會繼續工做,這就可能會出現某些文件不一致,但Converter Standalone會在熱克隆後將目標虛擬機與與主機同步,同步執行過程是將在初始克隆期間更改的塊從源複製到目標。windows

本文記錄的過程是,源主機是 SUSE 11.x 物理機,運行華爲的智能呼叫中心應用,所以安裝有Oracle數據庫,對於數據文件和控制文件的一致性和安全性較高,因此建議先把oracle數據庫關閉再操做;目標虛擬服務器是 ESXi 5.1,但我使用的Converter是 5.5-en,操做過程相似。下面正式開始安全

源主機:172.30.31.0/24
ESXi: 172.29.88.0/24,與源主機IP段沒法通訊
Helper VM: 172.29.41.0/24,與上面兩個IP段都通服務器

1. 設置源和目的主機地址

vmware-converter-0.png

  • Source System

選擇你要轉換的源系統,物理機爲 Powered-on machine,填寫其餘登錄信息:
vmware-converter-1.png網絡

  • Destination System
    填寫要在哪一個主機上建立虛擬機,也就是ESXi服務器地址:
    vmware-converter-2.png
    這兩個過程有個簡短的拉去主機信息的過程。

2. 選擇目標虛擬機和存放位置

  • Destination Virtual Machine
    目標虛擬機名字默認是源hostname,不用選擇folder:
    vmware-converter-3.pngoracle

  • Destination Locationapp

選擇新虛擬機要放在ESXi的哪一個Datastore上,請確保有足夠的磁盤空間,不能小於源系統實際使用的大小:
vmware-converter-4.pngide

3. 爲轉換任務設置其它選項

這一步尤其關鍵,直接關乎後面轉換的成敗。工具

  • Data to copy
    設置目標虛擬機的磁盤和分區,咱們能夠看到自動獲取的源分區信息,我這裏由於硬盤資源有限,沒有遵循默認的 Maintain size,但比Minmun size(在源SUSE下 df -h 看到的used大小)大。
    vmware-converter-5.png
    CPU個數和內存大小默認也是與源主機保持一致。

  • Network
    網絡設置這一塊比較糾結。按理說源主機不須要與目的主機的網卡通訊,只須要與Helper VM能互通便可,但我一直卡在這走不過去。源主機有2塊網卡在使用,最後在這一步只設置了一塊能ping同源主機的網卡,遷移完成後再手動添加劑一塊網卡。以下是vmware官方知識庫的Note:

In the Conversion wizard, ensure to select the virtual machine portgroup when configuring the network card. This virtual machine portgroup must be connected to the physical network that is routable via port 22 (SSH) in both directions from the source Linux server’s configured network IP address.
The IP address entered must be routable to the IP address of the physical Linux source machine. Helper virtual machine IP address should able to ping the physical machine.

vmware-converter-6-1.png

圖中看到VM Local是事先在vSphere Server上新建的端口組(portgroup),並且這個虛擬交換機vSwitch沒有關聯任何物理網卡:
vmware-converter-exsi-1.png

  • Helper VM network
    Helper VM是作轉換時的一個臨時操做系統,運行在目的主機上,從源主機拷貝數據。若是轉化的時windows,則沒有這個vm,取而代之的時再源主機上運行一個agent,因此轉換windows要求ESXi與源主機能互通,而轉換Linux則只須要設定的Helper VM network能與源主機22端口互通便可。
    vmware-converter-6-2.png

4. 開始轉換

能夠看到轉換的信息彙總,finish則開始遷移轉換過程。
vmware-converter-7.png
vmware-converter-8-1.png
vmware-converter-8-2.png

測試在ESXi上能夠看到會自動建立一臺虛擬機並啓動。等待轉換完成。

5. 問題

轉換幾回失敗都是由於網絡設置不當,轉換到1%時報錯:
vmware-converter-9.png

Error:event.ObtainHelperVmIpFailedEvent.summary

解決辦法就是手動設置HelperVm的IP,並確保可以與源主機通訊。若是繼續報錯,修改目標地址網卡設置,好比去除只剩一個網卡(後續添加),也設置成HelpVm網段。參考 Convert: converter.fault.HelperVmFailedToObtainIpFault 。

轉換Windows Server 2003時還有可能會出現

1
2
3
Unable tp locate the required Sysprep files. Please upload them under
c: \documents and settings\all users\application data\vmware\vmware vcenter converter standalone\sysprep\svr2003
on the converter server machine

 

解決辦法是,須要下載WindowsServer2003-KB926028-v2-x86-CHS.exe,在cmd下執行WindowsServer2003-KB926028-v2-x86-CHS –x(不能夠用winrar),解壓縮出來2個目錄加一堆文件,在SP2QFE目錄下找到deploy.cab,再將deploy.cab解壓縮(winrar便可),獲得10個文件,拷貝到所提示的 svr2003 目錄。參考 Sysprep文件位置和版本 (2040984)

6. on windows

加入遷移的是windows主機,上面的操做略有不一樣,主要區別在於沒有HelperVm,而是在須要轉換的源主機上安裝agent。因此要求ESXi與源主機必須可以直接通訊才能夠遷移。

參考:

相關文章
相關標籤/搜索