Linux Virtual Delivery Agent

簡易インストールによる非ドメイン参加Linux VDAの作成 (プレビュー)

この記事では、簡易インストール方法を使用してCitrix DaaSで非ドメイン参加Linux VDAを作成する手順について説明します。

重要:

  • 非ドメイン参加VDAはCitrix DaaSでサポートされています。
    • コントロールプレーンはCitrix DaaS上に展開する必要があります。
    • 非ドメイン参加VDAは、パブリッククラウドまたはオンプレミスデータセンターに展開できます。非ドメイン参加VDAは、Citrix DaaSのコントロールプレーンによって管理されます。
    • 非ドメイン参加VDAを作成するには、Citrix Gatewayサービスを使用しているお客様は、Rendezvous V2が有効になっていることを確認する必要があります。Cloud Connectorは、オンプレミスのハイパーバイザーにマシンをプロビジョニングする場合、またはWorkspaceでActive DirectoryをIDプロバイダーとして使用する場合にのみ必要です。
  • 非ドメイン参加VDAを作成するには、MCSを使用することもできます。詳しくは、「MCSを使用した非ドメイン参加Linux VDAの作成」を参照してください。
    • MCSはベアメタルサーバーをサポートしていません。
  • 非ドメイン参加Linux VDAでは、次の機能が利用できます。
  • Rendezvous V2

ステップ 1: マシンカタログの作成

マシンを含まない空のマシンカタログを作成します。たとえば、Citrix Remote PowerShell SDKを使用して、Your-catalog-nameという名前の空のマシンカタログを作成し、シングルセッションOSマシンをサポートするには、次のコマンドを実行します。

- New-BrokerCatalog -AllocationType 'Static' -Description 'Your description' -MinimumFunctionalLevel 'L7_20' -Name 'Your-catalog-name' -SessionSupport 'SingleSession' -PersistUserChanges 'OnLocal' -ProvisioningType 'Manual' -MachinesArePhysical $true
<!--NeedCopy-->
-  作成したカタログのUUIDを記録しておきます。UUIDは、後で登録トークンを作成するときに必要になります。

-  マシンカタログを作成してLinux VDAマシンを追加するプロセスは、従来のWindows VDAのアプローチと似ています。これらのタスクを完了する方法の詳細については、「[マシンカタログの作成](/ja-jp/citrix-virtual-apps-desktops/install-configure/machine-catalogs-create.html)」および「[マシンカタログの管理](/ja-jp/citrix-virtual-apps-desktops/install-configure/machine-catalogs-manage.html)」を参照してください。

Linux VDAマシンを含むマシンカタログを作成する場合、Windows VDAマシン用のマシンカタログを作成するプロセスとは異なるいくつかの制限があります。

  • オペレーティングシステムについては、以下を選択します。

    • ホスト型共有デスクトップ配信モデルの場合は、Multi-session OSオプション
    • VDI専用デスクトップ配信モデルの場合は、Single-session OSオプション
  • 同じマシンカタログ内でLinux VDAマシンとWindows VDAマシンを混在させないでください。
  • 同じマシンカタログ内でドメイン参加マシンと非ドメイン参加マシンを混在させないでください。
  • Remote PC Accessマシンカタログは、ドメイン参加マシンのみがサポートされており、非ドメイン参加マシンはサポートされていません。

注:

Citrix Studioの初期バージョンでは、「Linux OS」の概念はサポートされていません。ただし、Windows Server OSまたはServer OSオプションを選択すると、同等のホスト型共有デスクトップ配信モデルが暗示されます。Windows Desktop OSまたはDesktop OSオプションを選択すると、マシンごとに1人のユーザーという配信モデルが暗示されます。

ステップ 2: VDA登録トークンの作成

簡易インストールを使用して非ドメイン参加VDAを作成するには、VDAをマシンカタログに登録し、Citrix Cloud™コントロールプレーンに対してVDAを認証するためのトークンファイルが必要です。Linux VDAは、電源管理されたマシンカタログへの登録にトークンファイルを使用することをサポートしていません。

登録トークンを作成するには、次のURLに類似したHTTP POSTメッセージを送信します: [DdcServerAddress]/citrix/orchestration/api/techpreview/{customerid}/{siteid}/enrollments

-  POST https://[DdcServerAddress]/citrix/orchestration/api/techpreview/[customerid]/[siteid]/enrollments HTTP/1.1
-  Accept: application/json
Content-Type: application/json; charset=utf-8
Authorization: Bearer <bearer-token>

    -  {
  "TokenName": "string",
  "IssuedToUser": "string",
  "ExpirationDate": "2023-10-13T08:00:25.796Z",
  "NotValidBeforeDate": "2023-10-13T08:00:25.796Z",
  "NumMachinesAllowed": number,
  "CatalogId": "string"
}
<!--NeedCopy-->

