Citrix Virtual Apps and Desktops

アプリパッケージ

アプリパッケージは、Citrix® が管理する事前構成済みのアプリケーション展開です。これにより、アプリケーションを仮想化でき、ユーザーデバイスのオペレーティングシステムやインターフェースから独立してアプリケーションを実行できます。

アプリパッケージは、アプリケーション管理を簡素化し、ITオーバーヘッドを削減し、アプリケーションがライフサイクル全体を通じて安全かつ機能的であることを保証します。

Citrix は、ユーザーにアプリケーションを配信するために、以下のパッケージングテクノロジーをサポートしています。

この記事では、Citrix Virtual Apps and Desktops™ 環境でこれらのパッケージ化されたアプリケーションを展開および配信する方法について説明します。

注:

  • バージョン 2511 以降、Citrix Web Studio (Webベース) は Citrix Virtual Apps and Desktops™ の唯一の管理コンソールです。Citrix Studio (MMCベース) はインストーラーから削除されました。この記事は Web Studio にのみ適用されます。Citrix Studio の詳細については、Citrix Virtual Apps and Desktops 7 2212 以前の同等の記事を参照してください。
  • アプリパッケージの展開と配信に Web Studio と Citrix Studio を相互に利用することはお勧めしません。それぞれ異なるメカニズムを使用しており、App-V サーバー情報が一方では正しく表示されるが、もう一方では表示されないなどの不一致につながる可能性があります。また、Citrix Studio は App-V のみをサポートしていることに注意してください。

App-V アプリケーション

Application Virtualization (App-V) は、エンドユーザーのデバイスにインストールすることなく、アプリケーションをストリーミングおよびアクセスできるようにする Microsoft のテクノロジーです。Citrix Virtual Apps and Desktops は App-V を使用してアプリケーションを配信でき、さまざまなクライアントマシン間でアプリケーションを一元的に効率的に管理する方法を提供します。

App-V パッケージ化されたアプリケーションを配信する際に操作するコンポーネントと概念の詳細については、Microsoft ドキュメント「Application Virtualization (App-V) for Windows client overview」を参照してください。

重要な用語

  • 管理サーバー: App-V インフラストラクチャを管理するための一元化されたコンソールを提供し、App-V デスクトップクライアントとリモートデスクトップサービスクライアントの両方に仮想アプリケーションを配信します。App-V 管理サーバーは、管理者に必要なセキュリティ、メータリング、監視、およびデータ収集を認証、要求、提供します。このサーバーは、Active Directory とサポートツールを使用してユーザーとアプリケーションを管理します。
  • 公開サーバー: 特定のユーザー向けに App-V クライアントにアプリケーションを提供し、ストリーミング用の仮想アプリケーションパッケージをホストします。管理サーバーからパッケージを取得します。
  • 動的構成ファイル: App-V パッケージは、動的構成ファイルを使用してカスタマイズできます。これらのファイルをパッケージに適用すると、その特性を変更できます。たとえば、追加のアプリケーションショートカットや動作を定義するために使用できます。詳細については、「動的構成ファイル」を参照してください。

動的構成ファイル

Citrix App-V は、両方の種類の動的構成ファイルをサポートしています。ファイル設定は、アプリケーションの起動時に適用されます。

  • 展開構成ファイル: すべてのユーザーに対してマシン全体の構成を提供します。これらのファイルは <packageFileName>_DeploymentConfig.xml という名前で、適用される App-V パッケージと同じフォルダーにある必要があります。これらのファイルは、シングルおよびデュアル管理でサポートされています。
  • ユーザー構成ファイル: パッケージへのユーザーごとのカスタマイズをサポートするユーザー固有の構成を提供します。シングル管理は、<packageFileName>_[UserSID | Username | GroupSID |GroupName_]UserConfig.xml という形式で名前が付けられ、適用される App-V パッケージと同じフォルダーにあるユーザー構成ファイルをサポートします。

特定のパッケージに対して複数のユーザー構成ファイルが存在する場合、それらは以下の優先順位で適用されます。

  1. ユーザー SID
  2. ユーザー名
  3. AD グループ SID (最初に見つかったものが優先)
  4. AD グループ名 (最初に見つかったものが優先)
  5. デフォルト

例:

```
MyAppVPackage_S-1-5-21-000000001-0000000001-000000001-001_UserConfig.xml
MyAppVPackage_joeblogs_UserConfig.xml
MyAppVPackage_S-1-5-32-547_UserConfig.xml
MyAppVPackage_Power Users_UserConfig.xml
MyAppVPackage_UserConfig.xml
<!--NeedCopy--> ```

注:

ユーザー固有のファイル名部分は、オプションで末尾に配置することもできます (例: MyAppVPackage_UserConfig_joeblogs.xml)。

重要:

パッケージ内のアプリケーションを使用しているユーザーセッションが開いている場合、動的展開構成に変更を適用することはできません。他のユーザー (現在のユーザーではない) がパッケージからアプリケーションを開いている場合は、動的ユーザー構成ファイルに変更を適用できます。

動的構成ファイルの場所

シングル管理では、Citrix App-V コンポーネントは、App-V パッケージと同じフォルダーにある動的構成ファイルのみを処理します。

パッケージ内のアプリケーションが起動されると、対応する動的構成ファイルへの変更が再適用されます。動的構成ファイルがパッケージとは異なる場所にある場合は、マッピングファイルを使用してパッケージを展開構成ファイルにマッピングします。

マッピングファイルを作成するには:

  1. 新しいテキストファイルを開きます
  2. 各動的構成ファイルについて、<PackageGuid> : path の形式を使用してパッケージへのパスを指定する行を追加します

    例:

    F1f4fd78ef044176aad9082073a0c780 : c:\widows\file\packagedeploy.xml
    <!--NeedCopy-->
    
  3. ファイルをパッケージと同じフォルダーに ctxAppVDynamicConfigurations.cfg として保存します

