使用Windows遷移工具遷移2003至2012R2 二、IP遷移

  說到IP遷移,其實也是我很想寫的一篇博客,這項技術,當時大概是2013年的時候學習的這項技術,只是一直沒找到很好的機會去實踐,前一陣子,筆者參與負責了一個研發項目,項目背景,使用MVMC 3.1 powershell 遷移vmware 到 hyper-v ,同時編寫異構混合雲門戶.NET程序,調用MVMC的powershell在UI界面進行操作,然後採用變量的方式傳入到程序。


   在進行這項工作的時候,筆者發現一個問題,例如,我需要把虛擬機從ESXI5.1遷移至hyper-v3.0,我的ESXI是192.168.6.0這個網段,hyper-v3.0是192.168.2.0這個網段,當我在MVMC UI界面執行的時候,實質上,MVMC會去讀取esxi裏面虛擬機的配置,然後完全在hyper-v這面建立出來一個一模一樣的虛擬機配置,但是,如果說esxi裏面某臺虛擬機的ip地址是192.168.6.1,當我把這臺虛擬機遷移過來的時候,實質上,網卡信息是被清空的,當我把192.168.6.1這臺虛擬機遷移到hyper-v平臺下,hyper-v會重新爲這臺虛擬機掛載新的網卡,而不是完全把原來esxi裏面虛擬機的網卡信息同步過來,所以造成的效果就是虛擬機遷移到hyper-v平臺後,會重新通過hyper-v網段的dhcp獲取到一個IP地址,如果hyper-v網段內沒有DHCP,那麼遷移過來的虛擬機會拿到一個169的IP地址。


   這個是我在UI界面執行的效果,但是當我使用 MVMC powershell 進行遷移,例如我在ESXI5.1中,有一臺虛擬機是192.168.6.1,那麼遷移過來之後,hyper-v的網卡是 未連接狀態,你需要手動去hyper-v中重新手動連接這塊網卡,手動連接上之後,網卡信息也是被清空的,所以當網卡被連接上之後,也會在hyper-v網段,重新DHCP獲取到一個hyper-v網段的地址,我不知道是不是由於我的環境中,vmware和hyper-v不在同一個網段所導致的,但是我猜想,更可能是發生在VMDK轉VHDX那個過程,IP地址丟了,如果您測試發現同一網段下的遷移,IP地址可以同步過來,歡迎您告訴我結果。


  那麼,當時我就想,怎麼能把vmware裏面的網卡信息,能夠遷移到hyper-v來呢,於是我立刻就想到了一個辦法,這個辦法需要用到三句powershell。


 第一句,很簡單,在MVMC轉換的powershell後面,根據前面傳入的變量,即遷移到hyper-v之後的hyper-v主機,添加一個掛載網卡的命令,先讓遷移過來之後網卡掛載上再說。

 第二句,就是用到了Windows 遷移工具,這條命令,我加在了轉換前面的一個步驟,首先,轉換需要確定Vmware裏面需要轉換那臺虛擬機,那我就把這個轉換虛擬機的變量,傳入到後面的Windwos遷移工具模塊,首先,獲取到需要進行轉換的虛擬機之後,使用遠程會話連接進去,運行export-smigserversetting -ipconfig命令,把這臺虛擬機的IP地址信息保存到一個網絡路徑下、

 第三句,就是當遷移完成之後,也成功遷移虛擬機到hyper-v平臺下,也成功執行了掛載網卡之後,在掛載網卡的後面,再加上一個powershell,import-smigserversetting -ipconfig,將之前保存到網絡路徑下的IP地址再遷移回來,這樣子,vmware裏面的網卡信息就可以同步到hyper-v裏面了,從某些程度來說網卡信息的遷移,也減少了一定的宕機時間與風險性。


 這個就是我想到的一個ip地址遷移,能用到的場景,或者比如說,當前我的2003服務器裏面配置了很多塊網卡,每塊網卡又包括了很多設置,諸如DNS後綴,TCP/IP連接等等,我希望,在保留現有2003的網卡配置上,遷移到2012平臺上,同時,我希望這個步驟可以自動化來完成,避免人工操作的錯誤,那麼您也可以嘗試使用Windows遷移工具進行IP信息的遷移。

 

 OK,那麼言歸正傳,先來幫助大家複習一下


 1.Windwos遷移工具,如果需要遷移,首先,需要在來源端和目標端分別安裝Windows遷移工具,纔可以實施。

 2.如果源端是2008R2及以上,可以直接通過添加Windows遷移工具功能,如果源端是2008/2003,需要在通過在目標端,生成可用於03端的遷移工具包,然後將遷移工具包複製到03上面進行安裝,讓03上面也可以具備Windows遷移工具功能。

 3.由於Windwos遷移工具主要是在powershell工具下面進行執行,所以要求,來源端,至少安裝powershell1.0、.NET2.0

 4.使用Windows遷移工具,主要是執行導入/導出操作,在來源端導出,在目標端導入,這句話如果大家暫時不理解沒關係,隨着我們一步一步的深入,你就會看到。


 介紹一下今天的環境。


 1臺Windows server 2003  VM虛擬環境

 兩塊網卡 分別配置有IP地址

 已通過遷移工具包安裝Windows遷移工具


 1臺Windows server 2012R2  VM虛擬環境

 兩塊網卡,目前都是DHCP到的IP地址

 已通過服務器角色與功能安裝Windows遷移工具

 

 我要做的是將2003裏面的兩塊網卡的所有信息遷移到2012R2對應的網卡下,之後徹底替代掉2003這臺服務器的網絡對外連接。


 首先,我們可以打開server 2003的網卡信息進行查看


