技術的な概要
XenApp and XenDesktop® は、IT部門が仮想マシン、アプリケーション、ライセンス、セキュリティを制御しながら、あらゆるデバイスからどこからでもアクセスできるようにする仮想化ソリューションです。
XenApp® および XenDesktop は、以下を可能にします。
- エンドユーザーがデバイスのオペレーティングシステムやインターフェースに依存せずにアプリケーションやデスクトップを実行すること。
- 管理者がネットワークを管理し、選択したデバイスまたはすべてのデバイスからのアクセスを制御すること。
- 管理者が単一のデータセンターからネットワーク全体を管理すること。
XenApp と XenDesktop は、FlexCast Management Architecture (FMA) と呼ばれる統合アーキテクチャを共有しています。FMA の主な機能は、単一のSiteから複数のバージョンのXenAppまたはXenDesktopを実行できることと、統合されたプロビジョニングです。
XenApp および XenDesktop の主要コンポーネント
この記事は、XenApp または XenDesktop を初めて使用する方に最も役立ちます。現在、6.x 以前の XenApp ファーム、または XenDesktop 5.6 以前のサイトをお持ちの場合は、7.x の変更点 の記事も参照してください。
この図は、Site と呼ばれる一般的な展開における主要コンポーネントを示しています。

デリバリーコントローラー™:
Delivery Controller は、XenApp または XenDesktop Site の中心的な管理コンポーネントです。各 Site には 1 つ以上の Delivery Controller があります。これはデータセンター内の少なくとも 1 台のサーバーにインストールされます。Site の信頼性と可用性を確保するためには、Controller を複数のサーバーにインストールする必要があります。展開にハイパーバイザーまたはクラウドサービスでホストされている仮想マシンが含まれる場合、Controller サービスはそれらと通信して、アプリケーションとデスクトップを配布し、ユーザーアクセスを認証および管理し、ユーザーと仮想デスクトップおよびアプリケーション間の接続を仲介し、接続を最適化し、これらの接続の負荷分散を行います。
Controller の Broker Service は、どのユーザーがどこにログオンしているか、ユーザーがどのようなセッションリソースを持っているか、ユーザーが既存のアプリケーションに再接続する必要があるかを追跡します。Broker Service は PowerShell コマンドレットを実行し、TCP ポート 80 を介して VDA 上のブローカーエージェントと通信します。TCP ポート 443 を使用するオプションはありません。
Monitor Service は履歴データを収集し、Monitor データベースに格納します。このサービスは TCP ポート 80 または 443 を使用します。
コントローラーサービスからのデータは、サイトデータベースに保存されます。
コントローラーは、需要と管理構成に基づいてデスクトップの状態を管理し、起動および停止します。一部のエディションでは、コントローラーを使用してプロファイル管理をインストールし、仮想化されたWindows環境または物理Windows環境でユーザーのパーソナル設定を管理できます。
データベース:
各XenAppまたはXenDesktopサイトには、構成情報とセッション情報を保存するために、少なくとも1つのMicrosoft SQL Serverデータベースが必要です。このデータベースには、コントローラーを構成するサービスによって収集および管理されるデータが保存されます。データベースはデータセンター内にインストールし、コントローラーへの永続的な接続があることを確認してください。サイトは、構成ログデータベースと監視データベースも使用します。デフォルトでは、これらのデータベースはサイトデータベースと同じ場所にインストールされますが、これは変更できます。
バーチャル デリバリー エージェント (VDA):
VDAは、ユーザーに提供するサイト内の各物理マシンまたは仮想マシンにインストールされます。これらのマシンは、アプリケーションまたはデスクトップを提供します。VDAは、マシンがコントローラーに登録できるようにし、それによってマシンとそれがホストするリソースをユーザーが利用できるようにします。VDAは、マシンとユーザーデバイス間の接続を確立および管理し、ユーザーまたはセッションでCitrix®ライセンスが利用可能であることを確認し、セッション用に構成されているポリシーを適用します。
VDAは、VDA内のブローカーエージェントを介して、コントローラー内のブローカーサービスにセッション情報を伝達します。ブローカーエージェントは複数のプラグインをホストし、リアルタイムデータを収集します。TCPポート80を介してコントローラーと通信します。
「VDA」という言葉は、エージェントだけでなく、それがインストールされているマシンを指すためにもよく使用されます。
VDAは、Windowsサーバーおよびデスクトップオペレーティングシステムで利用できます。Windowsサーバーオペレーティングシステム用のVDAは、複数のユーザーが同時にサーバーに接続できるようにします。Windowsデスクトップオペレーティングシステム用のVDAは、一度に1人のユーザーのみがデスクトップに接続できるようにします。Linux VDAも利用可能です。
シトリックス ストアフロント™:
StoreFrontは、リソースをホストするサイトに対してユーザーを認証し、ユーザーがアクセスするデスクトップとアプリケーションのストアを管理します。エンタープライズアプリケーションストアをホストでき、これによりユーザーは利用可能なデスクトップとアプリケーションにセルフサービスでアクセスできます。また、ユーザーのアプリケーションサブスクリプション、ショートカット名、その他のデータも追跡します。これにより、ユーザーは複数のデバイスで一貫したエクスペリエンスを得ることができます。
シトリックス レシーバー™:
ユーザーデバイスやその他のエンドポイント(仮想デスクトップなど)にインストールされたCitrix Receiverは、スマートフォン、タブレット、PCを含むユーザーのあらゆるデバイスから、ドキュメント、アプリケーション、デスクトップへの迅速で安全なセルフサービスアクセスをユーザーに提供します。Citrix Receiverは、Windows、Web、およびSoftware as a Service (SaaS) アプリケーションへのオンデマンドアクセスを提供します。Citrix Receiverソフトウェアをインストールできないデバイスの場合、Citrix Receiver for HTML5はHTML5互換のWebブラウザーを介した接続を提供します。
シトリックス スタジオ:
Studioは、XenAppおよびXenDesktopの展開を構成および管理できる管理コンソールです。このコンソールにより、アプリケーションとデスクトップの配信を管理するための個別の管理コンソールが不要になります。Studioは、環境設定、アプリケーションとデスクトップをホストするワークロードの作成、およびユーザーへのアプリケーションとデスクトップの割り当てをガイドするウィザードを提供します。Studioを使用して、サイトのCitrixライセンスを割り当てて追跡することもできます。
Studio は、Controller 内の Broker Service から表示する情報を取得し、TCP ポート 80 経由で通信します。
シトリックス ディレクター:
Director は、IT サポートおよびヘルプデスクチームが環境を監視し、システムに重大な問題が発生する前にトラブルシューティングを行い、エンドユーザーのサポートタスクを実行できるようにする Web ベースのツールです。1 つの Director 展開を使用して、複数の XenApp または XenDesktop サイトに接続し、監視できます。
Director は以下を表示します。
Controller 内の Broker Service からのリアルタイムセッションデータ。これには、Broker Service が VDA 内のブローカーエージェントから取得するデータが含まれます。
コントローラー内のモニターサービスからの履歴サイトデータ。
展開に NetScaler が含まれており、XenApp または XenDesktop エディションに HDX Insight が含まれている場合、NetScaler® から HDX Insight によってキャプチャされた HDX トラフィック (ICA トラフィックとも呼ばれる) に関するデータ。
Windows リモートアシスタンスを使用して、Director を介してユーザーのセッションを表示および操作することもできます。
シトリックス ライセンスサーバー:
License Server は、Citrix 製品ライセンスを管理します。Controller と通信して各ユーザーのセッションのライセンスを管理し、Studio と通信してライセンスファイルを割り当てます。ライセンスファイルを保存および管理するには、少なくとも 1 つのライセンスサーバーを作成する必要があります。
ハイパーバイザーまたはクラウドサービス:
ハイパーバイザーまたはクラウドサービスは、サイト内の仮想マシンをホストします。これらは、アプリケーションやデスクトップをホストするために使用する VM や、XenApp および XenDesktop コンポーネントをホストするために使用する VM になります。ハイパーバイザーは、ハイパーバイザーの実行と仮想マシンのホストに完全に特化したホストコンピューターにインストールされます。
XenApp および XenDesktop は、さまざまなハイパーバイザーとクラウドサービスをサポートしています。
多くの XenApp および XenDesktop 展開ではハイパーバイザーが必要ですが、リモート PC アクセスを提供するためにハイパーバイザーは必要ありません。また、Provisioning Services (PVS) を使用して VM をプロビジョニングする場合もハイパーバイザーは必要ありません。
詳細については、以下を参照してください。
- ポートについては、ネットワークポートを参照してください。
- データベースについては、データベースを参照してください。
- XenAppおよびXenDesktopコンポーネントのWindowsサービスについては、ユーザー権限の構成を参照してください。
- サポートされるハイパーバイザーとクラウドサービスについては、システム要件を参照してください。
追加コンポーネント
上記の図には示されていませんが、以下の追加コンポーネントもXenAppまたはXenDesktopの展開に含めることができます。詳細については、それぞれのドキュメントを参照してください。
プロビジョニングサービス (PVS):
PVSは、一部のエディションで利用可能なオプションコンポーネントです。仮想マシンをプロビジョニングするためのMCSの代替手段を提供します。MCSがマスターイメージのコピーを作成するのに対し、PVSはマスターイメージをユーザーデバイスにストリーミングします。PVSはこれを行うためにハイパーバイザーを必要としないため、物理マシンをホストするために使用できます。PVSはControllerと通信して、ユーザーにリソースを提供します。
ネットスケーラー ゲートウェイ:
ユーザーが企業のファイアウォールの外部から接続する場合、XenAppおよびXenDesktopはCitrix NetScaler Gateway(旧称Access Gateway)テクノロジーを使用して、TLSでこれらの接続を保護できます。NetScaler GatewayまたはNetScaler VPX™仮想アプライアンスは、企業のファイアウォールを介した単一の安全なアクセスポイントを提供するために、非武装地帯(DMZ)に展開されるSSL VPNアプライアンスです。
ネットスケーラー SD-WAN:
支社などのリモート拠点にいるユーザーに仮想デスクトップが提供される展開では、Citrix NetScaler SD-WANテクノロジーを使用してパフォーマンスを最適化できます。(このテクノロジーは以前、Citrix CloudBridge®、Branch Repeater、またはWANScalerと呼ばれていました。)リピーターは広域ネットワーク全体のパフォーマンスを高速化します。ネットワークにリピーターがある場合、支社のユーザーはWAN上でLANのようなパフォーマンスを体験できます。NetScaler SD-WANは、ユーザーエクスペリエンスのさまざまな部分に優先順位を付けることができます。たとえば、大規模なファイルや印刷ジョブがネットワーク経由で送信されても、支社のユーザーエクスペリエンスは低下しません。HDX WAN最適化は、トークン化された圧縮とデータ重複排除を提供し、帯域幅要件を削減し、パフォーマンスを向上させます。
一般的な展開の仕組み
サイトは、スケーラビリティ、高可用性、フェールオーバーを可能にし、設計上安全なソリューションを提供する専用の役割を持つマシンで構成されます。サイトは、VDAがインストールされたサーバーとデスクトップマシン、およびアクセスを管理するDelivery Controllerで構成されます。