パッケージ内のアプリケーションが起動されるたびに、App-Vパッケージと同じUNC共有上のディレクトリ階層全体が、このファイルを求めて再帰的に上位検索されます。

メソッド

App-Vパッケージを配信および管理するには、次のメソッドを使用できます。

  • デュアル管理: このメソッドでは、Citrix Virtual Apps and DesktopsとApp-Vサーバーが連携してパッケージを配信および管理します。このメソッドでは、Citrix Virtual Apps and DesktopsがApp-Vサーバーの状態のスナップショットビューを定期的に更新する必要があります。これには、ハードウェア、インフラストラクチャ、および管理のオーバーヘッドが発生します。Citrix Virtual Apps and DesktopsとApp-Vサーバーは、特にユーザー権限に関して同期を維持する必要があります

    このメソッドは、App-VとCitrixが密接に連携する展開で最適に機能します。このメソッドでは、次のようになります。

    • App-V管理サーバー動的構成ファイルを処理します
    • VDAマシンにインストールされているApp Packages Delivery Component: アプリケーションの起動に必要な適切な公開サーバーの登録を管理します

    これにより、公開サーバーが適切なタイミングでユーザーと同期されます。公開サーバーは、構成されている設定を使用して、アプリパッケージのライフサイクル(ログオン時の更新や接続グループなど)の他の側面を維持します。

  • シングル管理: アプリケーションパッケージはネットワーク共有に保存されます。Citrix Virtual Apps and Desktopsは、パッケージを独立して配信および管理します

    このメソッドは、展開にApp-Vサーバーとデータベースインフラストラクチャが不要なため、オーバーヘッドを削減します。

    このメソッドでは、App-Vパッケージをネットワーク共有に保存し、その場所からメタデータを環境にアップロードします。VDAマシンにインストールされているApp Packages Delivery Componentは、次のようにアプリケーションを管理および配信します。

    • アプリケーションが起動されたときに、展開構成ファイルとユーザー構成ファイルを処理します
    • ホストマシン上のパッケージのライフサイクルのすべての側面を管理します

注:

  • 1つまたは両方の管理メソッドを同時に使用できます。つまり、デリバリーグループにアプリケーションを追加する場合、アプリケーションはApp-Vサーバーまたはネットワーク共有にあるApp-Vパッケージから取得できます
  • 両方の管理メソッドを同時に使用しており、App-Vパッケージが両方の場所に動的構成ファイルを持っている場合、App-Vサーバー(デュアル管理)にあるファイルが使用されます
  • Web Studioのナビゲーションペインで [アプリパッケージ] を選択すると、パッケージ名と種類が表示されます。パッケージの種類列は、パッケージの配信に使用されるテクノロジーと、アプリケーションライブラリで参照される場所を示します。パッケージを選択すると、詳細ペインにパッケージ内のアプリケーションとショートカットが一覧表示されます

MSIXおよびMSIX App Attachアプリケーション

MSIXは、すべてのWindowsアプリに最新のパッケージングエクスペリエンスを提供するWindowsアプリパッケージ形式です。MSIXは、Win32、.NET、UWPアプリなど、さまざまなWindowsアプリケーションタイプに適しています。

MSIX App Attachは、パッケージコンテンツをストリーミングするのではなく、仮想ハードディスクに事前に展開されたMSIXパッケージを利用します。これにより、展開時間を短縮し、ネットワークトラフィックを削減し、ターゲットマシンでのIOPSを低減できますが、App Attachディスクの作成と維持に追加の作業が必要です。

Citrix Virtual Apps and Desktopsは、VDAマシンにインストールされているApp Packages Delivery Componentを介して、MSIXおよびMSIX App Attachアプリケーションをユーザーに配信します。このコンポーネントは、ホストマシン上のパッケージのライフサイクルのすべての側面を管理します。

MSIXおよびMSIX App Attachの詳細については、MicrosoftドキュメントのMSIXドキュメントAzure Virtual DesktopでのApp Attachをそれぞれ参照してください。

注:

  • デスクトップVDAおよびサーバーVDAでのネイティブMSIXパッケージと、デスクトップVDAのみでの.vhd.vhdx、および.cimディスクイメージ形式でのMSIX App Attachをサポートしています
  • MicrosoftはServer 2019向けにAppAttachの実装を提供していません。AppAttachはServer 2022および2025に存在しますが、Microsoftはこれらのバージョンでのサポートを提供していません。したがって、当社もServer 2022および2025でのAppAttachをサポートしていません
  • Windows Server 2019でサイドローディングを有効にします
  • VDAがパッケージの署名に使用されている証明書を信頼していることを確認します

FlexAppアプリケーション

FlexAppは、Liquidwareが開発したアプリケーションレイヤリングソリューションであり、従来のアプリケーションインストールプロセスを通じて基盤となるベースイメージを変更することなく、任意のアプリケーションをWindowsセッションにアタッチします。

FlexApp Oneアプリケーションは、単一の共有可能なファイルにカプセル化されており、Windowsセッションに追加のアプリケーションレイヤーを必要とせずに動作できます。ユーザーはコンテナーファイルをクリックすることでアプリケーションを起動でき、これにより1つ以上のアプリケーションがWindowsワークスペースに迅速に統合されます。

Citrixは、VDAマシンにインストールされているApp Packages Delivery ComponentとFlexApp配信エージェントを介して、FlexAppアプリケーションをユーザーに配信します。これら2つのコンポーネントは、ホストマシン上のパッケージのライフサイクルのすべての側面を管理します。

Elastic Appアプリケーション

Elastic Appテクノロジーは、Citrix App Layeringの機能であり、ベースイメージにアプリケーションをインストールするのではなく、ログオン時にユーザーにアプリケーションレイヤーを動的に割り当てることができます。Elastic Appテクノロジーを使用すると、アプリケーションは異なる仮想マシン間でユーザーに追従するため、マスターイメージを肥大化させることなく、必要なアプリに常にアクセスできます。

