共用方式為


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

適用於: 是,適用於 Pro GPU SKUAzure Stack Edge Pro - GPU是,適用於 Pro 2 SKUAzure Stack Edge Pro 2是,適用於 Pro R SKUAzure Stack Edge Pro R是,適用於 Mini R SKUAzure 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 佈建逾時的情況下,您會看到下列錯誤:

當 VM 佈建在 Azure Stack Edge 中逾時時,Azure 入口網站 中顯示的錯誤螢幕快照。

下列問題是 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 位址,但該靜態 IP 位址已在使用中,因此 VM 佈建失敗。 當 IP 位址在部署 VM 的子網路中使用時,就會發生此錯誤。 當您透過 Azure 入口網站部署 VM 時,此程序會檢查裝置內現有的 IP 位址,但無法檢查可能也位於子網路中其他服務或虛擬機器的 IP 位址。

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

若要檢查重複的 IP 位址:

  • 從相同網路上的任何設備執行下列 ping 和 Test-NetConnection (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。 選取您感興趣的連接埠,然後檢視網路設定。

    Azure Stack Edge 裝置的網路頁面螢幕快照,其中顯示埠 2 的網路設定。

cloud init 問題 (Linux VM)

錯誤描述:cloud init未執行,或執行時cloud init發生問題。 cloud-init 可用來在 VM 初次開機時自訂 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 時,cloud init 記錄中的項目看起來會類似下列項目。

    VM 映射的 cloud-init 記錄項目圖例,其中數據源設定為 Azure。識別文字會反白顯示。

    如果數據源未設定為 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. 如果網路介面未成功建立,您會看到下列錯誤。

    在 Azure Stack Edge 裝置上的 VM 部署期間,網路介面建立失敗時,Azure 入口網站 中顯示的錯誤螢幕快照。

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

VM 建立問題

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

VM 建立失敗

錯誤描述: 如果您已使用 Azure Stack Edge 早於 2403 建立 Marketplace 映射,然後從現有的 Marketplace 映射建立 VM,您的 VM 建立會失敗,因為 Azure Stack Edge 2407 已變更 Marketplace 映射的下載路徑。

建議的解決方案:使用下列步驟刪除現有的 Marketplace 映射,然後從 Azure 入口網站 建立新的 Marketplace 映射。

  1. 從 Azure 入口網站 刪除現有的 Marketplace 映像。

    1. 列出 Marketplace 映射的擷取和 BlobDownload 擷取作業。 使用下列步驟連線 到 Azure Resource Manager

      執行下列文稿以列出擷取作業:

      在下列 URI 中指定訂用帳戶識別碼:

      $uri 1 = “https://management.appliance name。DNS 網域/subscriptions/sid/providers/Microsoft.AzureBridge/locations/DBELocal/ingestionJobs/?api-version=2022-03-01”

      Function Get-AzCachedAccessToken() 
      {
      $ErrorActionPreference = 'Stop' 
      $azureRmProfile = [Microsoft.Azure.Commands.Common.Authentication.Abstractions.AzureRmProfileProvider]::Instance.Profile 
      $currentAzureContext = Get-AzContext 
      $profileClient = New-Object Microsoft.Azure.Commands.ResourceManager.Common.RMProfileClient($azureRmProfile) 
      Write-Debug ("Getting access token for tenant" + $currentAzureContext.Subscription.TenantId) 
      $token = $profileClient.AcquireAccessToken($currentAzureContext.Subscription.TenantId) 
      $token.AccessToken 
      } 
      
      $token = Get-AzCachedAccessToken 
      $headers = @{Authorization = "Bearer $token"; "Content-Type" = "application/json" } 
      $v = Invoke-RestMethod -Method Get -Uri $uri1 -Headers $headers 
      v.value
      
    2. 尋找擷取作業名稱 = Marketplace image sku name 和 kind = BlobDownload

      範例:擷取作業名稱 = Ubuntu-18-04 和 kind = BlobDownload

      尋找擷取作業名稱的範例語法螢幕快照。

  2. 如果在步驟 1 中找到擷取作業,請使用下列步驟來刪除擷取作業並刪除映像。 例如,上述範例中的擷取作業名稱是 ubuntu-18-04。 此外, Subscription ID 您可以在範例中找到和 Resource group 名稱。

    $uri2 = "https://management.<appliance name>.<DNS domain>/subscriptions/sid/resourceGroups/rgname/providers/Microsoft.AzureBridge/locations/dbelocal/ingestionJobs/<ingestion job name>?api-version=2018-06-01" 
    
    Invoke-RestMethod -Method DELETE -Uri $uri2 -Headers $headers
    
  3. 請遵循從 Azure Marketplace 建立新的 VM 映射的步驟

記憶體不足,無法建立 VM

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

在 Azure Stack Edge 裝置上建立 VM 失敗時,Azure 入口網站 中顯示的錯誤螢幕快照。

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

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

建議的解決方案:

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

GPU 數目不足,無法建立 GPU VM

如果您嘗試在已啟用 Kubernetes 的 GPU 裝置上部署 VM,則沒有可用的 GPU,且 VM 布建失敗,並出現下列錯誤:

建立 GPU VM 時,Azure 入口網站 中顯示的錯誤螢幕快照,因為 Azure Stack Edge 裝置上沒有可用的 GPU 而失敗。

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

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

下一步