エンタープライズ向け Azure Virtual Desktop

Microsoft Entra ID
Microsoft Entra
Azure Virtual Network
Azure Virtual Desktop

Azure Virtual Desktop は Azure で実行されるデスクトップおよびアプリケーションの仮想化サービスです。 この記事は、デスクトップ インフラストラクチャ アーキテクト、クラウド アーキテクト、デスクトップ管理者、およびシステム管理者が、Azure Virtual Desktop について理解し、仮想デスクトップ インフラストラクチャ (VDI) ソリューションをエンタープライズ規模で構築するのに役立ちます。 一般に、エンタープライズ規模のソリューションは、1000 以上の仮想デスクトップを対象としています。

Architecture

Azure Virtual Desktop の一般的なアーキテクチャのセットアップを次の図に示します。

Azure Virtual Desktop サービスのアーキテクチャの図。

このアーキテクチャの Visio ファイルをダウンロードします。

データフロー

図のデータフロー要素を次に示します。

  • アプリケーション エンドポイントは、顧客のオンプレミス ネットワークにあります。 Azure ExpressRoute によってオンプレミスのネットワークは Azure に拡張され、Microsoft Entra Connect によって顧客の Active Directory Domain Services (AD DS) は Microsoft Entra ID と統合されます。

  • Azure Virtual Desktop のコントロール プレーンにより、Web アクセス、ゲートウェイ、ブローカー、診断に加えて、REST API などの機能拡張コンポーネントが処理されます。

  • 顧客は、AD DS と Microsoft Entra ID、Azure サブスクリプション、仮想ネットワーク、Azure Files または Azure NetApp Files、Azure Virtual Desktop ホスト プールとワークスペースを管理します。

  • 容量を増やすため、この顧客は 2 つの Azure サブスクリプションをハブスポーク アーキテクチャで使用し、仮想ネットワーク ピアリングを介してそれらを接続します。

FSLogix プロファイル コンテナー - Azure Files、Azure NetApp Files のベスト プラクティスについて詳しくは、FSLogix 構成の例をご覧ください。

コンポーネント

Azure Virtual Desktop のサービス アーキテクチャは、Windows Server のリモート デスクトップ サービスと似ています。 インフラストラクチャとブローカー コンポーネントは Microsoft によって管理されますが、企業顧客は自社のデスクトップ ホスト仮想マシン (VM)、データ、クライアントを管理します。

Microsoft によって管理されるコンポーネント

次の Azure Virtual Desktop サービスは、Microsoft によって Azure の一部として管理されます。

  • Web アクセス: Azure Virtual Desktop 内の Web アクセス サービスを使用すると、仮想デスクトップやリモート アプリへのアクセスを、ローカル PC の場合と同様に HTML5 互換 Web ブラウザーを使用して、任意のデバイスでどこからでも行えます。 Microsoft Entra ID の多要素認証を使って、Web アクセスをセキュリティで保護することができます。

  • ゲートウェイ: リモート接続ゲートウェイ サービスは、Azure Virtual Desktop クライアントを実行できる任意のインターネット接続済みデバイスから、リモート ユーザーを Azure Virtual Desktop のアプリとデスクトップに接続するものです。 クライアントからゲートウェイに接続すると、VM から同じゲートウェイへ戻る接続が調整されます。

  • 接続ブローカー: 接続ブローカー サービスは、仮想デスクトップとリモート アプリへのユーザー接続を管理します。 接続ブローカーにより、負荷分散と既存のセッションへの再接続が行われます。

  • 診断: リモート デスクトップ診断はイベントベースのアグリゲーターであり、これによって Azure Virtual Desktop デプロイ上の各ユーザーまたは管理者のアクションに成功または失敗のマークが付けられます。 管理者はイベント集計に対してクエリを実行して、エラーが発生しているコンポーネントを特定できます。

  • 機能拡張コンポーネント: Azure Virtual Desktop には、いくつかの機能拡張コンポーネントが含まれています。 Azure Virtual Desktop を管理するため、Windows PowerShell や、提供されている REST API (これによってサード パーティ ツールからのサポートも有効になります) を使用できます。

ユーザーが管理するコンポーネント