Citrix Virtual Apps and Desktopsは、Citrix PersonalizationコンポーネントとApplication Layering Enterprise Layer Manager(ELM)を介して、Elastic Appアプリケーションをユーザーに配信します。これら2つのコンポーネントは、ホストマシン上のパッケージのライフサイクルのすべての側面を管理します。Application Layering Enterprise Layer Managerについて詳しくは、「Citrix App Layering™ドキュメント」を参照してください。

Cloudpagingアプリケーション

Cloudpagingは、Numecentのアプリケーションストリーミングテクノロジーであり、ベースイメージを変更することなく、Windowsセッションにアプリケーションを配信します。

Cloudpagingを使用すると、コードのごく一部(通常は10%未満)のみが最初にストリーミングされるため、アプリケーションはほぼ瞬時に起動します。残りのコンポーネントは、ユーザーがアクセスしたときにバックグラウンドでストリーミングされ、シームレスなエクスペリエンスを提供します。

Citrix環境では、VDA上のApp Packages Delivery ComponentがNumecent Cloudpaging Playerと連携してアプリケーションのライフサイクルを管理します。Citrixコンポーネントは配信をオーケストレーションし、Cloudpaging Playerはセッション内でのオンデマンドストリーミングと実行を処理します。

構成要件

以下の構成の詳細を考慮してください。

Cloudpaging PlayerとLogoffCheckSysModules

Cloudpagingコンテナで仮想公開アプリケーションを使用する場合、セッションのログオフを許可するには、次の設定を構成します。

設定
レジストリキー HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Citrix\wfshell\TWI
値の名前 LogoffCheckSysModules
値の型 REG_SZ
値のデータ CoreHelper.exe

ホワイトリスト登録用URL

標準のURLホワイトリスト登録要件に加えて、VDAは次のエンドポイントへのアクセスを必要とします。

パラメーター
URL external-api.cloudpager.net
ポート 443
クライアント Cloudpager PoSh Module
Webベースのフォワードプロキシ構成
  • アウトバウンドアクセスが許可されている
  • 認証バイパスが必要
説明 Cloudpager PowerShellモジュール

オプションで、Cloudpagerディスカバリーのみを実行するために使用されるVDAを含む専用のデリバリーグループを作成して、必要なホワイトリスト登録済みURLを制限できます。VDAバージョン2511以降App packages Delivery Componentがインストールされているマシンでデリバリーグループを作成することをお勧めします。

Cloudpagerクライアントのネットワークとファイアウォールの要件について詳しくは、「Numecentナレッジベース記事」を参照してください。

アプリパッケージの展開と配信

前提条件

App-V、MSIX、MSIX app attach、FlexAppパッケージ、Elastic Appアプリケーション、およびCloudpagingパッケージの配信をサポートするには、まずVDAマシンにApp Packages Delivery Componentをインストールする必要があります。詳しくは、「VDAマシンへのApp Packages Delivery Componentのインストール」を参照してください。

VDAマシンへのApp Packages Delivery Componentのインストール

App Packages Delivery Componentは、App-V、MSIX、MSIX app attach、FlexApp、Elastic App、およびCloudpaging形式のアプリケーションパッケージの公開プロセスを管理します。このコンポーネントは、VDAをインストールする際にはデフォルトでインストールされません。コンポーネントは、VDAのインストール中またはインストール後にインストールできます。

VDAのインストール中にコンポーネントをインストールするには、次のいずれかの方法を使用します。

  • インストールウィザードで、[追加コンポーネント]ページに移動し、[App Packages Delivery Component]チェックボックスをオンにします。
  • コマンドラインインターフェイスで、/includeadditional "Citrix Personalization for App-V – VDA"オプションを使用します。

VDAのインストール後にコンポーネントをインストールするには、次の手順に従います。

  1. VDAマシンで、[コントロールパネル]>[プログラム]>[プログラムと機能]に移動し、[Citrix Virtual Delivery Agent]を右クリックして、[変更]を選択します。
  2. 表示されるウィザードで、[追加コンポーネント]ページに進み、[App Packages Delivery Component]チェックボックスを有効にします。

注:

  • Microsoft App-V デスクトップクライアントは、ユーザーデバイス上でApp-Vパッケージから仮想アプリケーションを実行するコンポーネントです。Windows 10 (1607以降) および Windows Server 2019以降には、このApp-Vクライアントソフトウェアがすでに含まれています。VDAマシンでのみ有効にする必要があります。詳細については、このMicrosoftドキュメント記事「App-Vインボックスクライアントを有効にする」を参照してください
  • FlexAppアプリケーションの場合、App Packages Delivery ComponentとともにVDAにFlexApp One Agentをインストール
  • Elastic Appアプリケーションの場合、App Packages Delivery ComponentとともにVDAにApp Layering対応イメージをインストール
  • Cloudpagingアプリケーションの場合、App Packages Delivery ComponentとともにVDAにCloudpaging Playerをインストール

FlexApp One Agentのインストール

  1. VDAで管理者コマンドプロンプトを起動
  2. FlexApp Oneパッケージのネットワークパスを特定

  3. 次のコマンドを入力

    \\path\to\any\FlexAppOnePackage.exe --install
    <!--NeedCopy-->
    
  4. 表示されるプロンプトをすべて承認

App Layering対応イメージのインストール

  1. アプリケーションレイヤリングのセットアップ Citrix App Layeringドキュメントの手順に従います。プロセスは次のとおりです。

    1. Enterprise Layer Manager (ELM) のセットアップ
    2. ゴールドOSイメージのインポート
    3. プラットフォームレイヤーの作成
    4. アプリケーションレイヤーの作成
    5. ELMで、配信する各アプリケーションレイヤーに対して、[このApp LayerをStudio App Packagesで使用できるようにする] チェックボックスを選択
  2. Elastic Layeringコンポーネントを含むイメージをVDAマシンにインストール。方法は次のとおりです。

    1. Elastic Layeringを有効にしてELMからイメージを展開
    2. マシンにVDAを手動でインストールし、セットアップ中にElastic Layeringコンポーネントを選択