VDAを使用すると、ユーザーはデスクトップやアプリケーションに接続できます。ほとんどの配信方法では、データセンター内のサーバーまたはデスクトップマシンにインストールされますが、Remote PC Accessの場合は物理PCにもインストールできます。
Controllerは、リソース、アプリケーション、デスクトップを管理し、ユーザー接続を最適化およびバランス調整する独立したWindowsサービスで構成されています。各サイトには1つ以上のControllerがあります。セッションは待機時間、帯域幅、ネットワークの信頼性の影響を受けるため、すべてのControllerは理想的には同じLAN上にあるべきです。
ユーザーがControllerに直接アクセスすることはありません。VDAは、ユーザーとController間の仲介役として機能します。ユーザーがStoreFrontを使用してサイトにログオンすると、資格情報がController上のBroker Serviceに渡されます。その後、Broker Serviceは、ユーザーに設定されたポリシーに基づいて、ユーザーのプロファイルと利用可能なリソースを取得します。
ユーザー接続の処理方法
セッションを開始するには、ユーザーはユーザーのデバイスにインストールされているCitrix Receiver、またはStoreFrontのCitrix Receiver for Webサイトのいずれかを介して接続します。
ユーザーは、必要な物理または仮想デスクトップ、あるいは仮想アプリケーションを選択します。
ユーザーの資格情報は、この経路を介してControllerにアクセスし、ControllerはBroker Serviceと通信して必要なリソースを決定します。Citrixは、Citrix Receiverから送信される資格情報を暗号化するために、管理者がStoreFrontにSSL証明書を配置することを推奨します。
ローカライズされた画像(/ja-jp/xenapp-and-xendesktop/7-15-ltsr/media/user-connections.png)
Broker Serviceは、ユーザーがアクセスを許可されているデスクトップとアプリケーションを決定します。
資格情報が検証されると、利用可能なアプリケーションまたはデスクトップに関する情報が、StoreFront-Citrix Receiver経路を介してユーザーに返送されます。ユーザーがこのリストからアプリケーションまたはデスクトップを選択すると、その情報は経路を介してControllerに戻されます。その後、Controllerは特定のアプリケーションまたはデスクトップをホストする適切なVDAを決定します。
Controllerは、ユーザーの資格情報とともにVDAにメッセージを送信し、その後、ユーザーと接続に関するすべてのデータをVDAに送信します。VDAは接続を受け入れ、同じ経路を介してCitrix Receiverに情報を返送します。必要なパラメーターのセットがStoreFrontで収集されます。これらのパラメーターは、Receiver-StoreFrontプロトコル会話の一部として、またはIndependent Computing Architecture (ICA®) ファイルに変換されてダウンロードされるかのいずれかの方法で、Citrix Receiverに送信されます。サイトが適切に設定されていれば、このプロセス全体で資格情報は暗号化されたままになります。
ICAファイルはユーザーのデバイスにコピーされ、デバイスとVDA上で実行されているICAスタックとの間に直接接続を確立します。この接続は、管理インフラストラクチャ(Citrix Receiver、StoreFront、Controller)をバイパスします。
Citrix ReceiverとVDA間の接続には、Citrix Gateway Protocol (CGP) が使用されます。接続が失われた場合、セッションの信頼性機能により、ユーザーは管理インフラストラクチャを介して再起動することなくVDAに再接続できます。セッションの信頼性は、Citrixポリシーで有効または無効にできます。
クライアントがVDAに接続すると、VDAはユーザーがログオンしたことをControllerに通知します。Controllerはこの情報をサイトデータベースに送信し、監視データベースにデータのログ記録を開始します。
データアクセスが機能する方法
すべてのセッションは、IT部門がStudioまたはDirectorを通じてアクセスできるデータを生成します。Studioを使用すると、管理者はBroker Agentからリアルタイムデータにアクセスしてサイトを管理できます。Directorは、同じリアルタイムデータに加えて、監視データベースに保存されている履歴データにもアクセスします。Directorは、ヘルプデスクサポートとトラブルシューティングのために、NetScaler GatewayからHDX™データにもアクセスします。