HTTP POSTメッセージで、CatalogIdを以前に作成したマシンカタログのUUIDに設定し、[DdcServerAddress]を必要に応じて次のいずれかに設定します。

-  商用 `https://[customerid].xendesktop.net`
  • 日本 https://[customerid].apps.citrixworkspacesapi.jp
  • 政府機関 https://[customerid].xendesktop.us

ステップ 3: .NETのインストール

Linux VDAをインストールする前に、Linuxディストリビューションに基づいて.NETをインストールします。

  • RHEL 7.9およびAmazon Linux 2を除くすべてのサポートされているLinuxディストリビューションに.NET Runtime 8.0をインストールします。
  • RHEL 7.9およびAmazon Linux 2の場合は、引き続き.NET Runtime 6.0をインストールします。

Linuxディストリビューションに必要な.NETバージョンが含まれている場合は、組み込みフィードからインストールします。それ以外の場合は、Microsoftパッケージフィードから.NETをインストールします。詳しくは、https://docs.microsoft.com/en-us/dotnet/core/install/linux-package-managersを参照してください。

.NETのインストール後、which dotnetコマンドを実行してランタイムパスを見つけます。

コマンド出力に基づいて、.NETランタイムバイナリパスを設定します。たとえば、コマンド出力が/aa/bb/dotnetの場合、/aa/bbを.NETバイナリパスとして使用します。

ステップ 4: Linux VDAパッケージのダウンロード

  1. Citrix Virtual Apps and Desktopsダウンロードページにアクセスします。
  2. Citrix Virtual Apps and Desktopsの適切なバージョンを展開します。
  3. コンポーネントを展開してLinux VDAを見つけます。例:

    Components for Citrix Virtual Apps and Desktops

  4. Linux VDAリンクをクリックして、Linux VDAダウンロードにアクセスします。

    Linux VDA downloads

  5. お使いのLinuxディストリビューションに一致するLinux VDAパッケージをダウンロードします。

  6. Linux VDAパッケージの整合性を検証するために使用できるGPG公開キーをダウンロードします。例:

    GPG public key

    公開キーを使用してLinux VDAパッケージの整合性を検証するには:

    • RPMパッケージの場合、次のコマンドを実行して公開キーをRPMデータベースにインポートし、パッケージの整合性を確認します。

       rpmkeys --import <path to the public key>
       rpm --checksig --verbose <path to the Linux VDA package>
       <!--NeedCopy-->
      
    • DEBパッケージの場合、次のコマンドを実行して公開キーをDEBデータベースにインポートし、パッケージの整合性を確認します。

       sudo apt-get install dpkg-sig
       gpg --import <path to the public key>
       dpkg-sig --verify <path to the Linux VDA package>
       <!--NeedCopy-->
      

ステップ 5: Linux VDAパッケージのインストール

  • Linux VDAの環境をセットアップするには、次のコマンドを実行します。

  • Amazon Linux 2、CentOS、RHEL、およびRocky Linuxディストリビューションの場合:

注:

  • RHELおよびCentOSの場合、Linux VDAを正常にインストールする前にEPELリポジトリをインストールしてください。EPELのインストール方法については、https://docs.fedoraproject.org/en-US/epel/の指示を参照してください。

  • RHEL 9.3/9.2/9.0およびRocky Linux 9.3/9.2/9.0にLinux VDAをインストールする前に、libsepolパッケージをバージョン3.4以降に更新してください。

sudo yum  -y localinstall   <PATH>/<Linux VDA RPM>
<!--NeedCopy-->

注:

GCPでホストされているRHEL 8.x/9.xおよびRocky Linux 8.x/9.xにLinux VDAをインストールした後、VMの再起動後にイーサネット接続が失われ、Linux VDAに到達できなくなる場合があります。この問題を回避するには、VMに初めてログオンする際にrootパスワードを設定し、rootとしてVMにログオンできることを確認してください。その後、VMを再起動してからコンソールで以下のコマンドを実行します。

nmcli dev connect eth0
systemctl restart NetworkManager
<!--NeedCopy-->
  • Ubuntu/Debianディストリビューションの場合:
    -  sudo dpkg -i <PATH>/<Linux VDA deb>
-  sudo apt-get install -f
<!--NeedCopy-->

