教學課程 2-3:在 Azure Enclave 中部署 Azure 虛擬桌面 工作負載

這個教學會引導你如何在 Azure Enclave 中部署 Azure 虛擬桌面。 你可以建立 Azure 虛擬桌面 基礎架構,包括主機池、會話主機、應用程式群組和 FSLogix 儲存,這些都安全地設在你的飛地邊界內。

在這個教學中,你會學到如何:

  • 部署 Azure 虛擬桌面 社群端點以進行外部連接
  • 部署 Azure 虛擬桌面 機密隔離區基礎結構
  • 部署 Azure 虛擬桌面工作負載 (包含工作階段主機和控制平面)
  • 設定身份與加密
  • 透過加密連線存取 Azure 虛擬桌面
  • 驗證部署

先決條件

  • 完成教學 2-2:建立 Azure Enclave 環境
  • 包含管理子網路和工作階段主機子網路的 Azure 虛擬桌面記憶體保護區
  • 教學課程 2-2 中的常見相依性(金鑰保存庫、受控識別、磁碟加密集合)
  • Azure 虛擬桌面 的私人 DNS 區域已部署
  • 虛擬機器參與者 角色 (位於 Azure 虛擬桌面工作負載資源群組)
  • Active Directory 或 Microsoft Entra ID 設定為使用者驗證

開始之前

身分識別解決方案需求

Azure 虛擬桌面 需要一個身份解決方案來進行使用者認證。 你有兩個選擇:

解決方案 Requirements 最適合
Microsoft Entra 身份識別 - Microsoft Entra 租用戶
- 使用者同步或僅限雲端
- Microsoft Entra 加入 VM
雲端原生組織
Active Directory 網域服務 (AD DS) - 網域控制器可從 enclave 存取
- VM 網域連接
- 可與 Microsoft Entra Connect 混合使用
現有 AD 基礎架構

這個教學支援兩種選項。 部署時選擇適當的參數。

資源命名慣例

這個教學會使用範例名稱。 使用貴組織的命名慣例:

  • 記憶體保護區:avd-enclave
  • 工作量: avd-workload
  • 資源群組前綴: rg-avd-
  • 主機集區:hp-prod-01

部署 Azure 虛擬桌面 社群端點

Azure 虛擬桌面社群端點可讓工作階段主機與 Azure 虛擬桌面控制平面服務通訊。

Note

如果你在教學 2-2 中建立了 Azure 虛擬桌面 社群端點,可以跳過這部分。

使用服務目錄範本

  1. 在 Azure 入口網站中,前往 Azure 虛擬桌面記憶體保護區中的 Azure 虛擬桌面工作負載。
  2. 選取 + 新增 Azure 服務。
  3. 搜尋並選擇 Azure 虛擬桌面 Community Endpoint。
  4. 設定部署:
    • 資源群組:選擇你的工作負載資源群組(例如, rg-avd-workload)
    • 社群資源名稱:選擇你的社群(例如, cmt-fabrikam)。
    • 社區終點名稱: ce-avd-services
    • 納入 Azure 虛擬桌面 URL:勾選所有必要的 URL:
      • *.wvd.microsoft.com
      • login.microsoftonline.com
      • management.azure.com
      • *.prod.warm.ingest.monitor.core.windows.net
  5. 選擇 評論 + 新增 ,然後 建立。
  6. 等待部署完成(~5-10分鐘)。

部署 Azure 虛擬桌面 機密隔離區基礎結構

Azure 虛擬桌面 enclave 範本會為你的 enclave 準備所需的子網和網路安全群組。

