探索、評估和將 Amazon Web Services (AWS) EC2 實例遷移至 Azure

本教學將示範如何利用 Azure Migrate 發現、評估及遷移 Amazon Web Services(AWS)EC2 實例到 Azure 虛擬機。

附註

您可將 AWS 虛擬機視為實體伺服器,並將其移轉至 Azure。

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

  • 確認移轉的先決條件。
  • 準備 Azure 資源,並為你的 Azure 帳號設定權限,以便使用 Azure Migrate。
  • 準備 AWS 彈性運算雲(EC2)實例進行發現、評估與遷移。
  • 將 EC2 實例遷移為實體伺服器到 Azure。

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

探索與評定

在移轉至 Azure 之前,建議您先執行 VM 探索與移轉評估。 此評估有助於在移轉至 Azure 前,為您的 AWS VM 進行適當規模調整,並估算在 Azure 上執行的潛在成本。

若要設定評定:

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

    • Azure Migrate and Modernize 會使用密碼式驗證來探索 AWS 執行個體。 依預設,AWS 執行個體不支援密碼驗證。 您需要先啟用密碼驗證,才能探索執行個體。
      • 針對 Windows 電腦,允許 WinRM 連接埠 5985 (HTTP)。 此連接埠允許遠端 WMI 呼叫。
      • Linux 電腦:
        1. 登入每部 Linux 機器。
        2. 開啟 sshd_config 檔案: vi /etc/ssh/sshd_config。
        3. 在檔案中,找出 PasswordAuthentication 行,並將值變更為 yes。
        4. 儲存並關閉檔案。 重新啟動 ssh 服務。
    • 如果您使用 root 使用者來探索 Linux VM,請確保這些 VM 允許 root 登入。
      1. 登入每部 Linux 機器。
      2. 開啟 sshd_config 檔案: vi /etc/ssh/sshd_config。
      3. 在檔案中,找出 PermitRootLogin 行,並將值變更為 yes。
      4. 儲存並關閉檔案。 重新啟動 ssh 服務。
  2. 然後,遵循本 教學課程 來設定 Azure Migrate 專案和設備,以探索和評估 AWS VM。

雖然我們建議您先進行評估,但執行評估並非移轉 VM 的必要步驟。

若要計劃將 AWS 工作負載遷移到 Azure,請參考 將 Amazon Web Services 的運算遷移到 Azure,其中包含可能符合你使用情境的範例遷移情境。

先決條件

  • 請確保您要移轉的 AWS VMs 正在執行受支援的作業系統 (OS) 版本。 在移轉過程中,AWS VMs 會被視為實體機器來處理。 檢閱實體伺服器移轉工作流程 支援的作業系統和核心版本 。 您可以使用標準命令 (例如 hostnamectl 或 uname -a) 來檢查 Linux VM 的 OS 和核心版本。 在繼續移轉之前,我們建議您先執行測試移轉 (測試容錯移轉),以驗證 VM 是否能如預期運作。
  • 請確定您的 AWS VM 符合移轉至 Azure 的支持組態 。
  • 確認您復寫至 Azure 的 AWS VM 符合 Azure VM 需求。
  • 在將 VM 移轉至 Azure 之前,需要先在 VM 上進行一些變更:
    • 在某些作業系統上,Azure Migrate 和 Modernize 會自動進行這些變更。
    • 在開始移轉之前,進行這些變更相當重要。 如果在進行變更之前就移轉 VM,該 VM 可能無法在 Azure 中啟動。 檢閱您需要進行的 Windows 和 Linux 變更。

準備 Azure 資源以進行移轉

  • 驗證你的 Azure 帳號權限:你的 Azure 帳號需要權限才能建立虛擬機並寫入 Azure 管理的磁碟。
  • 關於建立專案、執行發現、評估與遷移所需的 Azure Migrate 內建角色與權限細節,請參閱 「準備 Azure 帳戶以支援 Azure Migrate」。
  • 在 Microsoft Entra ID 中指定註冊複製設備的權限。 欲了解更多資訊,請參閱 所需權限。
  • 建立一個Azure網路:Set Up一個Azure虛擬網路。 當您複寫至 Azure 時,系統會建立 Azure VM 並將其聯結至您設定移轉時所指定的 Azure VNet。