記錄下這兩塊網卡的信息,第一塊management網卡的IP地址是10.0.0.3,第二塊Intranet網卡的信息是20.0.0.2,同時也請記下兩塊網卡的MAC地址

 wKiom1Uok5zjy2h2AANsIfyOP5M919.jpg

在源端Windows Server 2003上面,打開Windows遷移工具的powershell tools

wKiom1UolGSDuWzlAAKjJyPquk8243.jpg

執行命令如下

export-smigserversetting -ipconfig -path c:\ipconfig -verbose

wKiom1UolZrDPJ2bAAFApF0JJ2k256.jpg

這條命令的意義如下

export-smigserversetting 導出源端服務器配置

-ipconfig 導出源端服務器的IP地址信息

-path 導出文件的路徑

-verbose 是否在輸出端顯示導出信息


當執行了這條命令之後,會提示讓你輸入一個password,這個password,主要是用於加密Mig遷移文件的,避免Mig文件被惡意使用。


隨意輸入一個你喜歡的密碼之後,smigserver就會開始執行導出IP地址的操作,不光是IP地址,可以看到,整個網卡的所有信息,都會被導出出來。


wKiom1UoluyBYv8cAAOQk-XdRVE507.jpg

wKioL1UomDnQ-h-cAAQ72QiM4so818.jpg

執行完成導出命令後,我們將導出得到的 被加密的 mig文件,複製到2012R2服務器上

wKiom1Uol5DzbejWAAEuFX-FCi4557.jpg

wKiom1Uol9ODv9lrAAFgcUCR8K4908.jpg在2012R2服務器上打開Windows遷移工具powershell管理

執行import-smigserversetting

wKioL1UomebjQQrSAADn9Xty51o869.jpg

或者你也可以通過這條命令,在Windwos powershell中運行Add-PSSnapin,加載遷移工具的命令

wKiom1UomNGyz6F2AAEQNXyxoNE227.jpg

Always 如果你想要使用命令提示符運行也是可以的,在命令提示符下輸入以下命令即可

powershell.exe -PSConsoleFile %SystemRoot%\system32\ServerMigrationTools\ServerMigration.psc1

wKioL1Uo66_SasT1AAGExkiYGFU653.jpg

注意:如果你的遷移源端和目標端在同一個可以通訊的網絡環境下,這裏你就需要選擇一個合適的時間點,將Windows server 2003裏面的網卡禁用掉,總之一定在導入前執行,否則就會出現兩個機器,ip地址衝突的情況!!!


wKioL1UonKCA84-yAAFWjT5oEtg740.jpg

這裏我們選擇在Windwos powershell中執行import-smigserversetting導入操作

wKiom1Uom82iKueaAAPOj4dGzDQ377.jpg

Import-SmigServerSetting -ipconfig all -SourcePhysicalAddress "00-0C-29-E4-B5-92","00-0C-29-E4-B5-9C" -TargetPhysicalAddress "00-0C-29-5E-9E-84","00-0C-29-5E-9E-8E" -path c:\ipconfig -Verbose


這條命令的意義如下


Import-SmigServerSetting 導入服務器配置

-ipconfig 導入服務器配置信息類型,ipconfig爲ip信息

all 爲所有網卡

-SourcePhysicalAddress 

-TargetPhysicalAddress

看到這裏,我猜大家應該就會知道,Windows遷移工具,在做網卡信息映射的時候,是根據MAC地址進行映射的,比如說,2003裏面第一塊網卡,management的MAC地址信息是00-0C-29-E4-B5-92,2012R2裏面第一塊網卡的MAC地址信息是00-0C-29-5E-9E-84,Windows遷移工具,就會將MAC地址爲00-0C-29-E4-B5-92的所有網卡信息,全部映射給00-0C-29-5E-9E-84。我這裏用了一個英文的,號隔離開了多個MAC地址信息 ,代表我可以同時將多塊網卡,按照順序進行映射。

-path 要導入的mig文件路徑

-verbose 輸出導入信息


輸入之前在導出時候設定的密碼,採用密文輸入


wKioL1UonpWTO4lfAALbQy55LA8087.jpg

輸入完成後,Windows遷移工具就會開始映射網卡信息


wKiom1Uonf6C43EYAAHm7-3Y41k810.jpgwKioL1UooCWyNqHLAAeNyaERjyQ094.jpg

映射完成後,我們打開2012R2裏面的網卡信息,發現03裏面的多塊網卡信息已經按照順序映射了過來

wKioL1UooJyAmXmgAALNNeHjdB0495.jpg

wKiom1Uon1DD84oZAALnvZj03Vs575.jpg


i_f01.gif到此結束,希望您能通過本篇博客得到收穫,出發去見老朋友了!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章