有了 Migrate to Virtual Machines,只需小幅度自動修改,就能將虛擬機器 (VM) 從來源環境遷移至 Compute Engine (隨即轉移)。Migrate to Virtual Machines 採用資料複製技術,會持續將來源 VM 中的磁碟資料複製到 Google Cloud,不會造成來源停機。接著,您可以使用複製的資料建立 VM 副本進行測試,並執行可預測的 VM 轉換作業,以便在 Google Cloud上執行最終工作負載。
資料複製功能可讓 Migrate to Virtual Machines 執行來源 VM 的初始資料複製作業,讓您快速複製及測試已遷移的 VM。不過,由於來源 VM 會在遷移程序 (包括測試期間) 持續執行,因此「遷移至虛擬機器」會持續複製資料,直到您執行遷移至已遷移 VM 的最終切換作業為止。
在遷移程序中建立的 VM 稱為遷移 VM,這些 VM 會在遷移期間和遷移後處於不同的狀態。如要瞭解遷移 VM 的生命週期 (包括到期時間表),請參閱「遷移 VM 的生命週期」。
Migrate to Virtual Machines 已完全整合至 Google Cloud 控制台,因此您可以在 Google Cloud console UI 中執行所有遷移工作。
關於遷移程序
有了 Migrate to Virtual Machines,您就能將 VM 遷移至 Compute Engine。遷移程序會經過以下幾個階段:
啟用:選取要遷移的來源 VM。
複製:將資料從來源 VM 複製到 Google Cloud。資料複製作業是持續性的程序,會在背景執行,直到最終切換或您刪除遷移作業為止。
設定 VM 目標詳細資料:為已遷移的 VM 設定 Compute Engine 設定,例如專案、執行個體類型、記憶體、網路等。
Test-clone:您可以選擇從複製資料建立來源 VM 的 Compute Engine 本機副本,並在 Google Cloud上進行測試。
切換:將來源 VM 遷移至 Compute Engine。這項程序包括停止來源 VM、完成最終複製作業,以及從來源 VM 建立正式的 Compute Engine 執行個體。
完成:在遷移作業順利完成後,執行任何最終清理作業。
下圖顯示這些階段:
下列各節將詳細說明每個階段。
新手上路階段
遷移作業的第一階段是導入階段,您必須在此階段選取要遷移的 VM:
舉例來說,如果是 vSphere 資料中心,Google Cloud 主控台會顯示資料中心的所有 VM。請只選取要遷移至新 VM 的 VM。
複製階段
將 VM 納入服務後,請開始從來源 VM 複製磁碟資料至Google Cloud。來源 VM 會在複製期間繼續執行:
資料複製是持續性的程序,會在背景執行,對來源 VM 的影響降到最低。
資料複製作業包含兩個步驟:
第一個複製步驟:Migrate to Virtual Machines 會建立來源 VM 資料磁碟的初始快照,並將快照資料複製到Google Cloud。視來源 VM 的磁碟資料量而定,第一次複製作業可能需要數分鐘或數小時才能完成。
增量複製步驟:在第一次複製步驟成功後,系統會在設定的時間間隔 (預設為每兩小時) 執行增量複製步驟。在每個步驟中,系統都會為每個資料磁碟建立新的快照。只有在前一個步驟之後發生的資料更新,才會使用變更區塊追蹤 (CBT) 機制複製到Google Cloud 。
開始複製來源 VM 後,複製程序會持續進行,直到您刪除遷移作業為止。
您隨時可以暫停 VM 的複製作業。舉例來說,您可以暫停一或多個 VM 上的複製作業,以減少網路資源,或是為未暫停的遷移 VM 設定較高的優先順序。之後,您可以恢復複寫作業。
OS 調整
為了讓遷移的 VM 在 Google Cloud上正常運作,您可能需要調整這些 VM 的設定。這項程序稱為「OS 調整」。在每個複製步驟完成時,系統會執行作業系統 (OS) 調整程序,為在 Google Cloud中執行的 VM 做好準備。
舉例來說,「遷移至虛擬機器」會調整網路設定、部署 Compute Engine 代理程式,並在已遷移的 VM 上啟用序列主控台。如需更多資訊,請參閱「作業系統調整」,其中包括套用至 Linux 和 Windows VM 的特定調整。
設定目標詳細資料
啟動資料複製作業後,請為遷移的 VM 在 Google Cloud 上設定 Compute Engine 目標環境:
Compute Engine 目標詳細資料會定義Google Cloud中遷移 VM 的著陸區。這些詳細資料包括專案、執行個體類型、網路設定等。Migrate to Virtual Machines 會使用目標詳細資料建立 Compute Engine 執行個體,以便代管已遷移的 VM。
您隨時可以修改目標詳細資料。在測試本機副本或轉換階段為 Compute Engine 執行個體建立例項時,「遷移至虛擬機器」會使用操作時的目標詳細資料設定。
測試本機副本階段
在從來源 VM 完成磁碟資料的初始複製步驟後,您隨時可以將來源 VM 複製到 Compute Engine 執行個體進行測試:
在遷移過程中,您通常會在修改來源 VM 或目標詳細資料時建立本機測試副本。請注意,本機測試副本是來源 VM 的靜態快照,由目前的複製資料和目標詳細資料建立。新的複製資料和目標詳細資料修改內容只會套用至新的測試本機副本,而不會套用至現有的測試本機副本。
雖然這不是必要步驟,但強烈建議您在將 VM 部署至正式環境前,先建立測試副本。測試是遷移程序的重要階段,可確保已遷移的 VM 在 Google Cloud中正常運作。
如果您決定從來源 VM 建立測試複本,Migrate to Virtual Machines 會使用目標詳細資料,從最新的複製資料建立 Compute Engine 執行個體。
注意:來源 VM 會在測試階段持續執行,也就是說資料複製作業也會持續進行。
由於來源 VM 會在測試階段持續執行,因此您必須確保在沙箱環境中執行測試,以便將測試 VM 與原始來源 VM 隔離。
測試 VM 啟動並運作後,您可以驗證測試 VM 是否正常運作,並記錄任何必要的變更,讓 VM 能夠在Google Cloud中運作。測試完成後,您通常會在轉換階段中刪除測試用的 Compute Engine 執行個體,並建立正式版 Compute Engine 執行個體。
轉換階段
在切換階段,Migrate to Virtual Machines 會停止來源 VM,完成複製作業,並在 Compute Engine 上建立新的 VM 執行個體: Google Cloud
在建議的測試階段完成所有驗證後,才應執行切換作業。
轉換階段會造成短暫的 VM 停機時間,應在預定的維護期間進行。您必須先決定維護時段,在這個時段內,您可以停止來源 VM,並將流量重新導向至在 Compute Engine 上執行的已遷移 VM。
在遷移的 VM 上啟動切換作業,會啟動 Migrate to Virtual Machines 執行的以下動作序列:
關閉來源 VM。
執行最終資料複製作業。由於複製作業會在整個遷移階段進行,因此複製的資料量不應太大。如果複製作業正在進行中,則會完成。如果沒有進行中複製作業,請執行最終複製作業。
停止複製。
根據最終複製資料建立 Compute Engine 執行個體。
切換後,請對已遷移的 VM 執行最終驗證。您可以根據切換結果決定後續行動:
轉換失敗:由於某些原因,轉換至 Compute Engine 上的新 VM 執行個體失敗,可能是因為網路問題或其他問題。此時,來源 VM 已停止,且最終的複製資料仍有效。重試切換,看看重試是否能解決錯誤。
切換成功,但新 VM 執行個體無法正常運作:如果 Compute Engine 上的新 VM 執行個體無法正常運作,請刪除 Compute Engine VM,然後啟動來源 VM。這項程序稱為「回溯」。
由於遷移作業的復原程序相當複雜,因此並非自動化流程。如果您必須執行回溯作業,請務必將流量重新導向至來源 VM。此外,請注意,任何在 Compute Engine 執行個體上寫入的資料都不會推送回原始來源 VM。
來源 VM 再次運作後,您就可以診斷並解決遷移錯誤。解決錯誤後,您可以重新啟動複寫作業,然後重試遷移作業。
切換成功,且新的 VM 執行個體正常運作:如果驗證結果判定新的 VM 正常運作,表示遷移作業已完成。
完成階段
切換完成後,您可以完成遷移作業。執行完成作業會刪除與已遷移 VM 相關聯的所有複製資料和所有其他儲存空間資源,並將 VM 的狀態變更為「已完成」。
只有處於切換狀態的 VM 才能執行完成作業:
用於建立 Compute Engine VM 的複製資料會在切換後保留。也就是說,您可以在轉換後使用這些資料,為已遷移的 VM 建立其他執行個體。不過,您最終還是需要在完成階段釋出儲存空間。
完成最終化後,遷移作業只允許執行以下作業:
- 刪除遷移作業
- 新增或移除群組成員