Product Documentation

App-V

Mar 25, 2016

XenAppおよびXenDesktopでのApp-Vの使用

Microsoft Application Virtualization(App-V)を使用すると、アプリケーションをサービスとして展開、更新、およびサポートできます。 ユーザーは、自分のデバイスにインストールすることなくこれらのアプリケーションにアクセスできます。 App-VおよびMicrosoft User State Virtualization(USV)では、場所やインターネット接続を問わずに、ユーザーにアプリケーションやデータへのアクセスを提供できます。

次の表は、サポートされるバージョンの一覧です。

App-V

XenDesktopおよびXenAppのバージョン

 

Delivery Controller

VDA

5.0および5.0 SP1

XenDesktop 7以降

XenApp 7.5以降

7.0~現在の

5.0 SP2

XenDesktop 7以降

XenApp 7.5以降

7.1~現在の

5.0 SP3および5.1

XenDesktop 7.6以降

XenApp 7.6以降

7.6.300~現在の

App-V Clientは、アプリケーションへのオフラインアクセスをサポートしません。 App-Vの統合機能により、アプリケーションでのSMB共有の使用がサポートされます。HTTPプロトコルはサポートされません。

App-Vについて詳しくは、Microsoft社のドキュメントを参照してください。 以下に、本書で説明するApp-Vコンポーネントの概要を示します。

  • Management server(管理サーバー)。  App-Vインフラストラクチャを管理したり、App-Vデスクトップクライアントやリモートデスクトップサービスクライアントに仮想アプリケーションを配信したりするための中央管理コンソールです。 App-V管理サーバーは、セキュリティ、測定、監視、および管理者によって要求されるデータ収集を認証、要求、および提供します。 このサーバーは、Active Directoryといくつかのツールを使用してユーザーとアプリケーションを管理します。
  • Publishing server(公開サーバー)。  App-V Clientに特定ユーザー用のアプリケーションを提供し、ストリーム配信用の仮想アプリケーションパッケージをホストします。 これらのパッケージは、管理サーバーから取得されます。
  • クライアント。  公開サーバーから仮想アプリケーションを取得したり、クライアント上のアプリケーションを公開したり、Windowsデバイス上で仮想環境のランタイムを自動的にセットアップおよび管理したりします。 App-V ClientはVDAにインストールされ、VDAには、各ユーザープロファイルのレジストリやファイルの変更など、ユーザー固有の仮想アプリケーション設定が格納されます。

アプリケーションは、事前構成やオペレーティングシステム設定の変更を行わなくても、シームレスに使用可能になります。 以下の方法で、サーバーOSおよびデスクトップOSのデリバリーグループからApp-Vアプリケーションを起動できます。

  • Citrix Receiverを使用して起動する。
  • [スタート]メニューから起動する。
  • App-VクライアントおよびCitrix Receiverを使用して起動する。
  • 複数のデバイス上のアプリケーションを複数ユーザーが同時に起動する。
  • Citrix StoreFrontから起動する。

App-Vアプリケーションのプロパティに対する変更は、そのアプリケーションの起動時に適用されます。 たとえば、アプリケーションの表示名やアイコンを変更した場合、ユーザーがそのアプリケーションを起動すると変更内容が表示されます。

管理方式

App-V Sequencerで作成され、その後App-Vサーバーまたはネットワーク共有のいずれかに配置されたApp-Vパッケージを使用できます。

  • App-Vサーバー:App-Vサーバーにあるパッケージのアプリケーションを使用するには、検出、構成、VDAへのダウンロードを実施できるように、StudioとApp-Vサーバー間で継続的な通信が確立されている必要があります。 この通信により、ハードウェア、インフラストラクチャ、および管理にオーバーヘッドが生じます。 StudioとApp-Vサーバーは、特にユーザーの権限においては、同期されたままである必要があります。

これは、デュアル管理方式と呼ばれます。App-Vパッケージとアプリケーションにアクセスするには、StudioとApp-Vサーバーコンソールの両方が必要なためです。 この方式は、App-VとCitrix環境が緊密に統合されている場合に最適に機能します。

  • ネットワーク共有:ネットワーク共有に置かれたパッケージを使用すると、App-Vサーバーとデータベースインフラストラクチャ間のStudioの依存関係が排除されるため、オーバーヘッドが軽減されます (この場合も、Microsoft App-V Clientを各VDAにインストールする必要があります)。

