在 Azure 虛擬桌面中設定主機集區負載平衡
Azure 虛擬桌面支援兩種適用於集區式主機集區的負載平衡演算法。 每種演算法都會在使用者啟動遠端工作階段時,決定使用哪個工作階段主機。 負載平衡不適用於個人主機集區,因為使用者一律會在主機集區內以 1 比 1 對應至工作階段主機。
下列負載平衡演算法可用於集區式主機集區:
廣度優先,目的是將新的使用者工作階段平均分散到主機集區中的工作階段主機。 您不需要指定工作階段數目的工作階段上限。
深度優先,這會在一個工作階段主機上持續啟動新的使用者工作階段,直到達到工作階段上限為止。 達到工作階段限制之後,就會將任何新的使用者連線導向主機集區中的下一個工作階段主機,直到達到其工作階段限制為止,依此類推。
每個集區主機集區一次只能設定其中一個負載平衡演算法,但您可以隨時變更哪一個。 這兩種負載平衡演算法都會共用下列行為:
如果使用者已在主機集區中擁有作用中或已中斷連線的工作階段,然後再次登入時,負載平衡器就會使用現有的工作階段,成功將其重新導向至工作階段主機。 即使該工作階段主機已啟用清空模式,仍會套用此行為。
如果使用者在主機集區中的工作階段主機上還沒有工作階段,則負載平衡器不會考慮其中已啟用清空模式的工作階段主機。
當工作階段主機上有作用中的使用者工作階段時,如果您降低工作階段上限,該變更不會影響現有的使用者工作階段。
廣度優先負載平衡演算法
廣度優先負載平衡演算法的目的是將使用者工作階段分散到工作階段主機,進而將工作階段效能最佳化。 廣度優先適用於想要為連線至其遠端資源的使用者提供最佳體驗的組織,因為工作階段主機資源 (例如 CPU、記憶體和磁碟) 通常較少爭用。
廣度優先演算法會先查詢主機集區中允許新連線的工作階段主機。 接著,演算法會在可用工作階段主機的組合中,從其中半數具有最少工作階段的工作階段主機中,隨機選取一個工作階段主機。 例如,如果有 9 個工作階段主機具有 11、12、13、14、15、16、17、18 和 19 個工作階段,新的工作階段不會自動移至具有最少工作階段的工作階段主機。 而是隨機移至前五個具有最少工作階段的工作階段主機中的任何一個。 由於隨機化的緣故,某些工作階段可能不會平均分散到所有工作階段主機。
深度優先負載平衡演算法
深度優先負載平衡演算法的目的是一次填滿一個工作階段主機。 此演算法很適合符合成本效益的組織,想要更細微地控制主機集區中可用的會話主機數目,讓您能夠更輕鬆地相應減少使用者較少時所開啟的會話主機數目。
深度優先演算法會先查詢允許新連線,且尚未達到工作階段上限的工作階段主機。 然後,演算法會選取具有最多工作階段的工作階段主機。 如果有工作階段數目相同的情形,則選取查詢中的第一個工作階段主機。
使用深度優先演算法時,您必須設定工作階段上限。 您可以使用 Azure 虛擬桌面深入解析來 監視每個會話主機上 的會話數目,並檢閱 會話主機效能 ,以協助判斷環境的最佳會話限制。
重要
一旦所有工作階段主機達到工作階段上限,您必須提高限制,或將更多工作階段主機新增至主機集區。
必要條件
若要設定集區主機集區的負載平衡,您需要:
現有的集區主機集區。
已指派桌面虛擬化主機集區參與者角色的 Azure 帳戶。
如果您想要在本機使用 Azure CLI 或 Azure PowerShell,請參閱搭配使用 Azure CLI 和 Azure PowerShell 與 Azure 虛擬桌面 (部分機器翻譯),以確認您已安裝 desktopvirtualization (部分機器翻譯) Azure CLI 延伸模組或 Az.DesktopVirtualization (部分機器翻譯) PowerShell 模組。 或者,也可以使用 Azure Cloud Shell (部分機器翻譯)。
設定負載平衡
選取案例相關的索引標籤。
以下說明如何使用 Azure 入口網站 設定負載平衡:
登入 Azure 入口網站。
在搜尋列中,輸入 Azure 虛擬桌面 ,然後選取相符的服務專案
選取 [ 主機集區],然後選取您要設定的主機集區名稱。
選取屬性。
針對 [負載平衡演算法],從下拉功能表中選取您要用於此主機集區的類型,然後針對 [最大會話限制] 輸入值。
選取 [ 儲存 ] 以套用新的負載平衡設定。
注意
深度優先的負載平衡演算法會將會話分散到會話主機,最多達到最大會話限制。 如果您在第一次建立主機集區時使用廣度優先,最大會話限制的預設值會設定為 999999
,這也是您可以將此參數設定為的最高可能數目。 若要在使用深度優先負載平衡時獲得最佳用戶體驗,請務必將最大會話限制參數變更為最符合您需求的數位。
相關內容
- 了解自動調整如何自動調整主機集區中的可用工作階段主機數目。