Cloudpaging Playerのインストール

  1. VDAで管理者コマンドプロンプトを開く

  2. Cloudpaging Playerインストーラーを含むフォルダーへ移動

  3. プレイヤーをサイレントインストールし、SaaSコンソールURLを構成する次のコマンドを実行。必要に応じてプレースホルダー値を置き換え

    cloudpaging-player-setup-x64-release.exe /S /v"/qn ADDLOCAL=ALL REG_BASTOKENPATHORURL=https://your-tenant-url/api/token"
    <!--NeedCopy-->
    
  4. (オプション) インストール後に次のレジストリ値を確認して構成を検証

    • パス: HKEY_LOCAL_MACHINE\SOFTWARE\Numecent\StreamingCore\Settings\Launcher
    • 名前: BaseTokenPathOrURL
    • データ: 値はインストール時に指定したURLと一致

パッケージ化されたアプリケーションの配信

前提条件のインストール完了後、ユーザーにパッケージアプリケーションを配信するために次の手順を実行します。

  1. アプリケーションパッケージをネットワーク共有に保存
  2. アプリケーションパッケージを環境にアップロード
  3. デリバリーグループにアプリケーションを追加
  4. 相互依存するApp-Vパッケージの自動配信を有効にするには、分離グループを作成

ネットワーク共有へのアプリケーションパッケージの保存

インフラストラクチャをセットアップしたら、アプリケーションパッケージを生成し、UNCまたはSMBネットワーク共有、あるいはAzureファイル共有などのネットワークロケーションに保存します。

詳細な手順は次のとおりです。

  1. アプリケーションパッケージの生成。詳細については、Microsoftドキュメント「App-V仮想化アプリケーションの作成と管理」を参照

  2. アプリケーションパッケージをネットワークロケーションに保存:

    • App-V シングル管理者の場合: パッケージと対応する動的構成ファイル (App-V) を UNC または SMB ネットワーク共有、または Azure ファイル共有に保存します。

    • App-V デュアル管理者の場合: パッケージを UNC パスから App-V 管理サーバーに公開します。(HTTP URL からの公開はサポートされていません。)

    • MSIX または MSIX App Attachの場合: パッケージを UNC または SMB ネットワーク共有、または Azure ファイル共有に保存します。

    • FlexAppの場合: パッケージを UNC または SMB ネットワーク共有、または Azure ファイル共有に保存します。

    • Elastic Appの場合: パッケージを UNC または SMB ネットワーク共有、または Azure ファイル共有に保存します。

  3. VDA がパッケージストレージパスに対する読み取り権限を持っていることを確認します。

    • AD ドメイン内の UNC または SMB ネットワーク共有にパッケージを保存する場合、VDA マシンにストレージパスへの読み取り権限を付与します。これを行うには、マシンの AD アカウントに共有への読み取り権限を明示的に付与するか、その権限を持つ AD グループにアカウントを含めます。

    • Azure ファイル共有にパッケージを保存する場合、まず Azure でユーザーアカウントにストレージパスへの読み取り権限を付与します。次に、VDA マシンで実行されている ctxAppVService がそのユーザーアカウントを使用してパッケージストレージパスにアクセスするように構成します。詳細な手順については、「ユーザーログオンアカウントの変更」を参照してください。

ユーザーログオンアカウントの変更

次の2つのシナリオでユーザーログオンアカウントを変更します。

  • リンクされた AD アカウントを使用して Azure ファイル共有上のパッケージにアクセスする場合:
    • 接続エンティティはユーザーアカウントである必要があり、マシンアカウントであってはなりません。Microsoft Entra ID はファイル共有上のマシンアカウントに読み取り権限を付与しないためです。
  • MSIX および MSIX App Attach パッケージにサービスが含まれている場合:
    • パッケージは、非管理者ユーザーに公開する前に、ローカルマシン上で管理者権限を持つユーザーアカウントを使用して公開する必要があります。これは、パッケージ化されたサービスをインストールするために必要であり、パッケージはマシンではなくユーザーにのみ公開できるため、デフォルトの LocalService アカウントは不適切です。

VDA は ctxAppVService を呼び出してパッケージストレージパスにアクセスし、管理者権限を必要とする操作を実行します。デフォルトでは、ctxAppVService はマシンの ID を使用して AD に認証するマシンの LocalService アカウントのコンテキストで実行されるため、上記のシナリオには適していません。

いずれの場合も、サービスは、ローカルで管理者権限を持ち、パッケージの保存場所 (SMB 共有または Azure ファイル共有) への読み取りアクセス権が付与されている AD ユーザーアカウントを使用するように再構成する必要があります。手順は次のとおりです。

  1. サービスを開始し、ctxAppVService を右クリックして、プロパティを選択します。
  2. ログオンタブで、このアカウントを選択します。
    1. ローカル管理者権限とパッケージストレージパスへの読み取り権限を持つユーザーアカウントを入力します
    2. ユーザーのパスワードを2回入力します。
  3. OK をクリックします。

アプリケーションパッケージの環境へのアップロード

必要に応じてアプリケーションパッケージをネットワークの場所に保存した後、配信のために環境にアップロードします。必要に応じて、次のいずれかの方法を使用します。

準備