これは、シングル管理方式と呼ばれます。App-Vパッケージとアプリケーションを使用するには、Studioのコンソールのみが必要なためです。 ネットワーク共有を検索し、1つまたは複数のApp-Vパッケージを、ネットワーク共有からサイトレベルのアプリケーションライブラリに追加します。

アプリケーションライブラリは、App-Vパッケージに関する情報を保存するキャッシングリポジトリを表すCitrixの用語です。 またアプリケーションライブラリでは、ほかのCitrixアプリケーションの配信テクノロジに関する情報も保存されます。

いずれかの管理方式を使用することも、両方の管理方式を同時に使用することもできます。 つまり、アプリケーションをデリバリーグループに追加する場合、App-Vサーバーとネットワーク共有に置かれたApp-Vパッケージのどちらからもアプリケーションを追加できます。 

Studioのナビゲーションペインで、[構成]>[App-V公開]の順に選択すると、App-Vパッケージの名前とソースが表示されます。 ソースの列には、パッケージがApp-Vサーバーにあるか、またはアプリケーションライブラリにキャッシュされているかが表示されます。 パッケージを選択すると、詳細ペインにパッケージ内のアプリケーションが一覧表示されます。

セットアップ

次の表は、XenAppおよびXenDesktopでApp-Vを使用する場合のセットアップ作業の順序をまとめたものです。

管理方式

目的

シングル管理方式

デュアル管理方式

 

App-Vの展開

パッケージングと配置

 

StudioでのApp-Vサーバーアドレスの構成

VDAマシンへのソフトウェアのインストール

 

アプリケーションライブラリへのApp-Vパッケージの追加

デリバリーグループへのApp-Vアプリケーションの追加

Microsoft App-Vの展開

App-Vの展開手順については、http://technet.microsoft.com/en-us/virtualization/hh710199を参照してください。

必要に応じて、App-V公開サーバーの設定を変更します。 ControllerでSDKのコマンドレットを使用することをお勧めします。詳しくは、SDKのドキュメントを参照してください。

  • 公開サーバーの設定を表示するには、Get-CtxAppvServerSetting -AppVPublishingServer <pubServer>と入力します。
  • App-Vアプリケーションが正しく起動するようにするには、Set-CtxAppvServerSetting –UserRefreshonLogon 0と入力します。

これまでGPOポリシーを使用して公開サーバーの設定を管理していた場合、GPOでの設定は、コマンドレットでの設定を含むすべてのApp-V統合設定よりも優先されます。 そのため、App-Vアプリケーションの起動に失敗する可能性があります。 この問題を避けるために、すべてのGPOポリシー設定を削除し、その後SDKを使用してこれらの設定を行うことを推奨します。

パッケージングと配置

どちらの管理方式でも、App-V Sequencerを使用してアプリケーションパッケージを作成します。 詳しくは、Microsoft社のドキュメントを参照してください。

  • シングル管理方式では、汎用名前付け規則またはサーバーメッセージブロックで共有されるネットワークの場所でパッケージを利用できるようにします。 アプリケーションをデリバリーグループに追加するStudio管理者が、少なくともその場所の読み取りアクセスを保有していることを確認します。
  • デュアル管理方式では、App-V Management serverでパッケージを公開します。

パッケージがApp-Vサーバーにあるか、ネットワーク共有上にあるかにかかわらず、Studio管理者がアクセスできるよう、そのパッケージに適切なセキュリティ権限が付与されていることを確認します。

StudioでのApp-Vサーバーアドレスの構成

この手順は、デュアル管理方式にのみ適用されます。 

デュアル管理方式では、サイトの作成中または作成後に、App-V Management serverおよび公開サーバーのアドレスを指定します。 この作業は、サイトの作成中または作成後に実行できます。

サイトの作成中に実行する場合:

ウィザードの[App-V]ページで、Microsoft App-V Management serverのURLと、App-V公開サーバーのURLおよびポート番号を入力します。 ウィザードを続行する前に接続をテストします。 テストに失敗した場合は、下記のトラブルシューティングのセクションを参照してください。

サイトの作成後に実行する場合:

  1. Studioのナビゲーションペインで、[構成]>[App-V公開]の順に選択します。
  2. App-Vサーバーのアドレスをまだ指定していない場合、[操作]ペインで[Microsoftサーバーの追加]を選択します。
  3. App-Vサーバーのアドレスを変更するには、[操作]ペインで[Microsoftサーバーの編集]を選択します。
  4. Microsoft App-V Management serverのURLと、App-V公開サーバーのURLおよびポート番号を入力します。
  5. ダイアログボックスを閉じる前に、これらのサーバーへの接続をテストします。 テストに失敗した場合は、下記のトラブルシューティングのセクションを参照してください。

