歷經vSphere 8評估階段期間的驗證,確認vSphere 8能夠滿足所有功能面的要求後,就會擬訂計畫將重要系統移轉至vSphere架構中,本文分成上下集內容,針對實體主機與異質虛機的移轉作業做詳盡的操作示範,並且解說箇中需要注意的事項,本文將講述最後的完整內容。
關於vSphere 8實體主機與異質虛擬機器移轉,上集文章已經介紹了如何安裝VMware vCenter Converter、移轉VMware Workstation Pro虛擬機器、移轉Hyper-V虛擬機器。延續上集,接下來先介紹如何移轉Hyper-V虛擬磁碟。
移轉Hyper-V虛擬磁碟
如果想要移轉的Hyper-V虛擬機器,只剩下以前所備份的虛擬磁碟,並且目前網路中也沒有任何的Hyper-V Server可以使用,那該怎麼辦呢?
其實要將Hyper-V虛擬機器移轉至VMware vSphere,並非一定得要採用Server to Server的連線移轉方式,只要虛擬機器的磁碟有完整保存,再搭配使用相關第三方的免費工具,一樣可以將它進行移轉。而在目前眾多的工具當中,比較推薦的是StarWind V2V Converter,只要連結到「https://www.starwindsoftware.com/starwind-v2v-converter」官網並完成註冊,就可以收到下載連結,如圖1所示。
下載到最新版本的StarWind V2V Converter後,便可以立即安裝,如圖2所示,整個安裝過程僅需要依序設定安裝路徑、程式捷徑即可。
完成安裝並執行後將會開啟「Select the location of the image to convert」頁面,如圖3所示,在此可以發現目前此版本所支援的移轉方式分別有P2V、本機檔案(Local file)、遠端ESXi主機或vCenter Server、Hyper-V Server、Azure以及AWS。選擇「Local file」,並按下〔Next〕按鈕。
接著,在「Source image」頁面中,如圖4所示,透過瀏覽按鈕來選取要移轉的Hyper-V虛擬磁碟檔案,成功載入後將可以看到它目前的大小設定,再按下〔Next〕按鈕繼續。
在「Select the location of the destination image」頁面中,可以選擇的目標位置,分別有本機檔案(Local file)、遠端ESXi主機或vCenter Server、Hyper-V Server、Azure、AWS以及oVirt,這裡選取「Remote VMware ESXi Server or vCenter」,然後按下〔Next〕按鈕。如圖5所示,在「Enter VMware ESXi Server or vCenter connection parameters」頁面中,輸入遠端ESXi主機或vCenter Server的IP位址以及帳號密碼,並按下〔Next〕按鈕。
在「Select virtual machine to attach image」頁面中,如圖6所示,可直接對於虛擬磁碟選擇要附加的虛擬機器,或是按下〔Create a new virtual machine〕按鈕來建立一個全新的虛擬機器。
如圖7所示,在「Configuration ESX virtual machine」頁面中,便可依序設定新虛擬機器的名稱、資料存放區、CPU數量、記憶體大小、韌體類型、OS類型以及虛擬機器網路,最後按下〔OK〕按鈕。
如圖8所示,在「Select option for VMDK image format」頁面,決定從VHDX轉換成VMDK後的虛擬磁碟所要採用的格式,分別有自動成長以及預先配置所有空間大小的映像選擇,前者可以節省初期部署時的儲存空間,而後者雖然會先占用較多的儲存空間,不過I/O的運行效能會更好,選擇之後按下〔Next〕按鈕。
接著,在「Set destination of image file」頁面中,設定移轉後之VMDK映像的命名與存放路徑,並且可以得知所需要的儲存空間以及當前剩餘的可用空間,並按下〔Convert〕按鈕。圖9所示是成功移轉後的顯示頁面,若要繼續移轉其他不同的虛擬磁碟就按下〔Convert another image〕按鈕,否則按下〔Finish〕按鈕。
最後,開啟ESXi Host Client或vSphere Client網站,如圖10所示來查看移轉後的虛擬機器,點選「開啟電源」來開始運行吧!
移轉Linux主機
由於開源的優勢,Linux在現今的企業網路環境中已相當普及,其中應用最廣泛的莫過於在Email服務與Web網站的領域,其他還有像是資料庫服務方面的部署,包括Oracle Database、Microsoft SQL、PostgreSQL等等,就連vSphere的各種伺服器也都是以Linux核心為基礎的作業系統。
既然在Linux作業平台上有這麼多的應用服務,那麼將它們通通移轉至vSphere虛擬化平台上來運行就更為重要了,因此VMware vCenter Converter除了支援Windows系列的作業系統外,也支援以Linux核心為主的作業系統,包括CentOS、Red Hat Enterprise Linux、SUSE Linux Enterprise Server以及Ubuntu。
確認好準備移轉的Linux主機後,以Ubuntu為例,如果在其作業系統中尚未安裝OpenSSH Server,那麼必須如圖11所示透過以下命令參數來完成安裝,這是因為在後續的移轉操作過程中,VMware vCenter Converter必須透過與SSH Server的連線方式才能夠進行移轉:
sudo apt-get update sudo apt-get install openssh-server
接著,完成SSH服務配置的修改,也就是執行「sudo vi /etc/ssh/sshd_config」命令來開啟設定檔案,然後如圖12所示將其中PermitRootLogin敘述後面的值改為「yes」並保存即可。
最後,如圖13所示執行「sudo /etc/init.d/ssh restart」命令來重新啟動SSH Server服務,便可以準備進行此Linux主機的移轉操作。
接下來,開啟「VMware vCenter Converter」管理介面並按下〔Convert machine〕按鈕。執行之後,在「Source System」頁面中,如圖14所示,點選「Powered on」並挑選「Remote Linux machine」為來源系統類型。
緊接著,可以發現在連線主機的設定中,它不僅支援傳統帳密的連線方式,還增加了採用更加安全的做法,那就是私密金鑰檔案(Private Key File)的驗證方式。完成上述任一驗證設定後,按下〔Next〕按鈕繼續。
請注意!在VMware vCenter Converter的下一個版本中,對於SSH的連線加密機制,可能不再支援使用SHA1簽署的金鑰進行身分驗證,這對於一些不支援RSA SHA2或ECDSA的舊版Linux(例如RHEL 6.x與CentOS 6.x Linux)將無法進行連線。
緊接著,可能會出現憑證相關的警示訊息,按下〔Ignore〕按鈕繼續。在「Destination System」頁面中,輸入選定的ESXi主機或是vCenter Server的主機位址、管理員帳戶以及密碼,再按下〔Next〕按鈕。如圖15所示,在「Destination Virtual Machine」頁面中,除了可查看目前在vSphere主機上的虛擬機器清單外,還可以為移轉後的虛擬機器設定一個新的顯示名稱,再按下〔Next〕按鈕。
在「Destination Location」頁面中,可以視需要來修改存放虛擬機器檔案的資料存放區與虛擬機器版本。而在「Options」頁面中,如圖16所示,則可根據實際的轉換需要,修改每一個轉換後的虛擬磁碟各分割區大小,以及選取目標主機所連接的資料存放區等進階資源配置設定。
由於移轉的來源Linux主機是處於開機狀態,因此建議進一步在「Advanced option」設定中,如圖17所示,分別勾選「Power on destination machine」與「Power off source machine」兩項設定,這樣便可以在成功移轉主機後,自動完成來源主機的關機,以及目的地虛擬機器的開機操作。
如圖18所示,在「Helper VM network configuration」選項設定中,可自訂移轉後的虛擬機器網路配置,例如IPv4、IPv6以DNS。在此假如不打算關閉來源主機的運行,那麼為了避免來源主機與移轉後的虛擬機器在線上發生IP位址的衝突,便可手動設定一組尚未使用的IP位址。設定完畢,按下〔Next〕按鈕。
在「Summary」頁面中確認上述步驟設定皆無誤後,按下〔Finish〕按鈕開始進行線上移轉任務。圖19所示是正在執行移轉任務的狀態資訊,可以從「Status」欄位中得知移轉的進度狀態,若從下方的「Summary」子頁面中,則可查看到關於來源與目的地系統的詳細配置資訊,進一步還能切換到「Task progress」子頁面中查看最新移轉的進度資訊,包括已執行的時間以及預估所需的時間長度。
在成功移轉後,可決定要安裝Ubuntu儲存庫所提供的Open VM Tools,還是掛載安裝VMware Tools所提供的ISO映像。前者安裝的方法對於無桌面的命令模式操作環境,只要執行「sudo apt install open-vm-tools」命令參數完成安裝即可。若是針對桌面操作模式的安裝,則執行「sudo apt install open-vm-tools-desktop」命令。
至於後者的安裝方式,只要在ESXi Host Client或vSphere Client網站上,先對於選定的Linux虛擬機器,點選「動作」選單中的【客體作業系統】→【安裝VMware Tools】,然後再進入到該虛擬機器的Guest OS完成安裝設定即可。
手動移轉跨不同vSphere的虛擬機器
如果企業網路中有兩個各自獨立運行的vSphere架構,而想以純手動的方式在它們之間進行移轉,而不想使用其他移轉工具,該怎麼做呢?
方法其實很簡單,首先登入來源的vSphere Client網站,確認選定的虛擬機器已經有事先複製到範本,接著針對此來源的虛擬機器,點選「動作」選單中的【範本】→【匯出OVF範本】。緊接著,在「匯出OVF範本」頁面中輸入要匯出的範本名稱,並在「進階」選項中決定是否要啟用進階選項、包含BIOS UUID、包含MAC地址、包含額外組態。最後,按下〔確定〕按鈕完成匯出操作。
有了虛擬機器範本所匯出的OVF檔案後,就可以將此OVF檔案拿到另一個vSphere架構中,進行新虛擬機器範本的部署。在目的地的vSphere Client網站中,針對選定的叢集或ESXi主機,點選「動作」選單中的【部署OVF範本】選項。
在「選取OVF範本」頁面中,則按下〔上傳檔案〕按鈕,將OVF相關檔案通通完成上傳,然後按下〔下一頁〕按鈕。在「選取名稱和資料夾」頁面中,輸入新虛擬機器的名稱並選取目標位置,並按下〔下一頁〕按鈕。
在「選取計算資源」頁面中,選擇將負責運行新虛擬機器的ESXi主機或叢集。若選擇叢集,則必須確認已預先啟用了DRS功能。在出現了「相容性檢查成功」的訊息後,按下〔下一頁〕按鈕。
在「選取儲存區」頁面中,選擇準備用以存放此虛擬機器檔案的資料存放區,如果在上一個步驟當中選定的是ESXi主機,在此可選擇本機或遠端共用資料存放區。如果選擇叢集,則務必選擇共用的資料存放區,以享有叢集HA的運行保護機制。至於虛擬磁碟的格式,根據虛擬機器的實際運行需要來選擇即可,最後按下〔下一頁〕按鈕。
接著,在「選取網路」頁面中確認已正確選擇所要使用的虛擬機器網路,以便讓完成部署的新虛擬機器可以正常與其他虛擬機器連線,然後按下〔下一頁〕按鈕。最後,在「即將完成」頁面中確認上述步驟的設定,若全部正確便按下〔完成〕按鈕,即可完成匯入操作。
結語
儘管相關vSphere虛擬機器移轉的工具設計已相當實用,但操作介面的整合一直是簡化IT管理的必要手段,只是即便VMware vCenter Converter已經發展至6.4版本,但至今仍是一個獨立的Windows工具,並沒有整合至vSphere Client網站中,有趣的是,即便是第三方的移轉工具也尚未完成相關整合,關於這點相當可惜。期盼官方未來能夠將VMware vCenter Converter工具融入vSphere Client介面中,這樣對於IT人員來說不僅可以有一致性的操作體驗,對於許多關於虛擬機器的移轉記錄,也能夠在vSphere Client網站上直接查詢,有助於在中大型網路環境下的維運效率。
<本文作者:顧武雄,Microsoft MVP 2004-2016、MCITP與MCTS認證專家、台灣微軟Technet、TechDays、Webcast、MVA特約資深顧問講師、VMware vExpert 2016-217、IBM Unified Communications/Notes/Domino/Connections Certified。>