使用服務目錄範本

  1. 在你的 Azure 虛擬桌面 工作負載中,選擇 + Add an Azure Service。

  2. 搜尋並選擇 Azure 虛擬桌面 Enclave。

  3. 設定部署:

    基本設定:

    • 資源群組:rg-avd-infrastructure
    • 飛地資源名稱:選擇 avd-enclave
    • 位置:與飛地區域相同

    網路組態:

    • 虛擬網路 名稱:保留預設(使用 enclave virtual network)
    • 管理子網名稱: AzureVirtualDesktopManagementSubnet
    • 會話主機子網名稱: AzureVirtualDesktopSessionHostsSubnet
    • 創建 NSG: 可以( 如果還沒建立的話)

    私用 DNS:

    • 建立 私用 DNS 區域:否(已在教學 2-2 中建立)
    • VNet 連結: 是的
  4. 選擇 評論 + 新增 ,然後 建立。

  5. 等待部署完成(~10-15分鐘)。

部署 Azure 虛擬桌面 工作負載

現在部署 Azure 虛擬桌面 工作負載,包含主機池、會話主機及支援基礎設施。

選擇 Azure 虛擬桌面 工作負載範本

  1. 在你的 Azure 虛擬桌面 工作負載中,選擇 + Add an Azure Service。
  2. 搜尋並選擇 Azure 虛擬桌面 Workload。
  3. 使用以下參數配置部署:
設定區段 Parameters
基本分頁 - 資源小組: rg-avd-workload
- 位置:與機密區域相同
- 工作量名稱: avd-prod
主機池配置 - 主辦團隊名稱: hp-prod-01
- 主機集區類型: Pooled
- 負載平衡器類型:BreadthFirst
- 最大工作階段限制:10 (若為集區模式,每部主機的工作階段數)
- 驗證環境: No (除非測試)
會話主機設定 - 會話主持人名稱前綴: avd-sh-
- 虛擬機容量: Standard_D4s_v5 (4 個 vCPU,最低 16 GB 記憶體)
- 工作階段主機數量 : 2 (從小開始,後續擴展)
- 作業系統磁碟類型: Premium_LRS
- 圖片參考:
   - Publisher:MicrosoftWindowsDesktop
   - 提議: Windows-11
   - SKU: win11-23h2-avd
   - 版本: latest
網路組態 - 虛擬網路資源群組: avd-enclave-HostedResources-<guid> (enclave MRG)
- 虛擬網路名稱:Enclave 虛擬網路名稱
- 子網名稱: AzureVirtualDesktopSessionHostsSubnet
身份與領域 針對 Microsoft Entra ID:
- 身份類型: AzureADJoin
- Entra 租用戶 ID:您的 Microsoft Entra 租用戶 ID
- Intune 註冊:Yes(建議)

對於 Active Directory 網域服務:
- 身份類型: DomainJoin
- 網域 FQDN: contoso.com
- OU 路徑: OU=AVD,DC=contoso,DC=com (選修)
- 網域加入帳號 UPN: avd-join@contoso.com
- 網域加入密碼:(安全密碼)
工作區配置 - 工作區名稱: ws-avd-prod
- 工作環境友善名稱: Production Azure 虛擬桌面 Workspace
- 應用程式群組名稱: ag-desktop-prod
- 應用群組類型: Desktop (或 RemoteApp)
儲存配置(FSLogix) - 儲存帳號名稱: stavdfslogix<uniqueid>
- 儲存帳戶類型: Premium_LRS (最佳效能)
- 檔案分享名稱: profiles
- 檔案分享配額(GB):1024(1 TB)
- 啟用 Azure 檔案儲存體 Private Endpoint:Yes
- 私有端點子網: AzureVirtualDesktopManagementSubnet
加密配置 - 啟用 CMK 加密: Yes
- 磁碟加密設定資源 ID:來自教學 2-2 常見相依性的資源 ID
- 使用者指派身份資源 ID:教學 2-2 中的資源 ID 常見相依關係
Monitoring - 啟用診斷設定: Yes
- Log Analytics 工作區:從共享服務中選擇工作區或建立新工作區
- 啟用 Azure 虛擬桌面 Insights: Yes (建議)
  1. 選擇 Review + Create。
  2. 仔細檢查所有設定。
  3. 選擇 Create。