注:

  • Debian 11ディストリビューションに必要な依存関係をインストールするには、/etc/apt/sources.listファイルにdeb http://deb.debian.org/debian/ bullseye mainの行を追加します。

    • GCP上のUbuntu 20.04の場合、RDNSを無効にします。そのためには、/etc/krb5.conf[libdefaults]の下にrdns = falseの行を追加します。

SUSEディストリビューションの場合:

-  1.  AWS、Azure、GCP上のSUSE 15.5の場合、以下を確認します。

-  **libstdc++6**バージョン12以降を使用していること。
-  **/etc/sysconfig/windowmanager**内の**Default_WM**パラメーターが**"gnome"**に設定されていること。
    1. Linux VDAをインストールするには、以下のコマンドを実行します。
     zypper -i install <PATH>/<Linux VDA RPM>
    
     <!--NeedCopy-->
    

ステップ6: NVIDIA GRIDドライバーのインストール

    -  HDX™ 3D Proを有効にするには、ハイパーバイザーとVDAマシンにNVIDIA GRIDドライバーをインストールする必要があります。

特定のハイパーバイザーにNVIDIA GRID Virtual GPU Manager(ホストドライバー)をインストールおよび構成するには、以下のガイドを参照してください。

NVIDIA GRIDゲストVMドライバーをインストールおよび構成するには、以下の一般的な手順を実行します。

  1. ゲストVMがシャットダウンされていることを確認します。
  2. ハイパーバイザーのコントロールパネルで、VMにGPUを割り当てます。
  3. VMを起動します。
  4. VMにゲストVMドライバー(クラウドベンダーまたはNVIDIAから提供)をインストールします。

    -  ## ステップ7: 使用するデータベースの指定
    

Linux VDAパッケージのインストール後、/etc/xdl/db.confを編集することで、使用するSQLiteまたはPostgreSQLを指定できます。

そのためには、sudo /opt/Citrix/VDA/sbin/ctxinstall.shまたは/opt/Citrix/VDA/bin/easyinstallを実行する前に、/etc/xdl/db.confを編集します。

注:

  • VDIモードでのみSQLiteを使用することをお勧めします。
  • 簡単インストールおよびMCSの場合、手動でインストールすることなく、使用するSQLiteまたはPostgreSQLを指定できます。/etc/xdl/db.confで特に指定がない限り、Linux VDAはデフォルトでPostgreSQLを使用します。
  • /etc/xdl/db.confを使用してPostgreSQLのポート番号を構成することもできます。

ステップ8: 環境とVDAを構成するための簡単インストールの実行

Linux VDAパッケージのインストール後、ctxinstall.shスクリプトを使用して実行環境を構成します。

注:

ランタイム環境を設定する前に、OSにen_US.UTF-8ロケールがインストールされていることを確認してください。OSにロケールがない場合は、sudo locale-gen en_US.UTF-8コマンドを実行します。Debianの場合、/etc/locale.genファイルを編集して# en_US.UTF-8 UTF-8の行のコメントを解除し、sudo locale-genコマンドを実行します。

ctxinstall.sh

ctxinstall.shは、いくつかの事前構成とVDA実行環境変数の設定を行うための簡単インストールスクリプトです。

  • このスクリプトはrootのみが実行できます。

  • 簡単インストールは、すべての環境変数の値を設定、保存、同期するための構成ファイルとして/opt/Citrix/VDA/sbin/ctxinstall.confを使用します。テンプレート(ctxinstall.conf.tmpl)を注意深く読み、独自のctxinstall.confをカスタマイズすることをお勧めします。構成ファイルを初めて作成する場合は、以下のいずれかの方法を使用します。

    • /opt/Citrix/VDA/sbin/ctxinstall.conf.tmplテンプレートファイルをコピーし、/opt/Citrix/VDA/sbin/ctxinstall.confとして保存する。
      • ctxinstall.shを実行する。ctxinstall.shを実行するたびに、入力は/opt/Citrix/VDA/sbin/ctxinstall.confに保存されます。

      • 簡単インストールはモジュール実行をサポートしています。モジュールには、事前チェック、インストール、ドメイン構成、セットアップ、検証が含まれます。

      • このスクリプトのデバッグの詳細は、/var/log/xdl/ctxinstall.logで確認できます。

詳細については、ヘルプコマンドctxinstall.sh -hを使用してください。

注:

  • 最小特権の原則に従い、ドメイン参加パスワードがファイルに設定されている可能性があるため、rootユーザーのみが/opt/Citrix/VDA/sbin/ctxinstall.confを読み取れるようにしてください。
  • Linux VDAをアンインストールすると、/opt/Citrix/VDA以下のファイルが削除されます。VDAをアンインストールする前に、/opt/Citrix/VDA/sbin/ctxinstall.confをバックアップすることをお勧めします。

