チュートリアル 2-3: Azure エンクレーブにAzure Virtual Desktopワークロードをデプロイする

このチュートリアルでは、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 コミュニティ エンドポイントを作成した場合は、このセクションをスキップできます。

サービス カタログ テンプレートを使用する

  1. Azure ポータルで、Azure Virtual Desktop エンクレーブ内のAzure Virtual Desktop ワークロードに移動します。
  2. [+ Azure サービスの追加] を選択します。
  3. Azure Virtual Desktop Community Endpoint を検索して選択します。
  4. デプロイを構成します。
    • リソース グループ: ワークロード リソース グループを選択します (例: rg-avd-workload)
    • コミュニティリソース名:コミュニティを選択してください(例: cmt-fabrikam)。
    • コミュニティ エンドポイント名: ce-avd-services
    • Azure Virtual Desktop URL を含める: 必要なすべての URL を確認します。
      • *.wvd.microsoft.com
      • login.microsoftonline.com
      • management.azure.com
      • *.prod.warm.ingest.monitor.core.windows.net
  5. [ 確認と追加] を選択し、[作成] を 選択します。
  6. デプロイが完了するまで待機します (約 5 ~ 10 分)。

Azure Virtual Desktop のエンクレーブ インフラストラクチャをデプロイする

Azure Virtual Desktop エンクレーブ テンプレートは、必要なサブネットとネットワーク セキュリティ グループを使用してエンクレーブを準備します。

サービス カタログ テンプレートを使用する

  1. Azure Virtual Desktop ワークロードで、[+ Azure サービスの追加] を選択します。

  2. Azure Virtual Desktop Enclave を検索して選択します。

  3. デプロイを構成します。

    基本設定:

    • リソース グループ: rg-avd-infrastructure
    • エンクレーブ リソース名: 選択 avd-enclave
    • 場所: エンクレーブリージョンと同じ

    [ネットワーク構成]:

    • 仮想ネットワーク名: 既定値のままにします(エンクレーブ仮想ネットワークを使用)
    • 管理サブネット名: AzureVirtualDesktopManagementSubnet
    • セッション ホストサブネット名: AzureVirtualDesktopSessionHostsSubnet
    • NSG の作成: はい (まだ作成されていない場合)

    プライベート DNS:

    • プライベート DNS ゾーンの作成: いいえ (チュートリアル 2-2 で既に作成済み)
    • VNet へのリンク: はい
  4. [ 確認と追加] を選択し、[作成] を 選択します。

  5. デプロイが完了するまで待機します (約 10 ~ 15 分)。

Azure Virtual Desktop ワークロードをデプロイする

次に、ホスト プール、セッション ホスト、およびサポート インフラストラクチャを使用して、Azure Virtual Desktop ワークロードをデプロイします。

Azure Virtual Desktop ワークロード テンプレートを選択する

  1. Azure Virtual Desktop ワークロードで、[+ Azure サービスの追加] を選択します。
  2. Azure Virtual Desktopワークロードを検索して選択します。
  3. 次のパラメーターを使用してデプロイを構成します。
設定項目 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 ワークスペース: 共有サービスからワークスペースを選択するか、新規作成します
- (推奨)
  1. Review + Create を選択します。
  2. すべての設定を慎重に確認します。
  3. Create を選択します。

Note

デプロイには、セッション ホストの数に応じて 30 ~ 60 分かかります。

管理用にエンクレーブ エンドポイントを構成する

管理リソースからの管理トラフィックを許可するエンクレーブ エンドポイントを作成します。

  1. Azure Virtual Desktop エンクレーブに移動します。

  2. Enclave endpoints選択し、+ Createを選択します。

  3. エンドポイントを構成します。

    • 名前: ee-avd-management
    • 説明: Allow management access to Azure Virtual Desktop resources
  4. ルールを追加します。

    規則 1: セッション ホストへの RDP

    • 名前: rdp-to-hosts
    • プロトコル: TCP
    • ポート: 3389
    • ソース: 管理サブネット CIDR または要塞サブネット

    規則 2: PowerShell リモート処理

    • 名前: winrm
    • プロトコル: TCP
    • ポート: 5985,5986
    • ソース: 管理サブネット CIDR
  5. Review + createを選択し、Createします。

FSLogixのエンクレーブ接続を構成する