ユーザーは、Azure Virtual Desktop ソリューションの次のコンポーネントを管理します。

  • Azure Virtual Network: Azure Virtual Network を使用すると、VM などの Azure リソースが互いにプライベートな通信を行ったり、インターネットと通信したりできるようになります。 Azure Virtual Desktop ホスト プールを Active Directory ドメインに接続すると、イントラネットまたはインターネットから仮想デスクトップや仮想アプリにアクセスするためのネットワーク トポロジを、組織方針に基づいて定義できます。 仮想プライベート ネットワーク (VPN) を使用して Azure Virtual Desktop インスタンスをオンプレミスのネットワークに接続することや、Azure ExpressRoute を使用して、プライベート接続を介してオンプレミスのネットワークを Azure に拡張することができます。

  • Microsoft Entra ID: Azure Virtual Desktop では、ID とアクセスの管理に Microsoft Entra ID を使います。 Microsoft Entra の統合により、条件付きアクセス、多要素認証、インテリジェント セキュリティ グラフといった Microsoft Entra のセキュリティ機能が適用され、ドメイン参加済みの VM でのアプリの互換性の維持に役立ちます。

  • Active Directory Domain Services (省略可能): Azure Virtual Desktop VM は、AD DS サービスにドメイン参加するか、Azure Virtual Desktop の Microsoft Entra 参加仮想マシンをデプロイする を使うことができます

    • AD DS ドメインを使用する場合、2 つのサービス間でユーザーを関連付けるために、ドメインは Microsoft Entra ID と同期している必要があります。 Microsoft Entra Connect を使って、AD DS を Microsoft Entra ID に関連付けることができます。
    • Microsoft Entra Join を使う場合は、サポートされている構成を確認して、シナリオがサポートされていることを確かめます。
  • Azure Virtual Desktop セッション ホスト: セッション ホストとは、ユーザーが自分のデスクトップとアプリケーション用に接続する VM です。 複数のバージョンの Windows がサポートされており、アプリケーションとカスタマイズを使用してイメージを作成できます。 GPU 対応 VM を含め、VM サイズを選択できます。 各セッション ホストにある Azure Virtual Desktop ホスト エージェントにより、Azure Virtual Desktop のワークスペースまたはテナントの一部として VM が登録されます。 各ホスト プールには 1 つ以上のアプリ グループがあります。これは、ユーザーがアクセスできるリモート アプリケーションまたはデスクトップ セッションのコレクションです。 サポートされている Windows のバージョンを確認するには、「オペレーティング システムとライセンス」を参照してください。

  • Azure Virtual Desktop ワークスペース: Azure Virtual Desktop ワークスペースまたはテナントは、ホスト プール リソースを管理および発行するための管理構造です。

シナリオの詳細

考えられるユース ケース

エンタープライズ仮想デスクトップ ソリューションが最も必要とされるのは、主に次の場面です。

  • 金融サービス、医療、政府機関などのセキュリティおよび規制アプリケーション。

  • リモート作業、合併と買収、短期従業員、請負業者、パートナー アクセスなどの柔軟性が求められる労働ニーズ。

  • Bring Your Own Device (BYOD) およびモバイルのユーザー、コール センター、支社の従業員などの特定の従業員。

  • 設計とエンジニアリング、レガシ アプリ、ソフトウェア開発テストなどの特殊なワークロード。

個人用およびプールされたデスクトップ

個人用デスクトップ ソリューション (永続デスクトップとも呼ばれる) を使用すると、ユーザーは同じ特定のセッション ホストに常に接続できます。 ユーザーは通常、自分個人の好みに合わせてデスクトップ エクスペリエンスを変更し、そのデスクトップ環境にファイルを保存できます。 個人用デスクトップ ソリューションの特徴は次のとおりです。

  • ユーザーが自分のデスクトップ環境をカスタマイズできるようにします。デスクトップ環境にユーザーがインストールするアプリケーションを含めたり、ユーザーがファイルを保存したりできます。
  • 特定のユーザーに専用リソースを割り当てることができるようにします。これは、製造業や開発のユースケースで役に立つことがあります。

プールされたデスクトップ ソリューション (非永続的デスクトップとも呼ばれる) を使用すると、ユーザーは、負荷分散アルゴリズムに従って、現在使用可能なセッション ホストに割り当てられます。 ユーザーは、接続するたびに常に同じセッション ホストに戻るわけではないため、デスクトップ環境のカスタマイズは限られた範囲でのみ行うことができ、通常は管理者のアクセス権を持っていません。