ctxinstall.shは対話モードまたはサイレントモードで実行できます。スクリプトを実行する前に、以下の環境変数を設定してください。

  • CTX_XDL_NON_DOMAIN_JOINED=’y|n’ – マシンをドメインに参加させるかどうか。デフォルト値は’n’です。ドメインに参加しないシナリオでは、’y’に設定します。

  • CTX_XDL_NDJ_ENROLLMENT_TOKEN_FILE=’<VDAマシン上のトークンファイルへのパス>‘ – 簡単インストールを使用してドメインに参加しないVDAを作成するには、Delivery ControllerのマシンカタログにVDAを登録するためのトークンファイルが必要です。トークンは、適切なパスの下に最小特権でファイルに保存します。

  • CTX_XDL_VDI_MODE=’y|n’ – マシンを専用デスクトップ配信モデル(VDI)またはホスト型共有デスクトップ配信モデルとして構成するかどうか。HDX 3D Pro環境の場合は、値を’y’に設定します。
  • CTX_XDL_HDX_3D_PRO=’y|n’ – Linux VDAは、リッチグラフィックアプリケーションの仮想化を最適化するために設計されたGPUアクセラレーション技術のセットであるHDX 3D Proをサポートしています。HDX 3D Proが選択されている場合、VDAはVDIデスクトップ(シングルセッション)モード用に構成されます(つまり、CTX_XDL_VDI_MODE=’y’)。

  • CTX_XDL_START_SERVICE=’y|n’ – 構成完了時にLinux VDAサービスを開始するかどうかを決定します。

  • CTX_XDL_REGISTER_SERVICE=’y|n’ – Linux Virtual Desktopサービスは、マシン起動後に開始されます。

  • CTX_XDL_ADD_FIREWALL_RULES=’y|n’ – Linux VDAサービスは、システムファイアウォールを介した受信ネットワーク接続を許可する必要があります。Linux Virtual Desktopに必要なポート(デフォルトではポート80と1494)をシステムファイアウォールで自動的に開くことができます。

  • CTX_XDL_DESKTOP_ENVIRONMENT=gnome/gnome-classic/mate – セッションで使用するGNOME、GNOME Classic、またはMATEデスクトップ環境を指定します。この変数を指定しない場合、VDAで構成されているデフォルトのデスクトップが使用されます。

  • CTX_XDL_DOTNET_RUNTIME_PATH=’<.NETをインストールするパス>‘ – 新しいブローカーエージェントサービス(ctxvda)をサポートするための.NETをインストールするパス。デフォルトのパスは’/usr/bin’です。

  • CTX_XDL_VDA_PORT=’<ポート番号>‘ – Linux VDAは、TCP/IPポートを介してDelivery Controllerと通信します。

考慮事項

  • ターゲットセッションユーザーのデスクトップ環境を変更するには、次の手順を実行します。

    1. VDA上の $HOME/<username> ディレクトリに .xsession または .Xclients ファイルを作成します。Amazon Linux 2を使用している場合は、.Xclients ファイルを作成します。その他のディストリビューションを使用している場合は、.xsession ファイルを作成します。
    2. ディストリビューションに基づいてデスクトップ環境を指定するように、.xsession または .Xclients ファイルを編集します。

      • MATEデスクトップの場合

         MSESSION="$(type -p mate-session)"  
         if [ -n "$MSESSION" ]; then  
         exec mate-session  
         fi
         <!--NeedCopy-->
        
      • GNOME Classicデスクトップの場合

         GSESSION="$(type -p gnome-session)"  
         if [ -n "$GSESSION" ]; then  
         export GNOME_SHELL_SESSION_MODE=classic  
         exec gnome-session --session=gnome-classic  
         fi  
         <!--NeedCopy-->
        
      • GNOMEデスクトップの場合

         GSESSION="$(type -p gnome-session)"  
         if [ -n "$GSESSION" ]; then  
         exec gnome-session  
         fi  
         <!--NeedCopy-->
        
    3. ターゲットセッションユーザーと700ファイル権限を共有します。

    バージョン2209以降、セッションユーザーはデスクトップ環境をカスタマイズできます。この機能を有効にするには、VDAに切り替え可能なデスクトップ環境を事前にインストールする必要があります。詳しくは、「セッションユーザーによるカスタムデスクトップ環境」を参照してください。

対話型モード

