共用方式為


針對 Azure 虛擬桌面中的會話主機設定和會話主機更新進行疑難解答

重要

Azure 虛擬桌面的會話主機更新目前為預覽狀態。 請參閱 Microsoft Azure 預覽版增補使用規定,以了解適用於 Azure 功能 (搶鮮版 (Beta)、預覽版,或尚未正式發行的版本) 的法律條款。

Azure 虛擬桌面中的會話主機更新可讓您使用會話主機設定,輕鬆地更新主機集區中的會話主機虛擬機(VM)。 本文可協助您針對可能會遇到的一些問題進行疑難排解。

建立主機集區時無法建立工作階段主機組態

建立工作階段主機組態時,會在延伸驗證期間檢查針對組態提供的參數。 如果服務的結論是無法使用所提供的參數成功建立會話主機,驗證可能會失敗。 當 Azure 資源儲存在您的訂用帳戶中時,其他程式可以修改這些資源;即使完成此驗證檢查,會話主機建立仍會失敗。

以下是一些範例失敗:

  • VM 可用性:無法使用 VM SKU 名稱、區域、可用性區域和訂用帳戶的組合。 可能導致的一些錯誤包括 VmSkuNotAvailableInRegionVmSkuNotAvailableInRegionDueToRestrictionAvailabilityZoneNotAvailable。 您必須檢閱所選區域和訂用帳戶配額的 VM 大小和可用性區域可用性,並提供支持的組合。 使用 PowerShell Cmdlet Get-AzComputeResourceSku 來識別指定 VM SKU 和區域組合的限制。

  • 參數兼容性:VM SKU、磁碟、映像和虛擬網路的組合不相容。 可能導致的一些錯誤包括 ComputeSkuIncompatibleWithImageHyperVGenerationImageDiskTypeIncompatibleVnetLocationIncompatible。 檢閱 Azure 虛擬桌面 的必要條件,以確保提供的參數符合會話主機建立的需求。

如果工作階段主機組態在建立主機集區時無法建立,就無法使用 Azure 入口網站建立此主機集區的工作階段主機組態。 您可以使用 PowerShell,透過 New-AzWvdSessionHostConfiguration Cmdlet 建立工作階段主機組態。 或者,您可以先刪除主機集區,再重新建立。

錯誤:SessionHostConfiguration 不存在

如果您在使用 PowerShell cmdlet Get-AzWvdSessionHostConfiguration 時,收到錯誤錯誤:SessionHostConfiguration 不存在,則使用 New-AzWvdSessionHostConfiguration cmdlet 建立工作階段主機組態。

將會話主機新增至主機集區時發生錯誤

我們僅支援透過 Azure 入口網站 將會話主機新增至具有會話主機設定的主機集區。 使用來自標準主機集區的會話主機組態,主機集區之間的主要差異在於,網域加入擴充功能不會與會話主機組態搭配使用。 相反地,Azure 虛擬桌面代理程式會完成網域加入程式。 此方法表示:

  • 即使網域加入失敗,ARM 範本部署仍可成功,導致會話主機狀況不良。
  • 檢視會話主機健全狀況的 JSON,即可在會話主機詳細數據的 Azure 入口網站 中取得網域加入失敗診斷。

針對將會話主機新增至主機集區時網域加入失敗和其他問題,您可以遵循針對會話主機進行疑難解答的指引。

失敗的更新

當您使用工作階段主機更新來更新工作階段主機時,個別工作階段主機可能無法更新。 在此情況下,工作階段主機更新會嘗試復原該工作階段主機上的更新。 回復的目的是要維護整個主機集區的容量,即使此工作階段主機會回復為舊版的工作階段主機組態,而不是強制使工作階段主機無法使用,並減少主機集區的容量。 主機集區已成功更新的其他工作階段主機不會復原。 未啟動更新的工作階段主機不會更新。

一旦工作階段主機無法更新,工作階段主機更新會完成更新目前的工作階段主機批次,然後將更新標示為失敗。 在此案例中,唯一的選項就是重試更新或取消更新。 如果您重試更新,會話主機更新會再次嘗試更新失敗的會話主機,加上先前未嘗試的其餘會話主機。 使用現有的批次大小。

如果工作階段主機無法成功復原,則無法進行主機工作階段,且容量也會降低。 工作階段主機與主機集區中的其他工作階段主機不同,且符合工作階段主機組態。 您應該調查工作階段主機更新失敗的原因,並在排程新的更新之前解決問題。 排程新的更新之後,會話主機更新會嘗試更新失敗的會話主機,使其全部相符,以及先前更新嘗試中未啟動的任何會話主機。