Citrix Virtual Apps and Desktops は、パッケージ検出のためにネットワークの場所への接続をセットアップするために VDA マシンを使用します。そのため、事前にデリバリーグループを作成し、グループ内の少なくとも1つの VDA が次の要件を満たしていることを確認してください。

  • VDA バージョン:
    • App-V パッケージを検出する場合: 2203 以降
    • MSIX および MSIX App Attach パッケージを検出する場合: 2209 以降
    • FlexApp パッケージを検出する場合: 2311 以降および FlexApp Agent ソフトウェア
    • Elastic App パッケージを検出する場合: 2511 以降および App Layering 対応イメージ
    • Cloudpaging パッケージを検出する場合: 2511 以降および Cloudpaging Player ソフトウェア
  • アプリケーションパッケージ配信コンポーネント: インスト済み
  • パッケージの場所に対する権限: 読み取り (詳細については、「ネットワーク共有へのアプリケーションパッケージの保存」を参照してください。)
  • 電源: オン
  • 状態: 登録済み
アプリケーションパッケージの一括アップロード

ネットワークの場所にあるパッケージを環境にアップロードします。アップロードする前に、次の項目を準備してください。

  • 準備の要件を満たすデリバリーグループ
  • ネットワークの場所のパス

パッケージを一括でアップロードするには、次の手順に従います。

  1. 左側のペインで、[App packages] を選択します。
  2. [パッケージ検出] タブで、[検出プロファイルの作成] ボタンをクリックします。[検出プロファイルの作成] ページが表示されます。
  3. [名前] フィールドに、プロファイルの説明的な名前を入力します。
  4. [デリバリーグループ] フィールドで、[デリバリーグループの選択] をクリックします。次に、準備で述べられている要件を満たすデリバリーグループを選択し、[OK] をクリックします。
  5. [場所の種類] フィールドで、パッケージの保存場所に基づいて、[Microsoft App-V サーバー][ネットワーク共有]、または [Numecent Cloudpager] を選択し、対応する設定を完了します。
    • [Microsoft App-V サーバー] を選択した場合は、次の情報を入力します。
      • 管理サーバーの URL。例: http://appv-server.example.com
      • 管理サーバー管理者のログイン資格情報。
      • 公開サーバーの URL とポート番号。例: http://appv-server.example.com:3330
    • [ネットワーク共有] を選択した場合は、次の情報を指定します。
      • ネットワーク共有の UNC パスを入力します (例: \\Package-Server\apps\)。Elastic App パッケージの場合は、ELM の [System’s Network File Share SMB path] から UNC パスを入力します。
      • アップロードするパッケージの種類を選択します。オプションには、App-VMSIXMSIX App AttachFlexApp、および Elastic App が含まれます。
      • パッケージのサブフォルダーを検索するかどうかを指定します。

        注:

        cim イメージを含むフォルダー構造で MSIX App Attach パッケージを検索する場合は、[サブフォルダーを検索] を選択していることを確認してください。そうしないと、ディスクが正しく検出されません。

    • [Numecent Cloudpager] を選択した場合は、次の情報を入力します。

      • クラウドページャーコンソールURL。例:https://cloudpagerconsole.my.org

      • PowerShell APIキー。

      • AppLauncher MSID。

  6. [Create discovery profile] をクリックします。

    [Create discovery profile] ページが閉じ、新しく追加されたプロファイルがプロファイルリストに表示されます。Citrix Virtual Apps and Desktops は、デリバリーグループ内のVDAを使用してパッケージを環境にアップロードします。アップロードが完了すると、Status フィールドに Import successful と表示されます。対応するパッケージは [Packages] タブに表示されます。

    注:

    ソースの場所でパッケージの更新を確認し、環境にインポートするには、プロファイルリストでその場所を選択し、[Check for Updates] をクリックします。

アプリケーションパッケージの個別アップロード

ネットワーク共有からアプリケーションパッケージを環境にアップロードします。アップロードする前に、次の項目が準備されていることを確認してください。

  • 準備 に記載されている要件を満たすデリバリーグループ
  • ネットワークロケーションパス。

パッケージを環境にアップロードするには、次の手順に従います。

  1. 左ペインで [App Packages] を選択します。
  2. [Packages] タブで、[Add Package] ボタンをクリックします。[Add Package] ページが表示されます。
  3. [Delivery group] フィールドで、[Select a delivery group] をクリックします。次に、準備 に記載されている要件を満たすデリバリーグループを選択し、[OK] をクリックします。
  4. [Package full path] フィールドに、必要に応じてパスを入力します。
    • 複数のパッケージを一度にアップロードするには、セミコロン (;) で区切って完全なパスを入力します。例:\\Package-Server\apps\office365.appv;\\Package-Server\apps\skype.msix;\\Package-Server\apps\slack.vhd
    • ネットワーク共有に存在するすべてのパッケージをアップロードするには、ストレージパスを入力します。例:\\package-Server\apps\
  5. [Add Package] をクリックします。

    アプリケーションパッケージは [Packages] タブに表示されます。

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

アプリケーションパッケージが環境に完全にアップロードされたら、必要に応じてそのアプリケーションを1つ以上のデリバリーグループに追加します。これにより、それらのデリバリーグループに関連付けられたユーザーはアプリケーションにアクセスできるようになります。

注:

  • パッケージ化されたアプリケーションは、デリバリーグループを介してシングルセッションVDAおよびマルチセッションVDAに配信できます。
  • デフォルトでは、エンドユーザーは、シングルセッション(または デスクトップ と呼ばれる)VDAに関連付けられたデリバリーグループに割り当てられたすべてのパッケージ化されたアプリケーションにアクセスできます。デスクトップ VDAでのパッケージ化されたアプリケーションの可視性を特定のユーザーまたはグループに制限するには、[Applications] ノードに移動し、アプリケーションを選択してから、[Edit Application Properties] > [Limit Visibility] を選択して変更を加えます。アプリケーションの可視性の制限 を参照してください。

