針對 Azure Stack Edge Pro GPU 中的 VM 部署進行疑難排解

適用于: Yes for Pro GPU SKU Azure Stack Edge Pro - GPU Yes for Pro 2 SKU Azure Stack Edge Pro 2 Yes for Pro R SKU Azure Stack Edge Pro R Yes for Mini R SKU Azure Stack Edge Mini R

本文說明如何在 Azure Stack Edge Pro GPU 裝置上部署虛擬機器時針對常見錯誤進行疑難排解。 本文提供在網路介面和 VM 建立期間造成 VM 布建逾時和問題之最常見問題的指引。

若要診斷任何 VM 布建失敗,您將檢閱失敗虛擬機器的客體記錄。 如需收集 VM 客體記錄並將其包含在支援套件中的步驟,請參閱 收集 Azure Stack Edge Pro 上 VM 的客體記錄。

如需在 VM 部署之前防止成功上傳 VM 映射的問題指引,請參閱 針對 Azure Stack Edge Pro GPU 中的虛擬機器映射上傳進行疑難排解。

VM 布建逾時

本節提供 VM 布建逾時最常見原因的疑難排解。

當 VM 布建逾時時,您會看到下列錯誤:

Screenshot of the error displayed in the Azure portal when VM provisioning times out in Azure Stack Edge.

下列問題是 VM 布建逾時的主要原因:

  • 您指派給 VM 的 IP 位址已在使用中。 深入了解
  • 您用來部署 VM 的 VM 映射未正確備妥。 深入了解
  • 無法從客體 VM 連線到預設閘道和 DNS 伺服器。 深入了解
  • cloud init 安裝期間, cloud init 未執行或執行時發生問題。 (僅限 Linux VM) 瞭解更多資訊
  • 對於使用自訂 VM 映射部署的 Linux VM,/etc/waagent.conf 檔案中的布建旗標不正確。 (僅限 Linux VM) 瞭解更多資訊
  • 連結至已啟用 SRIOV 之虛擬交換器 的主要網路介面深入瞭解

指派給 VM 的 IP 已在使用中

錯誤描述: VM 已獲派靜態 IP 位址,且 VM 布建失敗。 當 IP 位址在部署 VM 的子網中使用時,就會發生此錯誤。 當您透過Azure 入口網站部署 VM 時,此程式會檢查裝置內現有的 IP 位址,但無法檢查可能也位於子網上之其他服務或虛擬機器的 IP 位址。

建議的解決方案: 使用未使用的靜態 IP 位址,或使用 DHCP 伺服器提供的動態 IP 位址。

若要檢查重複的 IP 位址:

  • 從相同網路上的任何設備執行下列 ping 和 Test-Net連線ion ( tnc ) 命令:

    ping <IP address>
    tnc <IP address>
    tnc <IP address> -CommonTCPPort “RDP”
    

如果您收到回應,則指派給新 VM 的 IP 位址已在使用中。

VM 映射未正確備妥

錯誤描述: 若要準備 VM 映射以用於 Azure Stack Edge Pro GPU 裝置,您必須遵循特定的工作流程。 您必須在 Azure 中建立 gen1 虛擬機器、自訂 VM、一般化 VHD,然後下載該虛擬機器的 OS VHD。 備妥的映射必須是具有 「vhd」 副檔名和固定類型的 gen1 VHD。

如需需求的概觀,請參閱 建立 Azure Stack Edge Pro GPU 裝置 的自訂 VM 映射。 如需解決 VM 映射問題的指引,請參閱 針對 Azure Stack Edge Pro GPU 中的虛擬機器映射上傳進行疑難排解。

建議的解決方案: 完成工作流程以準備您的 VM 映射。 如需指引,請參閱下列其中一篇文章:

無法從客體 VM 連線到閘道、DNS 伺服器

錯誤描述: 如果 VM 部署期間無法連線到預設閘道和 DNS 伺服器,VM 布建將會逾時,且 VM 部署將會失敗。

建議的解決方案: 確認可以從 VM 連線到預設閘道和 DNS 伺服器。 然後重複 VM 部署。

若要確認可從 VM 連線到預設閘道和 DNS 伺服器,請執行下列步驟:

  1. 連線至 VM

  2. 執行下列命令:

    ping <default gateway IP address>
    ping <DNS server IP address>
    

    若要瞭解預設閘道和 DNS 伺服器的 IP 位址,請移至裝置的本機 UI。 選取您感興趣的埠,並檢視網路設定。

    Screenshot of the Network page for an Azure Stack Edge device with Network settings for Port 2 displayed.

cloud init 問題 (Linux VM)

錯誤描述: cloud init 未執行,或執行時 cloud init 發生問題。 cloud-init 第一次開機時,會用來自訂 Linux VM。 如需詳細資訊,請參閱 Azure 中虛擬機器的 cloud-init 支援。

建議的解決方案: 若要找出執行時 cloud init 所發生的問題:

  1. 連線至 VM

  2. cloud init檢查下列記錄檔中的錯誤:

    • /var/log/cloud-init-output.log
    • /var/log/cloud-init.log
    • /var/log/waagent/log