Windows サービス

Azure Virtual Desktop インスタンスを更新するには、次のいくつかのオプションがあります。 更新されたイメージを毎月デプロイすると、コンプライアンスと状態が保証されます。

  • Microsoft Endpoint Configuration Manager (MECM) では、サーバーとデスクトップのオペレーティング システムが更新されます。
  • Windows Updates for Business では、Windows 10 マルチセッションなどのデスクトップ オペレーティング システムが更新されます。
  • Azure Update Management では、サーバー オペレーティング システムが更新されます。
  • Azure Log Analytics では、コンプライアンスの検査が行われます。
  • Windows とアプリケーションの最新の更新プログラムのため、新しい (カスタム) イメージを毎月セッション ホストにデプロイします。 Azure Marketplace のイメージを使用することも、カスタムの Azure マネージド イメージを使用することもできます。

主要な論理コンポーネント間のリレーションシップ

ホスト プール、ワークスペース、その他の主要な論理コンポーネント間のリレーションシップは異なります。 これらの内容を次の表にまとめます。

主要な論理コンポーネント間のリレーションシップを示す図。

以下の説明の数値は、上の図の数値に対応しています。

  • (1) 公開デスクトップを含むアプリケーション グループには、ホスト プールにマウントされた MSIX パッケージのみを含めることができ (パッケージはセッション ホストの [スタート] メニューで使用できます)、他の公開リソースを含めることはできず、デスクトップ アプリケーション グループと呼ばれます。
  • (2) 同じホスト プールに割り当てられているアプリケーション グループは、同じワークスペースのメンバーでなければなりません。
  • (3) ユーザー アカウントは、アプリケーション グループに直接割り当てるか、Microsoft Entra グループ経由で割り当てることができます。 アプリケーション グループにユーザーを割り当てないこともできますが、その場合、サービスを提供することはできません。
  • (4) 空のワークスペースを使用できますが、その場合にはユーザーにサービスを提供することはできません。
  • (5) 空のホスト プールを使用できますが、その場合にはユーザーにサービスを提供することはできません。
  • (6) ホスト プールにアプリケーション グループを割り当てないこともできますが、その場合にはユーザーにサービスを提供することはできません。
  • (7) Azure Virtual Desktop には Microsoft Entra ID が必要です。 これは、ユーザーを Azure Virtual Desktop アプリケーション グループに割り当てるには、Microsoft Entra ユーザー アカウントとグループを必ず使用しなければならないからです。 Microsoft Entra ID は、Azure Virtual Desktop サービスに対してユーザーを認証するときにも使われます。 また、Azure Virtual Desktop セッション ホストは Microsoft Entra ドメインのメンバーにすることもできます。この状況では、Azure Virtual Desktop 公開アプリケーションとデスクトップ セッションも起動され、Microsoft Entra アカウントを使って (単に割り当てられるだけではなく) 実行されます。
    • (7) また、Azure Virtual Desktop セッション ホストは AD DS ドメインのメンバーにすることができます。この状況では、Azure Virtual Desktop 公開アプリケーションとデスクトップ セッションも起動され、AD DS アカウントを使用して (割り当てられるだけではなく) 実行されます。 ユーザーと管理のオーバーヘッドを減らすには、Microsoft Entra Connect を介して AD DS を Microsoft Entra ID と同期できます。
    • (7) 最後に、Azure Virtual Desktop セッション ホストは代わりに Microsoft Entra Domain Services ドメインのメンバーにすることができます。この状況では、Azure Virtual Desktop 公開アプリケーションとデスクトップ セッションも起動され、Microsoft Entra Domain Services アカウントを使って (割り当てられるだけではなく) 実行されます。 Microsoft Entra ID は、Microsoft Entra ID から Microsoft Entra Domain Services の一方向にのみ、Microsoft Entra Domain Services と自動的に同期されます。