パッケージ内の1つ以上のアプリケーションを複数のデリバリーグループに追加するには、次の手順に従います。

  1. 左ペインで [App Packages] を選択します。
  2. [Packages] タブで、必要に応じてパッケージを選択します。
  3. アクションバーで [Add Delivery Groups] をクリックします。[Assign Applications to Delivery Groups] ページが表示されます。
  4. 必要に応じてパッケージ内の1つ以上のアプリケーションを選択し、[Next] をクリックします。
  5. デリバリーグループのリストで、アプリケーションを割り当てるグループを選択し、[Next] をクリックします。

    注:

    • MSIXまたはMSIX app attachパッケージを選択した場合、VDAバージョンが2106以降のデリバリーグループのみがリストに表示されます。
    • FlexApp パッケージを選択した場合、VDAバージョンが2402以降のデリバリーグループのみがリストに表示されます。
    • Elastic App パッケージを選択した場合、VDAバージョンが2511以降のデリバリーグループのみがリストに表示されます。
    • Cloudpaging パッケージを選択した場合、VDAバージョンが2511以降のデリバリーグループのみがリストに表示されます。
  6. [Finish] をクリックします。

さまざまなパッケージのアプリケーションを複数のデリバリーグループに追加するには、次の手順に従います。

  1. 左ペインで [App Packages] を選択します。
  2. [Applications] タブで、[Add Applications] を選択します。
  3. [Groups] ページで、必要に応じて1つ以上のデリバリーグループを選択します。
  4. [Applications] ページで、次のように1つ以上のアプリケーションパッケージを選択します。
    1. [Add] をクリックし、[Application packages] を選択します。
    2. 必要なパッケージプロファイルの種類(例:App-V Single Admin)を選択します。この種類のすべてのパッケージが表示されます。
    3. 必要に応じて1つ以上のパッケージを選択します。
    4. [OK] をクリックし、次に [Next] をクリックします。
    5. 異なるパッケージタイプのアプリケーションをさらに追加するには、手順aからdを繰り返します。
  5. [Finish] をクリックします。

パッケージ化されたアプリケーションは、次の場合にもデリバリーグループに追加できます。

  • デリバリーグループを作成するとき。詳細については、「デリバリーグループの作成」を参照してください。
  • 既存のデリバリーグループまたはアプリケーショングループを編集するとき。詳細については、「アプリケーションの追加」を参照してください。

(オプション)App-Vパッケージの分離グループ作成

相互依存するApp-Vパッケージの自動配信を可能にするために、分離グループを作成できます。

注:

分離グループは、App-V Single Admin方式でサポートされています。App-V Dual Admin方式を使用している場合は、Microsoft App-Vインフラストラクチャで 接続グループ を作成することで同じ目標を達成できます。詳細については、このMicrosoftドキュメント記事「接続グループファイルについて」を参照してください。

分離グループ

分離グループは、仮想環境を作成するために同じWindows Sandboxで実行する必要がある、相互依存するアプリケーションパッケージの集合です。Citrix App-V分離グループは、App-V接続グループに似ていますが、同一ではありません。分離グループには、次の2種類のパッケージが含まれます。

  • 明示的なアプリケーションパッケージ: 特定のライセンス要件を持つアプリケーション。これらのアプリケーションをデリバリーグループに追加することで、特定のユーザー範囲に制限できます。
  • 自動アプリケーションパッケージ: デリバリーグループに追加されているかどうかにかかわらず、常にすべてのユーザーが利用できるアプリケーション。

例えば、アプリケーション app-a の実行にはJRE 1.7が必要です。app-a明示的とマーク)とJRE 1.7(自動とマーク)を含む分離グループを作成できます。次に、app-a のApp-Vパッケージを1つ以上のデリバリーグループに追加します。ユーザーが app-a を起動すると、JRE 1.7が自動的に展開されます。

ユーザーが分離グループ内で明示的とマークされたApp-Vアプリケーションを起動すると、Citrix Virtual Apps and Desktopsはデリバリーグループ内のアプリケーションに対するユーザーのアクセス許可を確認します。ユーザーがアプリケーションにアクセスする許可を持っている場合、同じ分離グループ内の自動アプリケーションパッケージがユーザーに利用可能になります。

自動パッケージをデリバリーグループに追加する必要はありません。分離グループ内に別の明示的アプリケーションパッケージがある場合、そのパッケージは同じデリバリーグループ内にある場合にのみユーザーに利用可能になります。

App-V分離グループの作成

分離グループを作成し、相互依存するアプリケーションパッケージを追加します。詳細な手順は次のとおりです。

  1. 分離グループタブで、分離グループの追加をクリックします。
  2. 分離グループの名前と説明を入力します。環境内のすべてのApp-V Single Adminパッケージが利用可能なパッケージリストに表示されます。
  3. 利用可能なパッケージリストから必要に応じてアプリケーションを選択し、右矢印をクリックします。選択したアプリケーションは分離グループ内のパッケージリストに表示されます。
  4. 展開フィールドで、アプリケーションに対して明示的または自動を選択します。
  5. 手順2~3を繰り返して、さらにパッケージを追加します。
  6. リスト内のパッケージの順序を調整するには、上矢印または下矢印をクリックします。
  7. 保存をクリックします。

注:

分離グループの構成により、VDA上にApp-V接続グループが作成されます。展開シナリオは複雑になる可能性があり、App-Vクライアントは一度に1つのアクティブな接続グループにのみ存在するパッケージをサポートします。同じパッケージを、同じデリバリーグループに追加されている2つの異なる分離グループに追加することは避けることをお勧めします。

ベストプラクティス

  • App-Vパッケージを展開するには、PowerShellコマンド Enable-AppV を使用してVDAでApp-Vサブシステムを有効にします。
  • MSIX(およびAppAttach)パッケージを展開するには、VDAがパッケージの署名に使用された証明書を信頼する必要があります。
  • Windows Server 2019では、MSIXパッケージを展開するためにサイドローディングを有効にします。Windows 10、11、Windows Server 2022、および2025ではサイドローディングは不要です。
  • App AttachはWindows Server 2019ではまったく実装されておらず、現在、Microsoft(およびCitrix)によってWindows Server 2022または2025ではサポートされていません。