此外,

  • 檢查 移轉架構。
  • 檢閱 將 Windows Server 2008 伺服器遷移至 Azure 的相關限制。

準備要移轉的 AWS 執行個體

為了準備從 AWS 移轉至 Azure,您需要先準備並部署用於移轉的複寫設備。 實體伺服器遷移(包括 AWS、GCP 或其他雲端)需要獨立的複製設備來執行基於代理的遷移。 你不能用為發現而建立的 Azure Migrate 設備來執行實體伺服器遷移。

為複寫設備準備一部機器

若要準備設備部署:

  • 設定一個獨立的 EC2 VM 來裝載複寫設備。 這個實例必須是運行 Windows Server 2022。 檢閱 設備的硬體、軟體和網路需求。

  • 該設備不應安裝在您要進行複寫的來源 VM 上,也不應安裝在您先前可能已部署的 Azure Migrate:探索與評估設備上。 應該部署在不同的 VM 上。

  • 要移轉的來源 AWS VM 應該能透過網路直達複寫設備。 設定必要的安全性群組規則以啟用此功能。 我們建議將複寫設備部署在與欲移轉之來源 VM 相同的虛擬私有雲端 (VPC) 中。 如果複寫設備需要部署在不同的 VPC 中,則這些 VPC 必須透過 VPC 對等連線加以連接。

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

    顯示 AWS 安全組的螢幕快照。

    顯示編輯安全性設定的螢幕快照。

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

將 EC2 實例遷移為實體伺服器

完成上述要求後,你可以開始將 AWS EC2 實例遷移為實體伺服器。 欲了解更多資訊,請參閱 遷移實體伺服器或運行於其他雲端的伺服器。

疑難排解與秘訣

問題: 我無法在已發現的伺服器清單中看到我的 AWS VM 以進行遷移。
答:檢查您的復寫設備是否符合需求。 請確保要移轉的來源 VM 已安裝 Mobility Agent,且已註冊至 Configuration Server。 請檢查網路設定與防火牆規則,以確保複寫設備與來源 AWS VM 之間的網路路徑可正常連線。

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

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

問題: 我在嘗試探索 AWS VM 時收到「無法擷取 BIOS GUID」錯誤。
答: 一律使用根登入進行驗證,而不是任何虛擬使用者。 也請檢閱 AWS VM 支援的作業系統。

問題: 我的復寫狀態沒有進展。
答:檢查您的復寫設備是否符合需求。 請確保已在複寫設備上啟用必要的連接埠,以進行資料傳輸,包括 TCP 連接埠 9443 與 HTTPS 443。 請確保沒有任何過期或重複的複寫設備版本連線至同一個專案。

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

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

  • 如果您在 VM 佈建時使用 cloud-init,則在將 VM 複寫至 Azure 之前,您可能需要先停用該 VM 上的 cloud-init。 VM 上 cloud-init 所執行的佈建步驟可能是 AWS 特有的步驟,而且在移轉至 Azure 之後將會無效。 ​
  • 如果 VM 是半虛擬化 (PV) VM,而不是硬體 VM,則您可能無法在 Azure 上依現狀予以執行。 PV VM 會在 AWS 中使用自訂開機順序。 執行移轉至 Azure 之前,您可能可以將 PV 驅動程式解除安裝以克服這項挑戰。
  • 我們一向建議在進行最終移轉之前,先執行測試移轉。

問題: 我可以移轉執行 Amazon Linux作系統的 AWS VM 嗎?
答: 執行 Amazon Linux 的 VM 無法如前所述進行移轉,因為 Aws 僅支援 Amazon Linux OS。 若要移轉 Amazon Linux 上執行的工作負載,您可以在 Azure 中啟動 RHEL VM。 然後,即可使用相關的工作負載移轉方式,來移轉 AWS Linux 機器上執行的工作負載。 例如,根據工作負載,可能會有工作負載特定工具可協助移轉。 這些工具可能適用於網頁伺服器的資料庫或部署工具。

後續步驟

研究 Azure 雲端採用框架中的 雲端移轉過程。