若要檢查一些無法 cloud init 順利執行的最常見問題,請執行下列步驟:

  1. 請確定 VM 映射是以 為基礎 cloud init 。 執行以下命令:

    cloud-init --version

    命令應該會傳回 cloud init 版本號碼。 如果映射不是 cloud init 以為基礎,命令將不會傳回版本資訊。

    若要取得選項的說明 cloud init ,請執行下列命令:

    cloud-init --help

  2. 請確定 cloud init 實例可以順利執行,並將資料來源設定為 Azure

    當資料來源設定為 Azure 時,雲端 init 記錄中的 專案看起來會類似下列專案。

    Illustration of a cloud-init log entry for a VM image with the Data Source set to Azure. The identifying text is highlighted.

    如果資料來源未設定為 Azure,您可能需要修改腳本 cloud init 。 如需詳細資訊,請參閱 深入探討 cloud-init

布建旗標設定不正確 (Linux VM)

錯誤描述: 若要在 Azure 中成功部署 Linux VM,必須在映射上停用布建,而且必須啟用使用 cloud init 布建。 設定這些值的布建旗標會針對標準 VM 映射正確設定。 如果您使用自訂 VM 映射,您必須確定它們正確無誤。

建議的解決方案: 確定 /etc/waagent.conf 檔案中的 布建旗標具有下列值:

功能 必要值
啟用布建 Provisioning.Enabled=n
依賴 cloud-init 進行布建 Provisioning.UseCloudInit=y

連接至已啟用 SRIOV 之虛擬交換器的主要網路介面

錯誤描述: 連接至單一根目錄 I/O 虛擬化(SRIOV) 介面的虛擬交換器的主要網路介面導致網路流量略過 hyper-v,因此主機無法從 VM 接收 DHCP 要求,導致布建逾時。

建議的解決方案:

  • 連線 VM 主要網路介面至虛擬交換器,而不啟用加速網路。

  • 在 Azure Stack Edge Pro 1 裝置上,在埠 1 到埠 4 上建立的虛擬交換器不會啟用加速網路功能。 在埠 5 或埠 6 上,虛擬交換器預設會啟用加速網路功能。

  • 在 Azure Stack Edge Pro 2 裝置上,在埠 1 或埠 2 上建立的虛擬交換器不會啟用加速網路功能。 在埠 3 或埠 4 上,虛擬交換器預設會啟用加速網路功能。

網路介面建立問題

本節提供在 VM 部署期間造成網路介面建立失敗的問題指引。

NIC 建立逾時

錯誤描述: 在允許的逾時期間內,在 VM 上建立網路介面未完成。 此失敗可能是由您環境中的 DHCP 伺服器問題所造成。

若要確認網路介面是否已成功建立,請執行下列步驟:

  1. 在Azure 入口網站中,移至您裝置的 Azure Stack Edge 資源(移至 Edge 服務 > 虛擬機器)。 然後選取 [ 部署 ],然後流覽至 VM 部署。

  2. 如果網路介面未成功建立,您會看到下列錯誤。

    Screenshot of the error displayed in the Azure portal when network interface creation fails during VM deployment on an Azure Stack Edge device.

建議的解決方案: 再次建立 VM,並為其指派靜態 IP 位址。

VM 建立問題

本節涵蓋 VM 建立期間發生的常見問題。

記憶體不足,無法建立 VM

錯誤描述: 當 VM 建立因為記憶體不足而失敗時,您會看到下列錯誤。

Screenshot of the error displayed in the Azure portal when VM creation fails on an Azure Stack Edge device.

建議的解決方案: 檢查裝置上的可用記憶體,並據以選擇 VM 大小。 如需詳細資訊,請參閱 Azure Stack Edge 上支援的虛擬機器大小。

VM 部署可用的記憶體受限於數個因素:

  • 裝置上的可用記憶體數量。 如需詳細資訊,請參閱 Azure Stack Edge Pro GPU 技術規格 和 Azure Stack Edge Mini R 技術規格中的 計算和 記憶體規格

  • 如果已啟用 Kubernetes,Kubernetes 叢集上的 Kubernetes 和應用程式所需的計算記憶體。

  • Hyper-V 中每個虛擬機器的額外負荷。

建議的解決方案:

  • 使用需要較少記憶體的 VM 大小。
  • 在您部署新的 VM 之前,請先停止未從入口網站使用的任何 VM。
  • 刪除不再使用的任何 VM。

建立 GPU VM 的數目不足

如果您嘗試在已啟用 Kubernetes 的 GPU 裝置上部署 VM,則不會提供任何 GPU,且 VM 布建將會失敗,並出現下列錯誤:

Screenshot of the error displayed in the Azure portal when creation of a GPU VM fails because of no available GPUs on an Azure Stack Edge device.

可能的原因: 如果在建立 VM 之前啟用 Kubernetes,Kubernetes 將會使用所有可用的 GPU,而且您將無法建立任何 GPU 大小 VM。 您可以建立與可用 GPU 數目一樣多的 GPU 大小 VM。 您的 Azure Stack Edge 裝置可以配備 1 或 2 個 GPU。

建議的解決方案: 如需已設定 Kubernetes 之 1-GPU 或 2 GPU 裝置上的 VM 部署選項,請參閱 GPU VM 和 Kubernetes

下一步