探索和評估 Google Cloud Platform (GCP) VM 並將其遷移至 Azure

本教學課程說明如何使用 Azure Migrate:伺服器評量和移轉和現代化工具,探索、評估和移轉 Google Cloud Platform (GCP) 虛擬機 (VM) 至 Azure VM。

在本教學課程中,您會了解如何:

  • 確認移轉的必要條件。
  • 使用移轉和現代化工具準備 Azure 資源。 設定 Azure 帳戶和資源的許可權,以使用 Azure Migrate 和現代化。
  • 準備 GCP VM 實例以進行移轉。
  • 在 Azure Migrate 和現代化中樞中新增移轉和現代化工具。
  • 設定複寫設備並部署組態伺服器。
  • 在您想要移轉的 GCP VM 上安裝 行動服務。
  • 啟用 VM 複寫。
  • 追蹤和監視複寫狀態。
  • 執行測試移轉,確定一切都沒問題。
  • 執行對 Azure 的完整移轉。

如果您沒有 Azure 訂用帳戶,請在開始前建立免費帳戶

探索與評定

在移轉至 Azure 之前,建議您執行 VM 探索和移轉評估。 此評量可協助適當調整 GCP VM 的大小,以移轉至 Azure 並估計潛在的 Azure 執行成本。

若要設定評量:

  1. 請遵循教學 課程 來設定 Azure,並準備您的 GCP VM 以進行評量。 請注意:

    • Azure Migrate 和現代化會使用密碼驗證來探索 GCP VM 實例。 根據預設,GCP 實例不支援密碼驗證。 您必須先啟用密碼驗證,才能探索實例。
      • 針對 Windows 計算機,允許 WinRM 連接埠 5985 (HTTP)。 此埠允許遠端 WMI 呼叫。
      • 針對 Linux 機器:
        1. 登入每個 Linux 電腦。
        2. 開啟sshd_config檔案:vi /etc/ssh/sshd_config
        3. 在檔案中,找出 PasswordAuthentication 這一行,並將值變更為 yes
        4. 儲存並關閉檔案。 重新啟動 ssh 服務。
    • 如果您使用根使用者來探索Linux VM,請確定 VM 上允許根登入。
      1. 登入每個 Linux 電腦。
      2. 開啟sshd_config檔案:vi /etc/ssh/sshd_config
      3. 在檔案中,找出 PermitRootLogin 這一行,並將值變更為 yes
      4. 儲存並關閉檔案。 重新啟動 ssh 服務。
  2. 然後,遵循本教學 課程 來設定 Azure Migrate 專案和設備,以探索及評估您的 GCP VM。

雖然我們建議您試用評定,但執行評量並不是移轉 VM 的必要步驟。

必要條件

  • 請確定您要移轉的 GCP VM 正在執行支援的作業系統 (OS) 版本。 GCP VM 會被視為移轉的實體機器。 檢閱 實體伺服器移轉工作流程支援的操作系統和核心版本 。 您可以使用 或 uname -a 之類的hostnamectl標準命令來檢查 Linux VM 的 OS 和核心版本。 建議您先執行測試移轉,以驗證 VM 是否如預期般運作,再繼續進行實際的移轉。
  • 請確定您的 GCP VM 符合 移轉至 Azure 的支援設定
  • 確認您復寫至 Azure 的 GCP VM 符合 Azure VM 需求
  • 在將 VM 遷移至 Azure 之前,需要對 VM 進行一些變更:
    • 對於某些作業系統,Azure Migrate 和現代化會自動進行這些變更。
    • 請先進行這些變更再開始移轉。 如果您先遷移 VM 再進行變更,VM 可能無法在 Azure 中啟動。 請參閱您所需進行的 WindowsLinux 變更。

準備 Azure 資源以進行移轉

準備 Azure 以使用移轉和現代化工具進行移轉。

Task 詳細資料
建立 Azure Migrate 專案 您的 Azure 帳戶需要參與者或擁有者權限,才能建立新專案
驗證您 Azure 帳戶的權限 您的 Azure 帳戶需有建立 VM 以及寫入至 Azure 受控磁碟的權限。