高度な設定

以下の高度なトピックでは、基本的なアプリケーションパッケージのワークフローを超えて、Citrix Virtual Apps and Desktopsでパッケージ化されたアプリケーションがどのように検出、更新、配信されるかを微調整するための追加の構成オプションと制御について説明します。

パッケージ化されたアプリケーションの公開を自動化

PowerShellコマンドを使用して、パッケージ化されたアプリケーションの公開を自動化できます。

Delivery Controller™で、次のPowerShellコマンドを実行します。

  1. パッケージ検出モジュールに存在するコマンドをロードするには:

    Import-Module "D:\Support\Tools\Scripts\Citrix.Cloud.AppLibrary.Admin.v1.psm1"
    <!--NeedCopy-->
    

    注:

    パッケージ検出モジュールのバージョンは、Citrix Virtual Apps and Desktops ISOの、手順1で述べたパスにあります。

  2. パッケージ検出モジュールは、公開するパッケージタイプもサポートするCitrix Virtual Apps and DesktopsバージョンのISOからのものである必要があります。つまり、FlexAppOneアプリケーションには2311以降が必要です。最新の利用可能なバージョンを使用することをお勧めします。
  3. 関連するデリバリーグループIDとパッケージ化されたアプリケーションIDを取得するには:

    Get-BrokerDesktopGroup | Format-Table Uid, Name 
    Get-AppLibAppVApplication | Format-Table Uid, Name
    <!--NeedCopy-->
    
  4. パッケージを公開し、適切なBrokerMachineConfigurationsを作成するには:

    Publish-PackagedApplication -AppLibararyApplicationUid <AppLibararyApplication.Uid > -DesktopGroupUid <DesktopGroup.Uid>
    <!--NeedCopy-->
    
  5. 後でVDA上のBrokerエージェントに送信されるBroker構成を同期するには:

    Update-DesktopGroupMachineConfigurations -DesktopGroupUid <DesktopGroup.Uid>
    <!--NeedCopy-->
    

    注:

    デリバリーグループからパッケージアプリケーションをPowerShellコマンドラインで公開または削除した後は、PowerShellコマンド Update-DesktopGroupMachineConfigurations を必ず実行してください。そうしないと、公開されたアプリケーションに関する情報がVDAに正しく送信されず、起動に失敗します。

アプリケーションの可視性の制限

Citrix Virtual Apps and Desktops環境では、パッケージからのアプリケーションがデスクトップに公開されると、システムはそれらのアプリケーションに対するActive Directory (AD) のユーザーおよびグループの可視性設定を尊重します。ただし、ユーザーがパッケージ内の1つのアプリケーションに対してのみ可視性を持っている場合でも、個々のパッケージコンポーネントはVDA上で細分化できないため、パッケージ全体が仮想デスクトップ (またはシームレスアプリ) セッションに展開される必要があります。さらに、VDAバージョン2503より前では、初回公開後にアプリケーションの可視性を低下させる変更は、その後のデスクトップ起動時に以前に公開されたパッケージのクリーンアップにはつながりません。また、デスクトップとワークスペースの可視性など、他の可視性レイヤーは、これらのAD可視性割り当ての上に動作します。

パッケージアプリケーションがWorkspaceに表示されるか、ユーザーのVDIデスクトップセッションに展開されるかを制御できます。パッケージアプリケーションが公開されたら、PowerShellコマンド Set-BrokerApplication -Name "MyApp" -PackagedApplicationVisibility "Workspace|Desktop|WorkspaceAndDesktop" を使用して、BrokerApplictaionPackagedApplicationVisibility プロパティを更新できます。

PackagedApplicationVisibility のデフォルト値は WorkspaceAndDesktop です。

Workspace: アプリはWorkspaceAppにのみ表示され、シームレスなAppLaunchに利用できますが、ユーザーが開始するどのデスクトップセッションにも自動的に公開されません。

Desktop: WorkspaceAppからアプリのアイコンを非表示にし、シームレスなAppLaunchに利用できなくしますが、ユーザーがADグループ設定を通じてそれにアクセスできる場合、アプリは引き続きユーザーのデスクトップセッションに展開できます。

注:

シングルセッション静的デスクトップに公開されたパッケージアプリケーションは、この設定で構成された値に関係なく、Workspace Appでは利用できません。

App-Vフルインフラストラクチャからシングル管理者ワークフローへの移行

Microsoft App-Vフルインフラストラクチャ (デュアル管理者) は、サポート終了が近づいています。App-Vパッケージおよびその他のサポートされているコンテナ形式の提供を継続するには、Citrixシングル管理者モデルに移行してください。

シングル管理者モデルは、App-V管理サーバーおよび公開サーバーへの依存関係を排除し、Studioでのパッケージ管理を一元化します。

シングル管理者モデルの利点

シングル管理者ワークフローへの移行は、アーキテクチャを簡素化し、パッケージ管理を効率化します。

アーキテクチャの簡素化

シングル管理者モデルでは、VDAはファイル共有から直接パッケージを取得します。Citrixはメタデータ、公開、および分離ロジックを管理します。

機能 フルインフラストラクチャ (デュアル管理者) シングル管理者 (Citrix管理)
管理 App-V管理コンソール Citrix StudioまたはWeb Studio
データベース 必須 (SQL Server) 不要 (メタデータはCitrixサイトデータベースに保存)
公開 App-V公開サーバー Citrix VDA (ctxAppVService)
パッケージソース UNC共有 (管理サーバーと同期) UNC共有、SMB共有、またはAzure Files
ロジック 接続グループ Citrix分離グループ

戦略的利点