更新有可能失敗,呈現下列狀態:

狀態 描述
無法起始更新 更新流程不正確。 例如,與虛擬機器 SKU 不相容的映像。 您無法重試更新;您需要取消更新並排程新的更新。
更新失敗 更新在進行中失敗。 如果您重試更新,它會繼續進行先前停止的工作階段主機。
工作階段主機回復失敗 如果工作階段主機無法更新,工作階段主機更新會嘗試復原該工作階段主機上的更新。 如果復原失敗,而您重試更新,它會繼續進行先前停止的會話主機。

您可遵循監視更新進度的步驟來取得更新的任何錯誤。 當您使用 Azure PowerShell 時,變數 $updateProgress 在下列屬性中包含錯誤詳細資料:

  • $updateProgress.PropertiesUpdateStatus
  • $updateProgress.UpdateProgressError
  • $updateProgress.UpdateProgressError.FaultText

識別問題之後,您可以重試更新,或取消更新並排程新的更新

更新無法起始

起始會話主機更新時,服務會驗證它是否能順利完成更新。 當會話主機更新在啟動之前失敗時,更新會結束並變更會話主機組態。 當 Azure 資源儲存在您的訂用帳戶中時,其他程式可以修改這些資源;即使完成此驗證檢查之後,會話主機建立仍然可以使用會話主機組態失敗。

以下是一些導致無法啟動更新的範例失敗:

  • 沒有要更新的會話主機:當會話主機更新時沒有要更新的會話主機時,就會傳回錯誤 HostpoolHasNoSessionHosts 。 如果您在起始更新之前未對會話主機設定進行變更,則會傳回此錯誤。

  • 容量問題:驗證會檢查虛擬網路子網和 VM 核心配額中的足夠容量。 這項檢查不保證更新期間的容量;在會話主機更新之外建立其他資源可能會導致與容量限制相關聯的更新期間發生錯誤。 將您的批次大小設定為在訂用帳戶的剩餘配額內。

  • 與目前會話主機的參數一致性:會話主機更新不支援變更會話主機的區域、訂用帳戶、資源群組或網域加入類型。 如果會話主機組態包含與主機集區中會話主機不同的這些字段中的屬性,更新將無法啟動。 您應該移除與設定不一致的工作階段主機。

更新期間失敗

會話主機更新會以初始批次大小 1 開頭,以驗證提供的會話主機設定會導致會話主機狀況良好。 第一個驗證批次期間發生的失敗,通常是因為會話主機組態內的參數,而且通常不會藉由重試更新來解決。 驗證批次之後發生的失敗通常是間歇性的,而且可以藉由 重試更新來解決。

以下是更新期間可能發生的一些範例失敗:

  • VM 建立失敗:VM 建立可能會因為 Azure 虛擬桌面不專屬的各種原因而失敗,例如訂用帳戶容量耗盡或提供的映像問題。 您應檢閱所提供的錯誤訊息,以判斷適當的補救方式。 如果您需要進一步的協助,請使用 Azure 支援 開啟支援案例。

  • 代理程式安裝、網域加入和會話主機健康情況錯誤或逾時:代理程式、網域加入和其他會話主機健康情況錯誤,通常可藉由檢閱解決 Azure 虛擬桌面部署和網域加入失敗的指引,並確保映像未安裝 PowerShell DSC 擴充功能來解決。 如果擴充功能安裝在映像上,請從映像中移除資料夾 C:\packages\plugin 。 如果失敗是間歇性的,某些會話主機成功更新,而其他主機則遇到錯誤,例如 AgentRegistrationFailureGeneric重試更新 通常可以解決問題。

  • 資源修改和存取錯誤:修改在更新中受影響的資源可能會導致更新期間發生錯誤。 其中一些可能導致的錯誤包括刪除資源和資源群組、許可權變更、電源狀態變更,以及清空模式的變更。 此外,如果您的 Azure 資源已鎖定,/或 Azure 原則會限制 Azure 虛擬桌面服務修改您的工作階段主機,更新會失敗。 若您遇到相關錯誤,請檢閱 Azure 活動記錄。 如果您需要進一步的協助,請使用 Azure 支援 開啟支援案例。

傳遞至 New-AzWvdSessionHostConfiguration 的不相容參數

您可以將不相容的參數傳遞至 New-AzWvdSessionHostConfiguration PowerShell Cmdlet。 例如,如果您將參數 DomainInfoJoinType 指定為 AzureActiveDirectory,但也指定 ActiveDirectoryInfoDomainName 具有 Active Directory 功能變數名稱的參數,則會忽略功能變數名稱,而不會傳回錯誤。

下一步