ctxinstall.sh スクリプトを対話型モードで実行するには、-S オプションなしで sudo /opt/Citrix/VDA/sbin/ctxinstall.sh コマンドを使用します。コマンドラインインターフェイスの各プロンプトで関連する変数の値を入力します。変数がすでに設定されている場合、ctxinstall.shは変更するかどうかを確認します。

サイレントモード

サイレントモードでは、/opt/Citrix/VDA/sbin/ctxinstall.conf またはexportコマンドを使用して、前述の変数を設定する必要があります。その後、ctxinstall.sh -S を実行します(ここでの文字 S大文字であることに注意してください)。必要な変数がすべて設定されていないか、一部の値が無効な場合、デフォルト値がない限り、ctxinstall.sh は実行を中止します。

設定した場合、各変数にエクスポートされた値は、/Citrix/VDA/sbin/ctxinstall.conf の値を上書きします。更新されたすべての値は、/Citrix/VDA/sbin/ctxinstall.conf に保存されます。

export CTX_XDL_NON_DOMAIN_JOINED='y'
export CTX_XDL_NDJ_ENROLLMENT_TOKEN_FILE='<token-file-path>'
export CTX_XDL_VDI_MODE='y|n'
export CTX_XDL_START_SERVICE='y|n'
export CTX_XDL_REGISTER_SERVICE='y|n'
export CTX_XDL_ADD_FIREWALL_RULES='y|n'
export CTX_XDL_HDX_3D_PRO='y|n'
export CTX_XDL_DESKTOP_ENVIRONMENT= gnome | gnome-classic | mate | '<none>'
export CTX_XDL_DOTNET_RUNTIME_PATH='<path-to-install-dotnet-runtime>'
export CTX_XDL_VDA_PORT='<port-number>'
sudo -E /opt/Citrix/VDA/sbin/ctxinstall.sh -S
<!--NeedCopy-->

sudoコマンドを実行するときは、既存の環境変数を新しく作成されるシェルに渡すために -E オプションを入力します。前述のコマンドから、最初の行に #!/bin/bash を含むシェルスクリプトファイルを作成することをお勧めします。

または、単一のコマンドを使用してすべての変数を指定することもできます。

VDA実行環境変数(CTX_XDL_ で始まる変数)を設定するには、ctxinstall.sh -s を実行します(ここでの文字 s小文字であることに注意してください)。

ステップ9: XDPing の実行

sudo /opt/Citrix/VDA/bin/xdping を実行して、Linux VDA環境における一般的な構成の問題を確認します。詳しくは、「XDPing」を参照してください。

ステップ10: Linux VDAの実行

Linux VDAの起動:

Linux VDAサービスを起動するには:

sudo systemctl start ctxhdx.service

sudo systemctl start ctxvda.service
<!--NeedCopy-->

Linux VDAの停止:

Linux VDAサービスを停止するには:

sudo systemctl stop ctxvda.service

sudo systemctl stop ctxhdx.service
<!--NeedCopy-->

注:

ctxvda および ctxhdx サービスを停止する前に、systemctl stop ctxmonitord コマンドを実行してモニターサービスデーモンを停止してください。そうしないと、モニターサービスデーモンが停止したサービスを再起動します。

Linux VDAの再起動:

Linux VDAサービスを再起動するには:

sudo systemctl stop ctxvda.service

sudo systemctl restart ctxhdx.service

sudo systemctl start ctxvda.service
<!--NeedCopy-->

Linux VDAのステータスの確認:

Linux VDAサービスの実行ステータスを確認するには:

sudo systemctl status ctxvda.service

sudo systemctl status ctxhdx.service
<!--NeedCopy-->

ステップ11: デリバリーグループの作成

デリバリーグループを作成し、Linux VDAマシンを含むマシンカタログを追加するプロセスは、Windows VDAマシンとほぼ同じです。これらのタスクを完了する方法の詳細については、「デリバリーグループの作成」を参照してください。

Linux VDAマシンカタログを含むデリバリーグループを作成する場合、次の制限が適用されます。

  • 選択したADユーザーとグループが、Linux VDAマシンにログオンするように適切に構成されていることを確認します。
  • 認証されていない(匿名)ユーザーのログオンを許可しないでください。
  • デリバリーグループをWindowsマシンを含むマシンカタログと混在させないでください。

重要:

アプリケーションの公開は、Linux VDAバージョン1.4以降でサポートされています。ただし、Linux VDAは、同じマシンへのデスクトップとアプリの配信をサポートしていません。

マシンカタログとデリバリーグループの作成方法については、「Citrix Virtual Apps and Desktops 7 2402 LTSR」を参照してください。