リソース 目的 論理リレーションシップ
公開デスクトップ Azure Virtual Desktop セッション ホスト上で実行され、ネットワーク経由でユーザーに配信される Windows デスクトップ環境 1 つのアプリケーション グループのみのメンバー (1)
公開アプリケーション Azure Virtual Desktop セッション ホスト上で実行され、ネットワーク経由でユーザーに配信される Windows アプリケーション 1 つのアプリケーション グループのみのメンバー
アプリケーション グループ 公開アプリケーションまたは公開デスクトップの論理グループ - 1 つの公開デスクトップ (1) または 1 つ以上の公開アプリケーションが含まれる
- 1 つのみのホスト プールに割り当てられる (2)
- 1 つのワークスペースのみのメンバー (2)
- 1 つ以上の Microsoft Entra ユーザー アカウントまたはグループが割り当てられる (3)
Microsoft Entra ユーザー アカウントとグループ 公開デスクトップまたはアプリケーションの起動が許可されているユーザーを識別する - 1 つだけの Microsoft Entra ID のメンバー
- 1 つ以上のアプリケーション グループに割り当てられる (3)
Microsoft Entra ID (7) ID プロバイダー - ユーザーをアプリケーション グループに割り当てるのに使用する必要があり、セッション ホストにログオンするときにも使用できる、1 つ以上のユーザー アカウントまたはグループが含まれる
- セッション ホストのメンバーシップを保持できる
- AD DS または Microsoft Entra Domain Services と同期できる
AD DS (7) ID サービス プロバイダーおよびディレクトリ サービス プロバイダー - セッション ホストへのログインに使用できる 1 つ以上のユーザー アカウントまたはグループが含まれる
- セッション ホストのメンバーシップを保持できる
- Microsoft Entra ID と同期できる
Microsoft Entra Domain Services (7) サービスとしてのプラットフォーム (PaaS) ベースの ID およびディレクトリ サービス プロバイダー - セッション ホストへのログインに使用できる 1 つ以上のユーザー アカウントまたはグループが含まれる
- セッション ホストのメンバーシップを保持できる
- Microsoft Entra ID と同期される
ワークスペース アプリケーション グループの論理グループ化 1 つ以上のアプリケーション グループが含まれる (4)
ホスト プール 共通の目的を果たす同一のセッション ホストのグループ - 1 つ以上のセッション ホストが含まれる (5)
- 1 つ以上のアプリケーション グループが割り当てられる (6)
セッション ホスト 公開デスクトップまたはアプリケーションをホストする仮想マシン 1 つのホスト プールのみのメンバー

考慮事項

以降の考慮事項には、ワークロードの品質向上に使用できる一連の基本原則である Azure "Well-Architected Framework" の要素が組み込まれています。 詳細については、「Microsoft Azure Well-Architected Framework」を参照してください。

以下のセクションの数値は概数です。 これらはさまざまな大規模な顧客デプロイに基づいており、時間の経過と共に変化する可能性があります。

次の点にも注意してください。

  • 1 つの Microsoft Entra テナントあたり 500 個を超えるアプリケーション グループを作成することはできません*。
  • アプリケーション グループあたり 50 本を超えるアプリケーションを公開しないことをお勧めします。

Azure Virtual Desktop の制限事項

Azure と同様、Azure Virtual Desktop には、注意しなければならないサービスに関する制限事項があります。 スケーリング フェーズで変更を加える必要がないようにするには、設計フェーズでこれらの制限事項の一部に対処することをお勧めします。

Azure Virtual Desktop オブジェクト 親コンテナー オブジェクトあたり サービスの制限
ワークスペース Microsoft Entra テナント 1300
ホスト プール ワークスペース 400
アプリケーション グループ Microsoft Entra テナント 500*
RemoteApp アプリケーション グループ 500
ロール割り当て 任意の Azure Virtual Desktop オブジェクト 200
セッション ホスト ホスト プール 10,000