指派建立專案的權限

  1. 在 Azure 入口網站中開啟訂用帳戶,然後選取 [存取控制 (IAM)]
  2. 在 [檢查存取權] 中尋找相關帳戶,並選取帳戶以檢視權限。
  3. 您應該會具有「參與者」或「擁有者」權限。
    • 如果您剛建立免費的 Azure 帳戶,您就是訂用帳戶的擁有者。
    • 如果您不是訂用帳戶擁有者,請與擁有者合作以指派角色。

指派 Azure 帳戶權限

將 VM 參與者角色指派給 Azure 帳戶。 此角色會提供執行下列動作的權限:

  • 在所選的資源群組中建立 VM。
  • 在所選的虛擬網路中建立 VM。
  • 寫入至 Azure 受控磁碟。

建立 Azure 網路

設定 Azure 虛擬網路。 當您復寫至 Azure 時,所建立的 Azure VM 會加入您設定移轉時所指定的 Azure 虛擬網路。

準備 GCP 實例以進行移轉

若要準備 GCP 至 Azure 移轉,您需要準備和部署複寫設備以進行移轉。

準備複寫設備的機器

移轉和現代化工具會使用複寫設備將機器複寫至 Azure。 複寫設備會執行下列元件:

  • 組態伺服器:組態伺服器會協調 GCP VM 與 Azure 之間的通訊,並管理數據復寫。
  • 處理序伺服器:處理序伺服器可作為複寫閘道。 其會使用快取、壓縮和加密來接收複寫資料並將該資料最佳化。 然後,將資料傳送至 Azure 中的快取儲存體帳戶。

若要準備設備部署:

  • 設定個別的 GCP VM 來裝載復寫設備。 這個實例必須執行 Windows Server 2012 R2 或 Windows Server 2016。 檢閱 設備的硬體、軟體和網路需求。

  • 設備不應該安裝在您想要復寫的來源 VM 上,或安裝在 Azure Migrate 上:探索和評估設備之前可能已安裝。 它應該部署在不同的 VM 上。

  • 要移轉的來源 GCP VM 應該具有複寫設備的網路線。 設定必要的防火牆規則以啟用此功能。 建議您將復寫設備部署在與要移轉的來源 VM 相同的虛擬私人雲端 (IMF) 網路中。 如果復寫設備必須位於不同的 VPN 中,則 VPN 必須透過 VPN 對等互連進行連線。

  • 來源 GCP VM 會與埠 HTTPS 443(控制通道協調流程)和 TCP 9443(數據傳輸)輸入上的復寫設備通訊,以進行復寫管理和復寫數據傳輸。 復寫設備接著會協調複寫數據,並透過埠 HTTPS 443 輸出將複寫數據傳送至 Azure。 若要設定這些規則,請使用適當的埠和來源IP資訊編輯安全組輸入/輸出規則。

    顯示 GCP 防火牆規則的螢幕快照。

    顯示編輯防火牆規則的螢幕快照。

  • 複寫設備會使用 MySQL。 檢閱在設備上安裝 MySQL 的選項

  • 檢閱複寫設備存取公用政府雲端所需的 Azure URL。

設定複寫設備

移轉的第一個步驟是設定複寫設備。 若要設定 GCP VM 移轉的設備,您必須下載裝置的安裝程式檔案,然後在您備妥VM 上執行它。