FSLogix ストレージが別のエンクレーブにある場合は、エンクレーブ接続を作成します。

  1. Azure Virtual Desktop エンクレーブに移動します。
  2. Enclave connections選択し、+ Createを選択します。
  3. 接続を構成します。
    • 名前: conn-avd-to-storage
    • ソースエンクレーブ: avd-enclave
    • 宛先エンクレーブ エンドポイント: 共有サービス エンクレーブ内のエンドポイントを選択する
  4. Review + createを選択し、Createします。

アプリケーション グループにユーザーを割り当てる

Azure Virtual Desktopにアクセスするには、ユーザーをアプリケーション グループに割り当てる必要があります。

Azure Portal の使用

  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 Virtual Desktopにアクセスする

ユーザーは、さまざまなクライアントを介してAzure Virtual Desktopにアクセスできます。

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 Virtual Desktop リソースが自動的に表示される
  6. 接続するデスクトップまたはアプリケーションを選択する

Note

Windows アプリは、レガシ リモート デスクトップ クライアントを置き換え、Azure Virtual Desktop、Azure Virtual Desktop、およびその他のリモート リソースにアクセスするための最新のエクスペリエンスを提供します。

デプロイメントを検証する

適切なデプロイを確認するには、次の検証手順を実行します。

セッション ホストの状態を確認する

  1. ホスト プールに移動します (例: hp-prod-01)
  2. Session hosts を選択
  3. すべてのホストに状態が表示されていることを確認します。 Available
  4. エージェントのバージョンが最新であることを確認する
  5. ドメインに参加している状態を確認する

ユーザー セッションをテストする

  1. テスト ユーザーとしてサインインする
  2. デスクトップまたはアプリケーションを起動する
  3. 接続とパフォーマンスを確認する
  4. FSLogix プロファイルが正しく読み込まれることを確認する
  5. アプリケーションの機能をテストする

暗号化の検証

  1. セッション ホスト VM に移動する
  2. Disks を選択
  3. OS ディスクを選択する
  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 または管理者 VM を使用してセッション ホストに接続する
  2. 必要な 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 を有効にして構成します。

  1. ホスト プールに移動する
  2. Insights を選択
  3. Open Insights workbook を選択
  4. メトリックを確認する:
    • 接続成功率
    • アクティブなセッション
    • セッション ホストのパフォーマンス
    • ユーザー入力の遅延
    • リソース使用率

一般的な問題のトラブルシューティング

ドメインに参加していないセッション ホスト

現象: セッション ホストに "ドメイン参加エラー" が表示される

解決策:

  • ドメイン参加の資格情報が正しいことを確認します
  • ドメイン コントローラーへのエンクレーブ接続を確認する
  • ドメイン FQDN で DNS 解決が機能することを確認する
  • OU パスが正しいことを確認する (指定されている場合)

ユーザーが接続できない

現象: 認証中に接続が失敗する

解決策:

  • ユーザーがアプリケーション グループに割り当てられているかどうかを確認する
  • RDP プロパティで接続を許可することを確認する
  • コミュニティ エンドポイントが作成されていることを確認する
  • ネットワーク セキュリティ グループの規則を確認する

FSLogix プロファイルが読み込まれていない

現象: ユーザーが一時的なプロファイルを取得する

解決策:

  • ストレージ アカウントのプライベート エンドポイントが作成されていることを確認する
  • ポート 445 で SMB 接続を確認する
  • ユーザーがファイル共有に対する RBAC アクセス許可を持っていることを確認する
  • プライベート DNS ゾーンの仮想ネットワーク リンクを確認する

パフォーマンスが低い

現象: 応答が遅いセッション

解決策:

  • セッション ホスト VM のサイズが適切であることを確認する
  • Premium SSD ディスクが使用されていることを確認する
  • ホスト プールの負荷分散設定を確認する
  • ホスト構成あたりの最大セッション数を確認する
  • Azure Virtual Desktop Insights でネットワーク待機時間を監視する

リソースをクリーンアップする

継続的な料金を回避するには、不要になったらリソースを削除します。

順番に削除する

  1. アプリケーション グループからユーザー割り当てを削除する
  2. アプリケーション グループを削除する
  3. ワークスペースの削除
  4. ホスト プールの削除 (セッション ホストの停止/削除)
  5. ストレージ アカウントの削除
  6. ディスク暗号化セットを削除する
  7. Key Vault キーを削除
  8. マネージド ID を削除する
  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 Virtual Desktopデプロイすると、Azure Kubernetes Serviceワークロードをデプロイできるようになりました。

チュートリアル 2-4: Azure Kubernetes Service のワークロードをデプロイする