シングル管理者への移行により、同期遅延も解消されます。

  • デュアル管理者モデルでは、App-V管理サーバーを同期し、その後Studioを同期する必要があります。

  • シングル管理者モデルでは、ファイル共有上のパッケージを更新し、Studioで [更新] を選択すると、更新されたパッケージは次回のユーザーログオン時に利用可能になります。

移行ワークフロー

既存のApp-VフルインフラストラクチャをCitrixシングル管理者ワークフローに移行するには、次の手順に従ってください。

  1. ステップ1: ターゲット環境の準備
  2. ステップ2: パッケージをCitrixライブラリにインポート

ステップ1: ターゲット環境の準備

パッケージをインポートする前に、インフラストラクチャとVDAがシングル管理者モデルをサポートする準備ができていることを確認してください。

  1. 共有リポジトリ

    1. .appvパッケージをホストするUNC共有を特定します。

    2. VDAマシンアカウント(例: ドメインコンピューター)が、共有とNTFSアクセス許可の両方に対して読み取りアクセス権を持っていることを確認します。

  2. VDA

    すべてのVDAにアプリケーションパッケージ配信コンポーネントがインストールされていることを確認します。インストール後にこのコンポーネントを追加するには:

    1. VDAインストーラーを実行します。
    2. プログラムと機能変更を選択します。
    3. アプリケーションパッケージ配信コンポーネントを追加します。
  3. XML構成ファイル

    _DeploymentConfig.xmlファイルと_UserConfig.xmlファイルを、対応する.appvファイルと同じフォルダーに移動します。

    シングル管理者モデルでは、VDAは中央のApp-Vデータベースからではなく、ファイル共有上のパッケージフォルダーから構成ファイルを読み取ります。

ステップ2: パッケージをCitrixライブラリにインポート

環境を準備したら、既存のApp-VパッケージをCitrixアプリケーションライブラリにインポートします。

  1. Citrix Studioで、構成 > アプリケーションパッケージに移動します。
  2. 完全に移行する場合は、App-V管理サーバーへの既存の接続をすべて削除します。
  3. パッケージの追加を選択し、パッケージのUNCパスを指定します。
  4. Citrixはフォルダーをスキャンし、パッケージ名、バージョン、およびアプリケーションIDをCitrixアプリケーションライブラリにインポートします。

インポート後、必要に応じてアプリケーションをデリバリーグループに割り当てることができます。

注:

vPreferポリシー(オプション): アプリケーションをリモートサーバーにリダイレクトする代わりにローカルVDAで起動したい場合は、VDAでvPrefer GPOを有効にします。

App-Vアプリケーションのトラブルシューティング(シングル管理者モデル)

App-Vパッケージ(シングル管理者モデル)が起動に失敗したり、ユーザーセッションに表示されない場合は、以下のガイダンスを使用して一般的な問題を特定し、解決してください。

問題 説明 解決策
パッケージの検出と「カタログ化に失敗しました」エラー


Studioでパッケージを追加すると、ファイルにアクセスできないか、メタデータが無効であることを示すエラーが表示されます。


  1. アクセス許可を確認します。
    Delivery Controllerマシンアカウント(例: DOMAIN\DDC01$)が、パッケージをホストするUNCパスの共有レベルとNTFSレベルの両方で読み取りアクセス許可を持っていることを確認します。
  2. XML整合性を確認します。
    .appvファイルと_DeploymentConfig.xmlファイルが同じファイル名プレフィックスを持ち、同じフォルダーにあることを確認します。
アプリケーションの起動失敗
(エラーコード: 0x80070005または0x80040154)




ユーザーがアプリケーションアイコンをクリックするとCitrixスプラッシュ画面が表示されますが、アプリケーションが開きません。





  1. VDAコンポーネントを確認します。
    アプリケーションパッケージ配信コンポーネントがVDAにインストールされていることを確認します。次のファイルが存在することを確認します: C:\Program Files\Citrix\AppV\ctxAppVService.exe
  2. VDAアクセス許可を確認します。
    VDAはファイル共有からパッケージをプルするため、VDAマシンアカウント(例: DOMAIN\VDA-HR01$)はUNCパスへの読み取りアクセス権を持っている必要があります。
  3. App-Vクライアント構成を検証します。
    • VDAで次のPowerShellコマンドを実行します: Get-AppvClientConfiguration
    • パッケージにスクリプトが必要な場合は、EnablePackageScripts$Trueに設定されていることを確認します。
分離グループの競合

Excelアドインなどのプラグインが、その親アプリケーションを認識できません。

  1. Studioで、アプリケーションパッケージ > 分離グループに移動します。
  2. 両方のパッケージが同じ分離グループに追加されていることを確認します。
    シングル管理者モデルでは、VDA上のApp-Vクライアントが、Delivery Controllerによって配信される構成に基づいて、これらのアプリケーションの仮想接続を管理します。
初回起動の遅延(バッファリング)


AutoCADやArcGISなどの大規模なApp-Vパッケージの初回起動に数分かかります。


  1. VDAで次のレジストリを確認します。
    HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\AppV\Client\Streaming
  2. Autoload2(以前使用したすべてのパッケージを自動ロード)に設定して、その後の起動パフォーマンスを向上させます。
  3. ネットワークパフォーマンスを確認します。ネットワーク共有でのSMB署名またはアンチウイルススキャンが転送速度を制限していないことを確認します。

役立つPowerShellコマンド(VDAで実行)

CitrixがパッケージをVDAに正常に配信したかどうかを確認するには、PowerShellウィンドウで次のコマンドを実行します。

コマンド 目的
Get-AppvClientPackage 現在VDAにキャッシュまたは公開されているすべてのApp-Vパッケージを表示します。
Get-CtxAppvPackage Citrixエージェントによって管理されているパッケージを表示します。
Start-Service ctxAppVService Citrix App-Vオーケストレーションサービスを再起動します。