その後、App-V Management serverと公開サーバーへのリンクをすべて削除し、StudioでのそれらのサーバーのApp-Vパッケージの検出をStudioで停止する場合は、[操作]ペインで[Microsoftサーバーの削除]を選択します。 この操作は、それらのサーバーに置かれたパッケージのアプリケーションが、現在どのデリバリーグループでも公開されていない場合に限り実行できます。 公開されている場合は、App-Vサーバーを削除する前に、そのアプリケーションをデリバリーグループから削除する必要があります。 

VDAマシンへのソフトウェアのインストール

VDAがインストールされたマシンには、App-Vをサポートするために、2セットのソフトウェアをインストールする必要があります。1セットはMicrosoft社、もう1セットはCitrixのソフトウェアです。 

Microsoft App-V Client

公開サーバーから仮想アプリケーションを取得し、クライアント上のアプリケーションを公開し、Windowsデバイスにランタイムの仮想環境を自動的にセットアップおよび管理するソフトウェアです。 App-V Clientには、各ユーザープロファイルのレジストリやファイルの変更など、ユーザー固有の仮想アプリケーション設定が格納されます。

App-V Clientは、Microsoft社から提供されます。 App-V Clientを、VDAがインストールされた各マシン、または仮想マシンを作成するためにマシンカタログで使用されるマスターイメージにインストールします。 

ヒント:App-V Clientをインストールしたら、管理者権限でPowerShellのGet-AppvClientConfigurationコマンドレットを実行し、EnablePackageScriptsが1に設定されていることを確認します。 1に設定されてない場合は、Set-AppvClientConfiguration -EnablePackageScripts $trueを実行します。

Citrix App-Vコンポーネント

Citrix App-Vコンポーネントソフトウェアは、VDAのインストール時にデフォルトでインストールされ、有効化されます。このとき、App-V公開コンポーネントにアクセスできるローカル管理者権限を持つアカウントも作成されます。 

VDAのインストール時にこのデフォルトの操作を制御することもできます。 グラフィックインターフェイスで、[機能]ページの[App-V公開コンポーネントのインストール]チェックボックスをオフにします。  コマンドラインインターフェイスで、/no_appvオプションを含めます。

VDAのインストール中にCitrix App-Vコンポーネントの機能を意図的に無効化し、後でApp-Vアプリケーションを使用する必要が生じた場合は、Windowsの[プログラムと機能]の一覧で[Citrix Virtual Delivery Agent]を右クリックし、[変更]を選択します。 ウィザードが起動されます。 そのウィザードで、App-V公開コンポーネントをインストールおよび有効化するオプションを有効にします。

アプリケーションライブラリへのApp-Vパッケージの追加

この手順は、シングル管理方式にのみ適用されます。

少なくとも、App-Vパッケージが置かれたネットワーク共有への読み取りアクセスを保有している必要があります。

  1. Studioのナビゲーションペインで、[構成]>[App-V公開]の順に選択します。
  2. [操作]ペインで[パッケージの追加]を選択します。
  3. App-Vパッケージの置かれたネットワーク共有を検索し、1つまたは複数のパッケージを選択します。
  4. [Add]をクリックします。

デリバリーグループへのApp-Vアプリケーションの追加

以下の手順は、App-Vアプリケーションをデリバリーグループに追加する方法を紹介するものです。 デリバリーグループの作成について詳しくは、「デリバリーグループの作成」を参照してください。

手順1:新しいデリバリーグループを作成するか、または既存のデリバリーグループにApp-Vアプリケーションを追加するかを選択します。

App-Vアプリケーションを含むデリバリーグループを作成するには、次の手順に従います。

  1. Studioのナビゲーションペインで[デリバリーグループ]を選択します。
  2. [操作]ペインの[デリバリーグループの作成]を選択します。
  3. ウィザードの後続のページで、マシンカタログとユーザーを指定します。

既存のデリバリーグループにアプリケーションを追加するには、次の手順に従います。

  1. Studioのナビゲーションペインで[アプリケーション]を選択します。
  2. [操作]ペインの[アプリケーションの追加]を選択します。
  3. App-Vアプリケーションを追加する1つまたは複数のデリバリーグループを選択します。