Controller内では、Broker Serviceがリアルタイムデータを提供するマシンのすべてのセッションのセッションデータを報告します。Monitor Serviceもリアルタイムデータを追跡し、それを履歴データとして監視データベースに保存します。
StudioはBroker Serviceとのみ通信するため、リアルタイムデータにのみアクセスします。DirectorはBroker Service(Broker Agent内のプラグインを介して)と通信し、サイトデータベースにアクセスします。
DirectorはNetScaler Gatewayにもアクセスして、HDXデータに関する情報を取得できます。
デスクトップとアプリケーションの配信:マシンカタログ、デリバリーグループ、およびアプリケーショングループ
アプリケーションとデスクトップを配信するマシンは、マシンカタログを使用して設定します。次に、利用可能なアプリケーションとデスクトップ(カタログ内の一部のマシンまたはすべてのマシンを使用)と、それらにアクセスできるユーザーを指定するデリバリーグループを作成します。
マシンカタログ:
マシンカタログは、単一のエンティティとして管理する仮想マシンまたは物理マシンのコレクションです。これらのマシンと、それらに搭載されているアプリケーションまたは仮想デスクトップは、ユーザーに提供するリソースです。カタログ内のすべてのマシンは、同じオペレーティングシステムと、同じVDAがインストールされています。また、同じアプリケーションまたは仮想デスクトップも搭載されています。
通常、マスターイメージを作成し、それを使用してカタログ内に同一のVMを作成します。VMの場合、そのカタログ内のマシンのプロビジョニング方法(Citrixツール(PVSまたはMCS)またはその他のツール)を指定できます。または、独自の既存のイメージを使用することもできます。その場合、ターゲットデバイスは個別に管理するか、サードパーティの電子ソフトウェア配布(ESD)ツールを使用してまとめて管理する必要があります。
有効なマシンタイプは次のとおりです。
- サーバーOSマシン:サーバーオペレーティングシステムに基づく仮想マシンまたは物理マシン。XenApp公開アプリケーション(サーバーベースのホスト型アプリケーションとして知られる)およびXenApp公開デスクトップ(サーバーホスト型デスクトップとして知られる)の配信に使用されます。これらのマシンには、複数のユーザーが同時に接続できます。
- デスクトップOSマシン:デスクトップオペレーティングシステムに基づく仮想マシンまたは物理マシン。VDIデスクトップ(オプションでパーソナライズ可能)、VMホスト型アプリケーション(デスクトップOSからのアプリケーション)、およびホスト型物理デスクトップの配信に使用されます。これらのデスクトップには、一度に1人のユーザーのみが接続できます。
- Remote PC Access:Citrix Receiverを実行している任意のデバイスから、リモートユーザーが物理オフィスPCにアクセスできるようにします。オフィスPCはXenDesktop展開を通じて管理され、ユーザーデバイスはホワイトリストで指定する必要があります。
詳細については、「マシンカタログの作成」を参照してください。
デリバリーグループ:
デリバリーグループは、どのユーザーがどのマシン上のどのアプリケーションやデスクトップにアクセスできるかを指定します。デリバリーグループには、マシンカタログのマシンと、サイトにアクセスできるActive Directoryユーザーが含まれます。Active Directoryグループとデリバリーグループは、同様の要件を持つユーザーをグループ化する方法であるため、Active Directoryグループによってユーザーをデリバリーグループに割り当てることができます。
各デリバリーグループは複数のカタログのマシンを含むことができ、各カタログは複数のデリバリーグループにマシンを提供できます。ただし、個々のマシンは一度に1つのデリバリーグループにのみ属することができます。
デリバリーグループのユーザーがアクセスできるリソースを定義します。たとえば、異なるアプリケーションを異なるユーザーに配信するには、1つのカタログのマスターイメージにすべてのアプリケーションをインストールし、そのカタログに十分な数のマシンを作成して、複数のデリバリーグループに分散させることができます。その後、各デリバリーグループを構成して、マシンにインストールされているアプリケーションの異なるサブセットを配信できます。
詳しくは、「デリバリーグループの作成」を参照してください。
アプリケーショングループ:
アプリケーショングループは、複数のデリバリーグループを使用するよりも、アプリケーション管理とリソース制御の利点を提供します。タグ制限機能を使用すると、既存のマシンを複数の公開タスクに使用できるため、展開と追加のマシンの管理に関連するコストを節約できます。タグ制限は、デリバリーグループ内のマシンを細分化(またはパーティション分割)するものと考えることができます。アプリケーショングループは、デリバリーグループ内のマシンの一部を分離してトラブルシューティングする場合にも役立ちます。
詳しくは、「アプリケーショングループの作成」を参照してください。