このチュートリアルでは、Azure エンクレーブにAzure Virtual Desktopをデプロイする方法について説明します。 ホスト プール、セッション ホスト、アプリケーション グループ、FSLogix ストレージなど、Azure Virtual Desktopインフラストラクチャを作成します。すべてエンクレーブ境界内でセキュリティ保護されます。
このチュートリアルでは、以下の内容を学習します。
- 外部接続Azure Virtual Desktopコミュニティ エンドポイントをデプロイする
- Azure Virtual Desktop のエンクレーブ インフラストラクチャをデプロイする
- セッション ホストとコントロール プレーンを含む Azure Virtual Desktop ワークロードをデプロイする
- ID と暗号化を構成する
- 暗号化された接続を使用してAzure Virtual Desktopにアクセスする
- デプロイメントを検証する
前提条件
- チュートリアル 2-2: Azure Enclave 環境の作成 の完了
- 管理ホスト サブネットとセッション ホスト サブネットを備えた Azure Virtual Desktop エンクレーブ
- チュートリアル 2-2 の一般的な依存関係 (Key Vault、マネージド ID、ディスク暗号化セット)
- Azure Virtual Desktop 向けにデプロイされたプライベート DNS ゾーン
- Azure Virtual Desktop ワークロード リソース グループの仮想マシン共同作成者ロール
- ユーザー認証用に構成されたActive DirectoryまたはMicrosoft Entra ID
始める前の準備
ID ソリューションの要件
Azure Virtual Desktopには、ユーザー認証用の ID ソリューションが必要です。 次の 2 つのオプションがあります。
| ソリューション | Requirements | 最適な用途 |
|---|---|---|
| Microsoft Entra ID | - Microsoft Entra テナント - 同期されたユーザーまたはクラウドのみ - Microsoft Entra 参加 VM |
クラウドネイティブ組織 |
| Active Directory Domain Services(AD DS) | - エンクレーブからアクセスできるドメイン コントローラー - VM のドメイン参加 - Microsoft Entra Connect とハイブリッドにすることができます |
既存の AD インフラストラクチャ |
このチュートリアルでは、両方のオプションがサポートされています。 デプロイ中に適切なパラメーターを選択します。
リソースの名前付け規則
このチュートリアルでは、名前の例を使用します。 組織の名前付け規則を使用します。
- エンクレーブ:
avd-enclave - ワークロード:
avd-workload - リソース グループ プレフィックス:
rg-avd- - ホスト プール:
hp-prod-01
Azure Virtual Desktop のコミュニティ エンドポイントをデプロイする
Azure Virtual Desktop コミュニティ エンドポイントを使用すると、セッション ホストはAzure Virtual Desktopコントロール プレーン サービスと通信できます。
Note
チュートリアル 2-2 で Azure Virtual Desktop コミュニティ エンドポイントを作成した場合は、このセクションをスキップできます。
サービス カタログ テンプレートを使用する
- Azure ポータルで、Azure Virtual Desktop エンクレーブ内のAzure Virtual Desktop ワークロードに移動します。
- [+ Azure サービスの追加] を選択します。
- Azure Virtual Desktop Community Endpoint を検索して選択します。
- デプロイを構成します。
-
リソース グループ: ワークロード リソース グループを選択します (例:
rg-avd-workload) -
コミュニティリソース名:コミュニティを選択してください(例:
cmt-fabrikam)。 -
コミュニティ エンドポイント名:
ce-avd-services -
Azure Virtual Desktop URL を含める: 必要なすべての URL を確認します。
*.wvd.microsoft.comlogin.microsoftonline.commanagement.azure.com*.prod.warm.ingest.monitor.core.windows.net
-
リソース グループ: ワークロード リソース グループを選択します (例:
- [ 確認と追加] を選択し、[作成] を 選択します。
- デプロイが完了するまで待機します (約 5 ~ 10 分)。
Azure Virtual Desktop のエンクレーブ インフラストラクチャをデプロイする
Azure Virtual Desktop エンクレーブ テンプレートは、必要なサブネットとネットワーク セキュリティ グループを使用してエンクレーブを準備します。
サービス カタログ テンプレートを使用する
Azure Virtual Desktop ワークロードで、[+ Azure サービスの追加] を選択します。
Azure Virtual Desktop Enclave を検索して選択します。
デプロイを構成します。
基本設定:
-
リソース グループ:
rg-avd-infrastructure -
エンクレーブ リソース名: 選択
avd-enclave - 場所: エンクレーブリージョンと同じ
[ネットワーク構成]:
- 仮想ネットワーク名: 既定値のままにします(エンクレーブ仮想ネットワークを使用)
-
管理サブネット名:
AzureVirtualDesktopManagementSubnet -
セッション ホストサブネット名:
AzureVirtualDesktopSessionHostsSubnet - NSG の作成: はい (まだ作成されていない場合)
プライベート DNS:
- プライベート DNS ゾーンの作成: いいえ (チュートリアル 2-2 で既に作成済み)
- VNet へのリンク: はい
-
リソース グループ:
[ 確認と追加] を選択し、[作成] を 選択します。
デプロイが完了するまで待機します (約 10 ~ 15 分)。
Azure Virtual Desktop ワークロードをデプロイする
次に、ホスト プール、セッション ホスト、およびサポート インフラストラクチャを使用して、Azure Virtual Desktop ワークロードをデプロイします。
Azure Virtual Desktop ワークロード テンプレートを選択する
- Azure Virtual Desktop ワークロードで、[+ Azure サービスの追加] を選択します。
- Azure Virtual Desktopワークロードを検索して選択します。
- 次のパラメーターを使用してデプロイを構成します。
| 設定項目 | Parameters |
|---|---|
| [基本] タブ |
-
リソース グループ: rg-avd-workload- 場所: エンクレーブリージョンと同じ - ワークロード名: avd-prod |
| ホスト プールの構成 |
-
ホスト プール名: hp-prod-01- ホスト プールの種類: Pooled- ロード バランサーの種類: BreadthFirst- 最大セッション制限: 10 (プールされた場合はホストあたりのセッション数)- 検証環境: No (テストを除く) |
| セッション ホストの構成 |
-
セッション ホスト名プレフィックス: avd-sh-- 仮想マシンのサイズ: Standard_D4s_v5 (4 vCPU、16 GB 以上の RAM)- セッション ホストの数: 2 (小規模から開始し、後でスケーリング)- OS ディスクの種類: Premium_LRS- イメージ リファレンス: - Publisher: MicrosoftWindowsDesktop- オファー: Windows-11- SKU: win11-23h2-avd- バージョン: latest |
| ネットワークの構成 |
-
仮想ネットワーク リソース グループ: avd-enclave-HostedResources-<guid> (エンクレーブ MRG)- 仮想ネットワーク名: エンクレーブ仮想ネットワーク名 - サブネット名: AzureVirtualDesktopSessionHostsSubnet |
| ID とドメイン |
Microsoft Entra IDの場合: - ID の種類: AzureADJoin- Entra テナント ID: お客様の Microsoft Entra テナント ID - Intune 登録: Yes (推奨)Active Directory Domain Servicesの場合: - ID の種類: DomainJoin- ドメイン FQDN: contoso.com- OU パス: OU=AVD,DC=contoso,DC=com (任意)- ドメイン参加用アカウント UPN: avd-join@contoso.com- ドメイン参加パスワード: (セキュリティで保護されたパスワード) |
| ワークスペースの構成 |
-
ワークスペース名: ws-avd-prod- ワークスペースのフレンドリ名: Production Azure Virtual Desktop Workspace- アプリケーション グループ名: ag-desktop-prod- アプリケーション グループの種類: Desktop (または RemoteApp) |
| ストレージ構成 (FSLogix) |
-
ストレージ アカウント名: stavdfslogix<uniqueid>- ストレージ アカウントの種類: Premium_LRS (最適なパフォーマンスを得る)- ファイル共有名: profiles- ファイル共有クォータ (GB): 1024 (1 TB)- プライベート エンドポイントAzure Files有効にする: Yes- プライベート エンドポイント サブネット: AzureVirtualDesktopManagementSubnet |
| 暗号化の構成 |
-
CMK 暗号化を有効にする: Yes- ディスク暗号化セットのリソース ID: チュートリアル 2-2 の一般的な依存関係からのリソース ID - ユーザー割り当て ID のリソース ID: チュートリアル 2-2 の共通の依存関係のリソース ID |
| Monitoring |
-
診断設定を有効にする: Yes- Log Analytics ワークスペース: 共有サービスからワークスペースを選択するか、新規作成します - (推奨) |
-
Review + Createを選択します。 - すべての設定を慎重に確認します。
-
Createを選択します。
Note
デプロイには、セッション ホストの数に応じて 30 ~ 60 分かかります。
管理用にエンクレーブ エンドポイントを構成する
管理リソースからの管理トラフィックを許可するエンクレーブ エンドポイントを作成します。
Azure Virtual Desktop エンクレーブに移動します。
Enclave endpoints選択し、+ Createを選択します。エンドポイントを構成します。
-
名前:
ee-avd-management -
説明:
Allow management access to Azure Virtual Desktop resources
-
名前:
ルールを追加します。
規則 1: セッション ホストへの RDP
-
名前:
rdp-to-hosts -
プロトコル:
TCP -
ポート:
3389 - ソース: 管理サブネット CIDR または要塞サブネット
規則 2: PowerShell リモート処理
-
名前:
winrm -
プロトコル:
TCP -
ポート:
5985,5986 - ソース: 管理サブネット CIDR
-
名前:
Review + createを選択し、Createします。
FSLogixのエンクレーブ接続を構成する
FSLogix ストレージが別のエンクレーブにある場合は、エンクレーブ接続を作成します。
- Azure Virtual Desktop エンクレーブに移動します。
-
Enclave connections選択し、+ Createを選択します。 - 接続を構成します。
-
名前:
conn-avd-to-storage -
ソースエンクレーブ:
avd-enclave - 宛先エンクレーブ エンドポイント: 共有サービス エンクレーブ内のエンドポイントを選択する
-
名前:
-
Review + createを選択し、Createします。
アプリケーション グループにユーザーを割り当てる
Azure Virtual Desktopにアクセスするには、ユーザーをアプリケーション グループに割り当てる必要があります。
Azure Portal の使用
-
アプリケーション グループ (たとえば、
ag-desktop-prod) に移動します。 -
Assignments選択し、+ Addを選択します。 - ユーザーまたはグループを検索して選択します。
-
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 Virtual Desktopにアクセスする
ユーザーは、さまざまなクライアントを介してAzure Virtual Desktopにアクセスできます。
Web クライアント
- https://client.wvd.microsoft.com/arm/webclient に移動します
- Microsoft Entra資格情報を使用してサインインする
- 発行されたデスクトップまたはアプリケーションを選択する
- セッションはエンクレーブ接続を介して接続します
Windowsアプリ
- Microsoft Storeまたは直接ダウンロードからWindows アプリをダウンロードする
- Windows アプリをインストールして起動する
-
Add accountまたは+を選択してワークスペースを追加する - Microsoft Entra資格情報でサインインする
- Azure Virtual Desktop リソースが自動的に表示される
- 接続するデスクトップまたはアプリケーションを選択する
Note
Windows アプリは、レガシ リモート デスクトップ クライアントを置き換え、Azure Virtual Desktop、Azure Virtual Desktop、およびその他のリモート リソースにアクセスするための最新のエクスペリエンスを提供します。
デプロイメントを検証する
適切なデプロイを確認するには、次の検証手順を実行します。
セッション ホストの状態を確認する
-
ホスト プールに移動します (例:
hp-prod-01) -
Session hostsを選択 - すべてのホストに状態が表示されていることを確認します。
Available - エージェントのバージョンが最新であることを確認する
- ドメインに参加している状態を確認する
ユーザー セッションをテストする
- テスト ユーザーとしてサインインする
- デスクトップまたはアプリケーションを起動する
- 接続とパフォーマンスを確認する
- FSLogix プロファイルが正しく読み込まれることを確認する
- アプリケーションの機能をテストする
暗号化の検証
- セッション ホスト VM に移動する
-
Disksを選択 - OS ディスクを選択する
-
Encryption typeを確認します。Encryption at rest with a customer-managed key - 暗号化セットが適用されていることを確認する
診断ログを確認する
- ホスト プールに移動する
-
Diagnostic settingsを選択 - ログがLog Analyticsに流れているかどうかを確認する
- 接続イベントのクエリ ログ:
WVDConnections
| where TimeGenerated > ago(1h)
| where State == "Connected"
| project TimeGenerated, UserName, ClientOS, ClientType
ネットワークの接続を検証する
- bastion または管理者 VM を使用してセッション ホストに接続する
- 必要な Azure エンドポイントへの接続をテストします:
# 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 Virtual Desktop Insights の監視
包括的な監視のためにAzure Virtual Desktop Insights を有効にして構成します。
- ホスト プールに移動する
-
Insightsを選択 -
Open Insights workbookを選択 - メトリックを確認する:
- 接続成功率
- アクティブなセッション
- セッション ホストのパフォーマンス
- ユーザー入力の遅延
- リソース使用率
一般的な問題のトラブルシューティング
ドメインに参加していないセッション ホスト
現象: セッション ホストに "ドメイン参加エラー" が表示される
解決策:
- ドメイン参加の資格情報が正しいことを確認します
- ドメイン コントローラーへのエンクレーブ接続を確認する
- ドメイン FQDN で DNS 解決が機能することを確認する
- OU パスが正しいことを確認する (指定されている場合)
ユーザーが接続できない
現象: 認証中に接続が失敗する
解決策:
- ユーザーがアプリケーション グループに割り当てられているかどうかを確認する
- RDP プロパティで接続を許可することを確認する
- コミュニティ エンドポイントが作成されていることを確認する
- ネットワーク セキュリティ グループの規則を確認する
FSLogix プロファイルが読み込まれていない
現象: ユーザーが一時的なプロファイルを取得する
解決策:
- ストレージ アカウントのプライベート エンドポイントが作成されていることを確認する
- ポート 445 で SMB 接続を確認する
- ユーザーがファイル共有に対する RBAC アクセス許可を持っていることを確認する
- プライベート DNS ゾーンの仮想ネットワーク リンクを確認する
パフォーマンスが低い
現象: 応答が遅いセッション
解決策:
- セッション ホスト VM のサイズが適切であることを確認する
- Premium SSD ディスクが使用されていることを確認する
- ホスト プールの負荷分散設定を確認する
- ホスト構成あたりの最大セッション数を確認する
- Azure Virtual Desktop Insights でネットワーク待機時間を監視する
リソースをクリーンアップする
継続的な料金を回避するには、不要になったらリソースを削除します。
順番に削除する
- アプリケーション グループからユーザー割り当てを削除する
- アプリケーション グループを削除する
- ワークスペースの削除
- ホスト プールの削除 (セッション ホストの停止/削除)
- ストレージ アカウントの削除
- ディスク暗号化セットを削除する
- Key Vault キーを削除
- マネージド ID を削除する
- ワークロード リソース グループを削除する
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 Virtual Desktopデプロイすると、Azure Kubernetes Serviceワークロードをデプロイできるようになりました。