手順2:ウィザードの[アプリケーション]ページで、[追加]ボックスをクリックしてアプリケーションのソースを表示します。 [App-V]を選択します。

手順3:[App-Vアプリケーションの追加]ページで、App-Vのソース(App-Vサーバーまたはアプリケーションライブラリ)を選択します。 アプリケーションの名前と、そのパッケージの名前とバージョンが表示されます。 追加するアプリケーションの隣のチェックボックスをオンにします。 [OK]をクリックします。

手順4:ウィザードを終了します。

ヒント:

  • App-Vアプリケーションをデリバリーグループに追加するときにApp-Vアプリケーションのプロパティを変更すると、変更はそのアプリケーションの起動時に適用されます。 たとえば、アプリケーションをデリバリーグループに追加するときにアプリケーションの表示名やアイコンを変更した場合、ユーザーがそのアプリケーションを起動すると変更が反映されます。
  • App-Vアプリケーションを含むデリバリーグループを後で編集した場合、デリバリーグループの配信のタイプを「デスクトップとアプリケーション」から「アプリケーションのみ」に変更しても、App-Vアプリケーションのパフォーマンスは変わりません。

アプリケーションライブラリからのApp-Vパッケージの削除

App-Vパッケージをアプリケーションライブラリから削除すると、Studioの[App-V公開]ノードからもその表示が消えます。ただし、アプリケーションはデリバリーグループからは削除されないため、そのアプリケーションは引き続き起動できます。 パッケージは、物理ネットワーク上に残ります (これは、App-Vアプリケーションをデリバリーグループから削除した場合とは異なります)。

  1. Studioのナビゲーションペインで、[構成]>[App-V公開]の順に選択します。
  2. 削除するパッケージを1つまたは複数選択します。
  3. [操作]ペインで[パッケージの削除]を選択します。

トラブルシューティング

デュアル管理方式を使用した場合にのみ発生する問題は、「(デュアル)」と表示されています。

(デュアル)StudioでApp-Vサーバーのアドレスを指定するときに行う「接続テスト」に失敗します。

  • App-Vサーバーの電源は入っていますか。 pingコマンドを送信するかIISマネージャーを使用して、各App-Vサーバーの状態が開始済みかつ実行中であることを確認します。
  • App-VサーバーのPowerShellリモート処理は有効ですか。 有効でない場合は、http://technet.microsoft.com/en-us/magazine/ff700227.aspxを参照してください。
  • Studioの管理者はApp-Vサーバーの管理者でもありますか。
  • App-Vサーバーのファイル共有は有効ですか。 Windowsエクスプローラーまたは[ファイル名を指定して実行]ダイアログボックスに、「\\<App-V server FQDN>」と入力します。
  • App-Vサーバーには、App-V管理者と同じファイル共有権限が付与されていますか。 App-Vサーバーで、[ユーザー名およびパスワードの保存]ダイアログボックスに「\\<App-V Server FQDN>」のエントリを追加して、そのApp-Vサーバーの管理者権限を持つユーザーの資格情報を指定します。 詳しくは、http://support.microsoft.com/kb/306541を参照してください。
  • App-VサーバーはActive Directoryに属していますか。

StudioのマシンとApp-Vサーバーが信頼関係のない異なるActive Directoryドメインに属している場合は、Studioマシン上のPowerShellコンソールで「winrm s winrm/Config/client '@(TrustedHosts="<App-V server FQDN>")'」を実行します。 

TrustedHostsがGPOで管理されている場合は、「構成設定TrustedHostsはポリシーで制御されているため変更できません。 構成設定を変更するには、ポリシーを“未構成”に設定する必要があります」というエラーメッセージが表示されます。 この場合は、GPOのTrustedHostsポリシー([管理用テンプレート]>[Windowsコンポーネント]>[Windowsリモート管理(WinRM)]>[WinRMクライアント])にApp-Vサーバーの名前を追加します。

(デュアル)App-Vアプリケーションをデリバリーグループに追加するとき、検出が失敗します。

  • Studioの管理者はApp-V Management serverの管理者でもありますか。
  • App-V Management serverは実行中ですか。 pingコマンドを送信するかIISマネージャーを使用して、各App-Vサーバーの状態が開始済みかつ実行中であることを確認します。 
  • 両方のApp-VサーバーのPowerShellリモート処理は有効ですか。 有効でない場合は、http://technet.microsoft.com/en-us/magazine/ff700227.aspxを参照してください。
  • Studio管理者がアクセスできるように、パッケージに適切なセキュリティ権限が設定されていますか。