Note

部署時間依會話主機數量而定,需時 30 至 60 分鐘。

設定用於管理的 Enclave 端點

建立隔離區端點,以允許來自管理資源的管理流量。

  1. 前往 Azure 虛擬桌面 隔離區。

  2. 選取 Enclave endpoints,然後選取 + Create。

  3. 設定端點:

    • 名稱:ee-avd-management
    • 描述:Allow management access to Azure 虛擬桌面 resources
  4. 新增規則:

    規則 1:RDP 對工作階段主機

    • 名稱:rdp-to-hosts
    • 通訊協定:TCP
    • 端口:3389
    • 來源:行政子網 CIDR 或堡壘子網

    規則 2:PowerShell 遠端管理

    • 名稱:winrm
    • 通訊協定:TCP
    • 端口:5985,5986
    • 資料來源:行政子網 CIDR
  5. 選取 Review + create,然後選取 Create。

為 FSLogix 設定 enclave 連線

如果您的 FSLogix 儲存體位於不同的 enclave,請建立 enclave 連線。

  1. 前往 Azure 虛擬桌面 隔離區。
  2. 選取 Enclave connections,然後選取 + Create。
  3. 設定連線:
    • 名稱:conn-avd-to-storage
    • 來源隔離區: avd-enclave
    • 目的地隔離區端點:在共用服務隔離區中選取端點
  4. 選取 Review + create,然後選取 Create。

將使用者指派到應用程式群組

使用者必須被指派到應用程式群組才能存取 Azure 虛擬桌面。

使用 Azure 入口網站

  1. 請導覽到你的應用程式群組(例如)。 ag-desktop-prod
  2. 選取 Assignments,然後選取 + Add。
  3. 搜尋並選擇使用者或群組。
  4. 選擇 Select。

使用 Azure PowerShell

# Variables
$resourceGroup = "rg-avd-workload"
$appGroupName = "ag-desktop-prod"
$userPrincipalName = "user@contoso.com"

# Get the application group
$appGroup = Get-AzWvdApplicationGroup -ResourceGroupName $resourceGroup -Name $appGroupName

# Get the user object ID
$user = Get-AzADUser -UserPrincipalName $userPrincipalName

# Assign user to application group
New-AzRoleAssignment -ObjectId $user.Id `
    -RoleDefinitionName "Desktop Virtualization User" `
    -ResourceName $appGroupName `
    -ResourceGroupName $resourceGroup `
    -ResourceType 'Microsoft.DesktopVirtualization/applicationGroups'

從用戶端存取 Azure 虛擬桌面

使用者可透過各種用戶端存取 Azure 虛擬桌面。

Web 用戶端

  1. 瀏覽至 https://client.wvd.microsoft.com/arm/webclient
  2. 使用 Microsoft Entra 憑證登入
  3. 選擇已發佈的桌面或應用程式
  4. 工作階段透過記憶體保護區連線

Windows 應用程式

  1. 可從 Microsoft Store 下載 Windows 應用程式 或直接下載
  2. 安裝並啟動 Windows 應用程式
  3. 選擇 Add account 或 + 新增工作區
  4. 請使用您的 Microsoft Entra 帳號登入
  5. 您的 Azure 虛擬桌面 資源會自動顯示
  6. 選擇桌面或應用程式連接

Note

Windows 應用程式 取代了舊有的 遠端桌面 用戶端,並提供現代化的體驗,方便存取 Azure 虛擬桌面、Azure 虛擬桌面 及其他遠端資源。

驗證部署

請執行以下驗證步驟以確保部署正確:

檢查會話主機狀態

  1. 導覽到你的 主機池 (例如, hp-prod-01)
  2. 選擇 Session hosts
  3. 確認所有主機皆顯示狀態:Available
  4. 確認 Agent 版本 是否為最新
  5. 驗證 網域加入 狀態