下載複寫設備安裝程式

  1. 在 Azure Migrate 專案中,選取 [伺服器]、[資料庫] 和 [Web 應用程式>移轉和現代化>探索]。

    顯示 [探索] 按鈕的螢幕快照。

  2. 在 [探索機器]>[機器是否已虛擬化?] 中,選取 [未虛擬化/其他]

  3. 在 [目標區域] 中,選取您要將機器遷移到的 Azure 區域。

  4. 選取 [確認移轉的目標區域為 <區域名稱>]。

  5. 選取 [建立資源]。 此步驟會在背景中建立 Azure Site Recovery 保存庫。

    • 如果您已經使用移轉和現代化工具來設定移轉,就無法設定目標選項,因為先前已設定資源。
    • 選取此按鈕之後,您無法變更此項目的目標區域。
    • 若要將 VM 遷移至不同的區域,您必須建立新的或不同的 Azure Migrate 專案。

    注意

    如果您在建立資源時選取私人端點做為 Azure Migrate 專案的連線方法,則也會設定復原服務保存庫進行私人端點連線。 請確定可從複寫設備連線到私人端點。 深入了解

  6. 在 [是否要安裝新的複寫設備?] 中,選取 [安裝複寫設備]

  7. 在 [下載並安裝複寫設備軟體] 中,下載設備安裝程式和註冊金鑰。 您需要此金鑰,才能註冊設備。 金鑰在下載后的五天內有效。

    顯示 [下載] 按鈕的螢幕快照。

  8. 將設備安裝檔案和金鑰檔案複製到您為複寫設備建立的 Windows Server 2016 或 Windows Server 2012 GCP VM。

  9. 執行複寫設備安裝檔案,如下一個程式所述。

    1. 在 [開始之前] 底下,選取 [安裝組態伺服器和進程伺服器],然後選取 [下一步]。
    2. [第三方軟體授權] 中,選取 [ 我接受第三方許可協定 ],然後選取 [ 下一步]。
    3. 在 [註冊] 中,選取 [流覽],然後移至放置保存庫註冊密鑰檔案的位置,然後選取 [下一步]。
    4. [因特網 設定] 中,選取 [連線 至沒有 Proxy 伺服器的 Azure Site Recovery],然後選取 [下一步]。
    5. [ 必要條件檢查 ] 頁面會執行檢查數個專案。 完成後,請選取 [ 下一步]。
    6. [MySQL 組態] 中,輸入 MySQL 資料庫的密碼,然後選取 [ 下一步]。
    7. 在 [ 環境詳細數據] 中,選取 [ ]。 您不需要保護 VM。 然後選取下一步
    8. [安裝位置] 中,選取 [下一步 ] 以接受預設值。
    9. 在 [ 網络選取] 中,選取 [ 下一步 ] 以接受預設值。
    10. 在 [摘要],選取 [安裝]。
    11. 安裝進度 會顯示安裝程序的相關信息。 完成之後,請選取 [ 完成]。 視窗會顯示有關重新啟動的訊息。 選取 [確定]。
    12. 接下來,視窗會顯示有關組態伺服器連線複雜密碼的訊息。 將複雜密碼複製到剪貼簿,並將複雜密碼儲存在來源 VM 上的暫存文字檔中。 稍後在 行動服務 安裝程序期間,您需要此複雜密碼。
  10. 安裝完成之後,設備設定精靈會自動啟動。 (您也可以使用cspsconfigtool裝置桌面上建立的快捷方式,手動啟動精靈。在本教學課程中,我們會在要復寫的來源 VM 上手動安裝 行動服務。 您必須在此步驟中建立虛擬帳戶,才能繼續進行。 針對虛擬帳戶,請使用 「guest」 做為易記名稱、“username” 作為用戶名稱,並使用 “password” 作為帳戶的密碼。 在啟用複寫階段中,您會使用此虛擬帳戶。

    顯示完成註冊的螢幕快照。

安裝行動服務代理程式

行動服務 代理程式必須預安裝於要移轉的來源 GCP VM 上,才能起始復寫。 您選擇安裝行動服務代理程式的方法,可能取決於您組織的喜好設定和現有工具。 目前不支援 Azure Site Recovery 內建的「推送」安裝方法。 您可能想要考慮的方法:

  1. 將安裝程式 tarball 的內容解壓縮到 GCP VM 上的本機資料夾 (例如 /tmp/MobSvcInstaller),如下所示:

    mkdir /tmp/MobSvcInstaller
    tar -C /tmp/MobSvcInstaller -xvf <Installer tarball>
    cd /tmp/MobSvcInstaller
    
  2. 執行安裝程式指令碼:

    sudo ./install -r MS -v VmWare -q -c CSLegacy
    
  3. 將代理程式註冊至複寫設備:

    /usr/local/ASR/Vx/bin/UnifiedAgentConfigurator.sh -i <replication appliance IP address> -P <Passphrase File Path>
    

啟用 GCP VM 的複寫

注意

透過入口網站,您可以一次新增最多 10 部 VM 以進行複寫。 若要同時復寫更多 VM,您可以分批新增 10 個 VM。

  1. 在 Azure Migrate 專案中,選取 [伺服器]、[資料庫] 和 [Web 應用程式>移轉和現代化>復寫]。

    顯示選取 [複寫] 的螢幕快照。

  2. 在 [復寫] 中,>[來源設定>您的計算機是否虛擬化?],選取 [未虛擬化/其他]。

  3. 在 [內部部署設備] 中,選取您設定的 Azure Migrate 設備的名稱。

  4. 在 [處理序伺服器] 中,選取複寫設備的名稱。

  5. 在 [來賓認證] 中,請選取先前在複寫安裝程式設定期間建立的虛擬帳戶,來手動安裝行動服務。 (不支援推送安裝。)接著選取 [下一步:虛擬機器]

    顯示 [複寫設定] 的螢幕快照。

  6. 在 [虛擬機器] 的 [從評量匯入移轉設定?] 中,保留預設設定 [否,我將手動指定移轉設定]

  7. 檢查您要遷移的每個 VM。 然後選取 [下一步:目標設定]。

    顯示選取 VM 的螢幕快照。

  8. [目標設定] 中,選取您要移轉的目標訂用帳戶和目標區域,並指定 Azure VM 在移轉後所在的資源群組。

  9. 在 [虛擬網路] 中,選取 Azure VM 在移轉後將加入的 Azure 虛擬網路/子網路。

  10. [快取記憶體帳戶] 中,保留默認選項,以使用為項目自動建立的快取記憶體帳戶。 如果您想要指定不同的儲存體帳戶,用作複寫的快取儲存體帳戶,請使用下拉式清單。

    注意

    • 如果您已選取私人端點做為 Azure Migrate 專案的連線方法,請將復原服務保存庫的存取權授與快取儲存體帳戶。 深入了解
    • 若要使用 ExpressRoute 搭配私人對等互連進行複寫,請為快取記憶體帳戶建立私人端點。 深入了解
  11. 可用性選項中,選取:

    • 可用性區域:將已移轉的機器釘選到該區域中特定的可用性區域。 使用此選項可將形成多節點應用程式層的伺服器散發到可用性區域。 如果選取此選項,則必須在 [計算] 索引標籤中指定要用於每部所選電腦的可用性區域。只有選取要移轉的目標區域支援可用性區域時,才可以使用此選項。
    • 可用性設定組:將移轉的計算機放在可用性設定組中。 選取的目標資源群組必須有一或多個可用性設定組,才能使用此選項。
    • 不需要基礎結構備援:如果您不需要移轉機器的其中一個可用性設定,請使用此選項。
  12. 磁碟加密類型中,選取:

    • 使用平台代控金鑰進行待用加密。
    • 使用客戶自控金鑰進行待用加密。
    • 使用平台代控金鑰和客戶自控金鑰進行雙重加密。

    注意

    若要使用客戶自控金鑰複寫 VM,您必須在目標資源群組下建立磁碟加密集。 磁碟加密集物件會將受控磁碟對應至 Azure Key Vault 執行個體,其中包含要用於伺服器端加密的客戶自控金鑰。

  13. 在 [Azure Hybrid Benefit] 中:

    • 如果您不想套用 Azure Hybrid Benefit,請選取 [否]。 然後選取 [下一步]。
    • 如果您有使用中軟體保證或 Windows Server 訂用帳戶涵蓋的 Windows Server 機器,而且您想要將權益套用至您要移轉的機器,請選取 [是]。 然後選取下一步

    顯示 [目標設定] 的螢幕快照。

  14. 請檢閱計算中的 VM 名稱、大小、OS 磁碟類型和可用性設定 (如果有在上一個步驟中選取)。 VM 必須符合 Azure 需求

    • VM 大小:如果您要使用評量建議,VM 大小下拉式清單會顯示建議的大小。 否則,Azure Migrate 和現代化會根據 Azure 訂用帳戶中最接近的相符項來選擇大小。 或者,您可以在 [Azure VM 大小] 中手動選擇大小。
    • OS 磁碟:指定 VM 的 OS (開機) 磁碟。 OS 磁碟是具有作業系統開機載入器和安裝程式的磁碟。
    • 可用性區域:指定要使用的可用性區域。
    • 可用性設定組:指定要使用的可用性設定組。
  15. 在 [磁碟] 中,指定是否應將 VM 磁碟複寫至 Azure,並選取 Azure 中的磁碟類型 (標準 SSD/HDD 或進階受控磁碟)。 然後選取下一步

    • 您可以排除磁碟複寫。
    • 若排除磁碟,移轉後磁碟即不會出現在 Azure VM。

    顯示 [復寫] 對話框中 [磁碟] 索引標籤的螢幕快照。

  16. 在 [標籤] 中,選擇將標籤新增至您的 VM、磁碟和 NIC。

    顯示 [複寫] 對話框中 [卷標] 索引標籤的螢幕快照。

  17. 在 [檢閱並啟動複寫] 中檢閱設定,然後選取 [複寫],開始進行伺服器的初始複寫。

注意

您可以在複寫開始前隨時更新複寫設定,方法是選取 [管理>複寫機器]。 在複寫啟動後,就無法變更設定。

追蹤和監視複寫狀態

  • 當您選取 [複寫] 時,啟動複寫作業即會開始。
  • 當啟動復寫作業順利完成時,VM 會開始將其初始復寫至 Azure。
  • 初始複寫完成後,就會開始進行差異複寫。 GCP VM 磁碟的累加變更會定期復寫至 Azure 中的復本磁碟。

您可以在入口網站通知中追蹤作業狀態。

您可以選取 [移轉和現代化] 中的 [複寫伺服器] 來監視複寫狀態。

顯示 [複寫伺服器] 選項的螢幕快照。

執行測試移轉

在差異複寫開始後,您可以在對 Azure 執行完整移轉之前,為 VM 執行測試移轉。 強烈建議測試移轉。 它提供機會來探索任何潛在的問題,並在您繼續進行實際的移轉之前加以修正。 建議您在移轉每個 VM 之前,至少針對每個 VM 執行此步驟一次。

  • 執行測試移轉會檢查移轉是否如預期般運作,而不會影響 GCP VM,這仍可運作並繼續復寫。
  • 測試移轉會使用複寫的資料建立 Azure VM 來模擬移轉。 (測試通常會移轉至 Azure 訂用帳戶中的非生產虛擬網路。)
  • 您可以使用複寫的測試 Azure VM 來驗證移轉、執行應用程式測試以及解決任何問題,然後再進行完整移轉。

若要執行測試移轉:

  1. 在 [移轉目標] 中,選取 [伺服器]、[資料庫] 和 [Web 應用程式>] [移轉和現代化>測試已移轉的伺服器]。

    顯示測試移轉伺服器的螢幕快照。

  2. 以滑鼠右鍵按下要測試的 VM,然後選取 [ 測試移轉]。

    顯示選取測試移轉後結果的螢幕快照。

  3. 在 [測試移轉] 中,選取 Azure VM 在移轉後將位於其中的 Azure 虛擬網路。 建議您使用非生產虛擬網路。

  4. 測試移轉作業隨即啟動。 請在入口網站通知中監視作業。

  5. 移轉完成之後,請在 Azure 入口網站的 [虛擬機器] 中檢視已遷移的 Azure VM。 機器名稱會具有尾碼 -Test

  6. 測試完成之後,以滑鼠右鍵按一下 [複寫機器] 中的 Azure VM,然後選取 [清除測試移轉]

    顯示測試移轉清除後結果的螢幕快照。

    注意

    您現在可以向 SQL VM RP 註冊執行 SQL Server 的伺服器,以使用 SQL IaaS 代理程式延伸模組,來利用自動修補、自動備份和簡化的授權管理。

    • 選取 [管理]>[複寫伺服器]>[包含 SQL Server 的機器]>[計算和網路],然後選取 [是] 向 SQL VM RP 註冊。
    • 如果您有 SQL Server 執行個體具備有效的軟體保證或 SQL Server 訂閱,且您想要將權益套用至要移轉的電腦上,請選取 [適用於 SQL Server 的 Azure Hybrid Benefit]

移轉 GCP VM

確認測試移轉如預期般運作之後,您可以移轉 GCP VM。

  1. 在 Azure Migrate 專案中,選取 [伺服器、資料庫和 Web 應用程式]>[移轉和現代化]>[複寫伺服器]

    顯示複寫伺服器的螢幕快照。

  2. 在 [複寫機器] 中,以滑鼠右鍵按一下 VM,然後選取 [移轉]

  3. [移>轉關閉虛擬機] 中,執行沒有數據遺失的計劃性移轉,選取 [是>確定]。

    注意

    當您移轉 GCP VM 時,不支援自動關機。

  4. VM 會啟動移轉作業。 您可以選取入口網站頁面右上方的通知鈴鐺圖示,或移至 移轉和現代化工具的 [作業] 頁面,來檢視作業 狀態。 (選取 工具圖格上的概觀 ,然後從左側功能表中選取 [ 作業 ]。

  5. 作業完成後,您可以從 [虛擬機器] 頁面檢視及管理 VM。

完成移轉

  1. 移轉完成後,以滑鼠右鍵按下 VM,然後選取 [ 停止移轉]。 此動作:
    • 停止 GCP VM 的複寫。
    • 移轉和現代化工具中的復寫伺服器 計數中移除 GCP VM。
    • 清除 VM 的復寫狀態資訊。
  2. 驗證並針對 Azure VM 上的任何 Windows 啟用問題進行疑難排解
  3. 執行任何移轉後應用程式調整,例如更新主機名稱、資料庫連接字串和 Web 伺服器設定。
  4. 在現在於 Azure 中執行的已移轉應用程式上,執行最終的應用程式和移轉接受度測試。
  5. 將流量完全移轉至已遷移的 Azure VM 執行個體。
  6. 更新任何內部文件,以顯示 Azure VM 的新位置和 IP 位址。

移轉後的最佳做法

疑難解答和秘訣

問題: 我在探索到的伺服器清單中看不到我的 GCP VM 以進行移轉。
答: 檢查您的覆寫設備是否符合需求。 請確定行動代理程式已安裝在要移轉的來源 VM 上,並註冊至組態伺服器。 檢查防火牆規則,以啟用復寫設備與來源 GCP VM 之間的網路路徑。

問題:如何? 知道我的 VM 是否已成功移轉?
答:移轉后,您可以從 [虛擬機器] 頁面檢視和管理 VM。 連線 移轉的 VM 進行驗證。

問題: 我無法從先前建立的伺服器評量結果匯入 VM 以進行移轉。
答: 目前,我們不支持匯入此工作流程的評定。 作為因應措施,您可以匯出評量,然後在啟用複寫步驟期間手動選取 VM 建議。

問題: 當我嘗試探索 GCP VM 時,我收到「無法擷取 BIOS GUID」錯誤。
答: 使用根登入進行驗證,而非任何虛擬使用者。 如果您無法使用根使用者,請根據支援矩陣提供的指示,確定使用者上已設定必要的功能。 另請檢閱 GCP VM 支援的作業系統。

問題: 我的復寫狀態未進行中。
答: 檢查您的覆寫設備是否符合需求。 請確定您在復寫設備 TCP 連接埠 9443 和 HTTPS 443 上啟用必要的埠以進行資料傳輸。 請確定沒有與相同項目連線的復寫設備過時的重複版本。

問題: 我無法使用 Azure Migrate 和現代化來探索 GCP 實例,因為遠端 Windows 管理服務的 HTTP 狀態代碼為 504。
答: 請務必檢閱 Azure Migrate 設備需求和 URL 存取需求。 請確定沒有 Proxy 設定封鎖設備註冊。

問題: 在將 GCP VM 遷移至 Azure 之前,我是否需要進行任何變更?
答: 您可能必須先進行下列變更,才能將 GCP VM 遷移至 Azure:

  • 如果您使用 cloud-init 進行 VM 布建,建議您先在 VM 上停用 cloud-init,再將它復寫至 Azure。 VM 上的 cloud-init 所執行的布建步驟可能專屬於 GCP,且在移轉至 Azure 之後無效。 ​
  • 檢閱必要 條件一 節,以判斷操作系統是否有任何必要的變更,再將其移轉至 Azure。
  • 建議您在最終移轉之前執行測試移轉。

下一步

調查適用於 Azure 的雲端採用架構中的雲端移轉旅程