App-Vアプリケーションが起動しません。

  • (デュアル)公開サーバーは実行中ですか。 
  • (デュアル)App-Vパッケージに適切なセキュリティ権限が設定されており、ユーザーがアクセスできるようになっていますか。
  • (デュアル)VDAで、Tempディレクトリの参照が正しく、Tempディレクトリに十分な空き領域があることを確認してください。
  • (デュアル)App-V公開サーバーで、Get-AppvPublishingServer *を実行して公開サーバーの一覧を表示します。
  • (デュアル)App-V公開サーバーで、UserRefreshonLogonがFalseに設定されているかどうかを確認します。 Falseに設定されていない場合、最初のApp-Vアプリケーションの起動に失敗します。
  • (デュアル)App-V公開サーバーで、管理者としてSet-AppvPublishingServerを実行し、UserRefreshonLogonをFalseに設定します。
  • VDAをインストール済みのマシンに、サポートされるバージョンのApp-V Clientがインストールされていますか。 VDAで、「パッケージスクリプトの有効化」設定が有効ですか。 
  • App-V ClientとVDAがインストールされているマシンで、レジストリエディター(regedit)からHKEY_LOCAL_MACHINE\SOFTWARE\Policies\Citrix\AppVを開きます。 AppVServersキーが「+;」形式(「http://xmas-demo-appv.blrstrm.com+0+0+0+1+1+1+0+1;http://xmas-demo-appv.blrstrm.com:8082」など)であることを確認します。
  • App-V ClientとVDAがインストールされているマシンで、CtxAppVCOMAdminに管理者権限が設定されていることを確認します。 通常、このユーザーはVDAのインストール時に作成され、そのVDAマシンのローカル管理者グループに追加されます。 ただし、Active Directoryポリシーの設定によっては、このアカウントの管理者権限が無効になることがあります。 compmgmt.mscを実行し、[ローカルユーザーとグループ]、[ユーザー]の順に選択します。 CtxAppVCOMAdminが管理者ではない場合は、グループポリシーを編集して、このユーザーアカウントに管理者権限を付与します。
  • App-V ClientとVDAがインストールされたマシンまたはマスターイメージで、PowerShell ExecutionPolicyがRemoteSignedに設定されていることを確認します。 Microsoft社から提供されるApp-Vクライアントは署名されてないため、このExecutionPolicyで、PowerShellで無署名のローカルのスクリプトとコマンドレットを実行できるようにします。 次の2つの方法のいずれかを使用して、ExecutionPolicyを設定します。(1)管理者としてSet-ExecutionPolicy RemoteSignedコマンドレットを入力します。または、(2)グループポリシー設定で、[コンピューターの構成]>[ポリシー]>[管理用テンプレート]>[Windows コンポーネント]>[Windows PowerShell]>[スクリプトの実行を有効にする]の順に選択します。

これらの手順により問題を解決できない場合、ログを有効にして調査する必要があります。

ログ

App-Vの構成に関するログは、C:\CtxAppvLogsに生成されます。 アプリケーションの起動ログは、%LOCALAPPDATA%\Citrix\CtxAppvLogsに生成されます。 LOCALAPPDATAは、ログオンしたユーザーのローカルフォルダーです。 アプリケーションの起動に失敗したユーザーのローカルフォルダーでログを確認する必要があります。

App-Vで使用されるStudioおよびVDAのログを有効にするには、管理者権限が必要です。 メモ帳のようなテキストエディターも必要です。

Studioのログを有効にするには、次の手順に従います。

  1. C:\CtxAppvLogsフォルダーを作成します。
  2. C:\ProgramFiles\Citrix\StudioAppVIntegration\SnapIn\Citrix.Appv.Admin.V1に移動します。 テキストエディターでCtxAppvCommon.dll.configを開き、の行のコメントを解除します。
  3. Broker Serviceを再起動してログの記録を開始します。

VDAのログを有効にするには、次の手順に従います。

  1. C:\CtxAppvLogsフォルダーを作成します。
  2. C:\ProgramFiles\Citrix\ Virtual Desktop Agentに移動します。 テキストエディターでCtxAppvCommon.dll.configを開き、の行のコメントを解除します。
  3. の行のコメントを解除して、値フィールドに1を設定します。
  4. マシンを再起動してログの記録を開始します。