*500 を超える申請グループが必要な場合は、Microsoft Azure portal 経由でサポート チケットをご提出ください。

  • リージョンごとに Azure サブスクリプションあたり 5,000 個以下の VM をデプロイすることをお勧めします。 このレコメンデーションは、Windows Enterprise シングル セッションとマルチセッションに基づく、個人用およびプールされたホスト プールの両方に適用されます。 大半の顧客は Windows Enterprise マルチセッションを使用しているため、複数のユーザーが各 VM にログオンできます。 個々のセッションホスト VM のリソースを増やすことで、より多くのユーザー セッションに対応できます。
  • 自動化されたセッションホスト スケーリング ツールの場合、リージョンごとの Azure サブスクリプションあたりの VM の上限は 2,500 程度です。これは、VM の状態の相互作用により多くのリソースが消費されるためです。
  • 同じリージョンで Azure サブスクリプションあたり 5,000 台以上の VM を含むエンタープライズ環境を管理するには、ハブスポーク アーキテクチャで複数の Azure サブスクリプションを作成し (スポークあたり 1 サブスクリプション)、仮想ネットワーク ピアリングを介してそれらを接続できます。 また、同じサブスクリプションで別のリージョンに VM をデプロイして VM の数を増やすこともできます。
  • Azure Resource Manager (ARM) サブスクリプション API の調整制限により、Azure portal を使用した 1 時間あたり 600 回を超える Azure VM の再起動は許可されません。 オペレーティング システムを使用して、すべてのマシンを一度に再起動できます。この方法であれば、Azure Resource Manager サブスクリプション API 呼び出しは使用されません。 Azure サブスクリプションに基づく調整制限のカウントとトラブルシューティングの詳細については、「API の調整エラーのトラブルシューティング」を参照してください。
  • 現在、Azure Virtual Desktop ポータルでは、1 つの ARM テンプレートのデプロイに最大 132 台の VM をデプロイできます。 132 を超える VM を作成するには、Azure Virtual Desktop ポータルで ARM テンプレートのデプロイを複数回実行します。
  • Azure VM セッションホスト名のプレフィックスは 11 文字を超えることはできません。これは、インスタンス名の自動割り当てと、コンピューター アカウントあたり 15 文字の NetBIOS 制限によるものです。
  • 既定では、1 つのリソース グループにほとんどの種類のリソースのインスタンスを最大で 800 個までデプロイできます。 Azure Compute にはこの制限はありません。

Azure サブスクリプションの制限事項の詳細については、「Azure サブスクリプションとサービスの制限、クォータ、制約」を参照してください。

VM のサイズ設定

仮想マシンのサイズ設定のガイドライン」の表に、仮想中央処理ユニット (vCPU) あたりの推奨される最大ユーザー数と、それぞれのワークロードの最小 VM 構成がまとめられています。 このデータは、ホスト プールで必要な VM を見積もるのに役立ちます。

シミュレーション ツールを使用すると、ストレス テストと実際の使用状況の両方のシミュレーションでデプロイをテストできます。 システムがユーザーのニーズを満たすのに十分な応答性と回復性を備えていることを確認します。テスト時には負荷のサイズに変化を持たせることを忘れないようにしてください。

コスト最適化

コストの最適化とは、不要な費用を削減し、運用効率を向上させる方法を検討することです。 詳しくは、コスト最適化の柱の概要に関する記事をご覧ください。

コスト削減を実現できる Azure Virtual Desktop ソリューションを設計できます。 企業のコスト管理に役立つ 5 つのオプションを次に示します。

  • Windows 10 マルチセッション: コンピューティング要件が同じユーザーにマルチセッション デスクトップ エクスペリエンスを提供すると、より多くのユーザーが 1 つの VM に同時にログオンできるようになり、かなりのコスト節約を実現できます。
  • [Azure ハイブリッド特典] : ソフトウェア アシュアランスをお持ちの場合は、Windows Server 向け Azure ハイブリッド特典を利用することで、Azure インフラストラクチャのコストを節約できます。
  • Azure Reserved VM Instances: VM の使用料を前払いすることで、費用を節約できます。 Azure Reserved VM Instances を Azure ハイブリッド特典と組み合わせて使用することにより、定価から最大 80% 節約できます。
  • セッション ホストの負荷分散: セッション ホストを設定する場合、セッション ホスト間でユーザーをランダムに分散させる幅優先モードが標準の既定モードです。 代わりに、深さ優先モードを使用して、1 つのセッション ホスト サーバーが最大数のユーザーでいっぱいになってから、次のセッション ホストに移ることができます。 この設定を調整することにより、コスト面の利点を最大にできます。

このシナリオのデプロイ

ARM テンプレートを使用して、Azure Virtual Desktop 環境のデプロイを自動化します。 これらの ARM テンプレートでは、Azure Resource Manager Azure Virtual Desktop オブジェクトのみがサポートされています。 これらの ARM テンプレートでは、Azure Virtual Desktop (クラシック) はサポートされていません。

共同作成者

この記事は、Microsoft によって保守されています。 当初の寄稿者は以下のとおりです。

プリンシパル作成者:

  • Tom Hickling | シニア プロダクト マネージャー、Azure Virtual Desktop エンジニアリング

その他の共同作成者:

次のステップ