測試使用者會話

  1. 以測試使用者身份登入
  2. 啟動桌面或應用程式
  3. 驗證連接性與效能
  4. 檢查 FSLogix 設定檔是否正確載入
  5. 應用程式功能測試

驗證加密

  1. 導覽至工作階段主機 VM
  2. 選擇 Disks
  3. 選擇作業系統磁碟
  4. 請驗證 Encryption type: Encryption at rest with a customer-managed key
  5. 檢查是否已套用加密設定組

檢查診斷日誌

  1. 導航至 主機池
  2. 選擇 Diagnostic settings
  3. 確認日誌是否已傳送至 Log Analytics
  4. 查詢連線事件日誌:
WVDConnections
| where TimeGenerated > ago(1h)
| where State == "Connected"
| project TimeGenerated, UserName, ClientOS, ClientType

驗證網路連線能力

  1. 透過 Bastion 或管理虛擬機連接到會話主機
  2. 測試與所需端點的連線:
# Test Azure Virtual Desktop control plane
Test-NetConnection -ComputerName rdweb.wvd.microsoft.com -Port 443

# Test Azure Storage (FSLogix)
Test-NetConnection -ComputerName $storageAccountName.file.core.windows.net -Port 445

# Test Microsoft Entra ID
Test-NetConnection -ComputerName login.microsoftonline.com -Port 443

監控 Azure 虛擬桌面深入解析

啟用並設定 Azure 虛擬桌面 Insights,以實現全面監控。

  1. 導覽至您的主機集區
  2. 選擇 Insights
  3. 選擇 Open Insights workbook
  4. 檢視指標:
    • 連線成功率
    • 使用中工作階段
    • 工作階段主機效能
    • 使用者輸入延遲
    • 資源使用率

針對常見問題進行疑難排解

工作階段主機未加入網域

症狀:會話主機顯示「網域加入錯誤」

解決方案:

  • 確認網域聯結憑證是否正確
  • 檢查隔離區與網域控制站之間的連線能力
  • 確保 DNS 解析能適用於網域 FQDN
  • 確認 OU 路徑是否正確(如有指定)

使用者無法連線

症狀:認證過程中連線失敗

解決方案:

  • 驗證使用者是否被分配到應用程式群組
  • 檢查 RDP 內容是否允許連線
  • 驗證社群端點已建立
  • 請檢查網路安全群組規則

FSLogix 設定檔無法載入

症狀:使用者獲得臨時帳號

解決方案:

  • 驗證儲存帳號私有端點已建立
  • 檢查 445 埠的 SMB 連線
  • 確認使用者在檔案分享時擁有 RBAC 權限
  • 請檢查虛擬網路連結是否有私人 DNS 區域

效能不佳

症狀:反應緩慢的工作階段

解決方案:

  • 檢查會話主機虛擬機大小是否足夠
  • 確認是否有使用高級 SSD 磁碟
  • 檢視主機池負載平衡設定
  • 檢查每個主機設定的最大會話數
  • 在 Azure 虛擬桌面深入解析中監視網路延遲

清理資源

為避免持續收費,請在不再需要時刪除資源:

依序刪除

  1. 移除應用程式群組中的使用者指派
  2. 刪除應用程式群組
  3. 刪除工作區
  4. 刪除主機集區 (停止/刪除工作階段主機)
  5. 刪除記憶體帳戶
  6. 刪除磁碟加密設定組
  7. 刪除 金鑰保存庫 金鑰
  8. 刪除受管理身份
  9. 刪除工作負載資源群組

使用 Azure CLI

# Delete resource group (deletes all contained resources)
az group delete --name rg-avd-workload --yes --no-wait
az group delete --name rg-avd-infrastructure --yes --no-wait

Warning

刪除資源是永久性的,無法逆轉。

下一步

部署 Azure 虛擬桌面 後,您現在可以部署 Azure Kubernetes Service 工作負載。

Tutorial 2-4: Deploy Azure Kubernetes Service workload