Linux Virtual Delivery Agent

MCSを使用した非ドメイン参加Linux VDAの作成

本記事では、Machine Creation Services™ (MCS) を使用して、Citrix DaaSで非ドメイン参加Linux VDAを作成する手順を説明します。

重要:

(Nutanixのみ)手順1:Nutanix AHVプラグインのインストールと登録

NutanixからNutanix AHVプラグインパッケージを入手します。Citrix Virtual Apps and Desktops環境にプラグインをインストールして登録します。詳細については、Nutanixサポートポータルで入手可能なNutanix Acropolis MCSプラグインインストールガイドを参照してください。

手順1a:オンプレミスDelivery Controller用Nutanix AHVプラグインのインストールと登録

  • Citrix Virtual Apps and Desktops™をインストールした後、Delivery ControllerでXD MCS AHV Pluginを選択してインストールします。

オンプレミスDelivery Controller用Nutanix AHVプラグイン

手順1b:クラウドDelivery Controller用Nutanix AHVプラグインのインストールと登録

Citrix Cloud™ Connector用にCWA MCS AHV Pluginを選択してインストールします。Citrix Cloudテナントに登録されているすべてのCitrix Cloud Connectorにプラグインをインストールします。AHVのないリソースの場所にサービスを提供する場合でも、Citrix Cloud Connectorを登録する必要があります。

手程1c:プラグインのインストール後に以下の手順を完了

  • C:\Program Files\Common Files\Citrix\HCLPlugins\CitrixMachineCreation\v1.0.0.0にNutanix Acropolisフォルダーが作成されていることを確認します。
  • "C:\Program Files\Common Files\Citrix\HCLPlugins\RegisterPlugins.exe" -PluginsRoot "C:\Program Files\Common Files\Citrix\HCLPlugins\CitrixMachineCreation\v1.0.0.0"コマンドを実行します。
  • オンプレミスDelivery ControllerでCitrix Host、Citrix Broker、およびCitrix Machine Creation Servicesを再起動するか、Citrix Cloud ConnectorでCitrix RemoteHCLServer Serviceを再起動します。

    ヒント:

    Nutanix AHVプラグインをインストールまたは更新する際は、Citrix Host、Citrix Broker、およびMachine Creation Servicesを停止してから再起動することをお勧めします。

  • 手順2:ホスト接続の作成

  • ホストとは、リソースの場所で使用されているハイパーバイザーまたはクラウドサービスのことです。この手順では、DaaSがホスト上のVMと通信するために使用する情報を指定します。詳細情報には、リソースの場所、ホストの種類、アクセス資格情報、使用するストレージ方法、およびホスト上のVMが使用できるネットワークが含まれます。

  • 重要:

  • 接続を作成する前に、リソースの場所にあるホストリソース(ストレージとネットワーク)が利用可能である必要があります。

  1. Citrix Cloudにサインインします。
  2. 左上のメニューで、[My Services]>[DaaS]を選択します。
  3. [Manage]>[Full Configuration]から、左ペインで[Hosting]を選択します。
  4. アクションバーで[Add Connections and Resources]を選択します。
    1. ウィザードは以下のページを案内します。特定のページコンテンツは、選択した接続の種類によって異なります。各ページを完了したら、[Next]を選択して[Summary]ページに到達します。

手順2a:接続

接続の追加画像

[Connection]ページで:

  • 接続を作成するには、[Create a new Connection]を選択します。既存の接続と同じホスト構成に基づいて接続を作成するには、[Use an existing Connection]を選択し、関連する接続を選択します。
  • [Zone name]フィールドでゾーンを選択します。オプションは、構成したすべてのリソースの場所です。
  • [Connection type]フィールドでハイパーバイザーまたはクラウドサービスを選択します。オプションは、ゾーンにプラグインが適切にインストールされているハイパーバイザーとクラウドサービスです。 または、PowerShellコマンドGet-HypHypervisorPlugin -ZoneUidを使用して、選択したゾーンで利用可能なハイパーバイザープラグインのリストを取得できます。
  • 接続名を入力します。この名前は[Manage]表示に表示されます。
  • 仮想マシンを作成するツールを選択します: Machine Creation ServicesまたはCitrix Provisioning。

[Connection]ページの情報は、使用しているホスト(接続の種類)によって異なります。たとえば、Azure Resource Managerを使用する場合、既存のサービスプリンシパルを使用するか、新しいサービスプリンシパルを作成できます。

手順2b:ストレージ管理

接続管理の追加画像

ストレージ管理の種類と方法については、「ホストストレージ」を参照してください。

Hyper-VまたはVMwareホストへの接続を構成している場合は、クラスター名を参照して選択します。他の接続の種類ではクラスター名は要求されません。

ストレージ管理方法を選択します: ハイパーバイザーによって共有されるストレージ、またはハイパーバイザーにローカルなストレージ。

  • ハイパーバイザーによって共有されるストレージを選択した場合、利用可能なローカルストレージに一時データを保持するかどうかを示します。(この接続を使用するマシンカタログでは、デフォルト以外のテンポラリストレージサイズを指定できます。)例外: クラスター共有ボリューム(CSV)を使用する場合、Microsoft System Center Virtual Machine Managerはローカルストレージに一時データキャッシュディスクを作成することを許可しません。[Manage]コンソールでそのストレージ管理設定を構成しようとすると失敗します。

  • Citrix Hypervisorプールで共有ストレージを使用する場合、IntelliCacheを使用して共有ストレージデバイスへの負荷を軽減するかどうかを示します。「Citrix Hypervisor仮想化環境」を参照してください。

  • 手順2c:ストレージの選択

  • ストレージ選択画像

ストレージの選択に関する詳細については、「ホストストレージ」を参照してください。

各利用可能なデータタイプに対して、少なくとも1つのホストストレージデバイスを選択します。前のページで選択したストレージ管理方法によって、このページで選択可能なデータタイプが決まります。ウィザードの次のページに進む前に、サポートされている各データタイプに対して少なくとも1つのストレージデバイスを選択する必要があります。

ハイパーバイザー間で共有されるストレージを選択し、利用可能なローカルストレージ上の一時データを最適化を有効にした場合、ストレージ選択ページの下部にはさらに多くの構成オプションが含まれます。一時データに使用するローカルストレージデバイス(同じハイパーバイザープール内)を選択できます。

現在選択されているストレージデバイスの数が表示されます(グラフィックでは「1つのストレージデバイスが選択済み」)。そのエントリにカーソルを合わせると、選択されたデバイス名が表示されます(デバイスが構成されていない場合を除く)。

  1. 選択して、使用するストレージデバイスを変更します。
  2. ストレージの選択ダイアログボックスで、ストレージデバイスのチェックボックスをオンまたはオフにしてから、OKを選択します。

ステップ2d: 地域

(一部のホストタイプにのみ表示されます。) 地域選択は、VMが展開される場所を示します。理想的には、ユーザーがアプリケーションにアクセスする場所に近い地域を選択してください。

ステップ2e: ネットワーク

  • リソースの名前を入力します。この名前は、接続に関連付けられているストレージとネットワークの組み合わせを識別するために、管理コンソールに表示されます。
  • VMが使用するネットワークを1つ以上選択します。

一部の接続タイプ(Azure Resource Managerなど)では、VMが使用するサブネットも一覧表示されます。サブネットを1つ以上選択します。

ステップ2f: 概要

選択内容を確認します。変更する場合は、前のウィザードページに戻ります。確認が完了したら、完了を選択します。

注意: 一時データをローカルに保存する場合、この接続を使用するマシンを含むカタログを作成するときに、一時データストレージの非デフォルト値を構成できます。

注:

フルアクセス管理者にはスコープは表示されません。詳しくは、「管理者、役割、およびスコープ」を参照してください。

詳しくは、「接続の作成と管理」を参照してください。

ステップ3: マスターイメージの準備

ヒント:

ドメイン参加済みVDAと非ドメイン参加済みVDAの両方を作成するために、単一のイメージを使用できます。

(XenServer(旧Citrix Hypervisor™)のみ)ステップ3a: XenServer VM Toolsのインストール

各VMがxe CLIまたはXenCenterを使用できるように、テンプレートVMにXenServer VM Toolsをインストールします。ツールをインストールしないと、VMのパフォーマンスが低下する可能性があります。ツールがない場合、以下のいずれも実行できません。

  • VMを正常にシャットダウン、再起動、または一時停止する。
  • XenCenterでVMのパフォーマンスデータを表示する。
    • 実行中のVMを移行する(XenMotion経由)。
    • スナップショットまたはメモリ付きスナップショット(チェックポイント)を作成し、スナップショットに戻す。
    • 実行中のLinux VMのvCPU数を調整する。
  1. 使用中のハイパーバイザーのバージョンに基づいて、XenServerダウンロードページまたはCitrix HypervisorダウンロードページからLinux用XenServer VM Toolsファイルをダウンロードします。

  2. LinuxGuestTools-xxx.tar.gzファイルをLinux VM、またはLinux VMがアクセスできる共有ドライブにコピーします。

  3. tarファイルの内容を抽出します: tar -xzf LinuxGuestTools-xxx.tar.gz

  4. Linuxディストリビューションに基づいて、xe-guest-utilitiesパッケージをインストールするには、次のコマンドを実行します。

    RHEL/CentOS/Rocky Linux/SUSEの場合:

    sudo rpm -i <extract-directory>/xe-guest-utilities_{package-version}_x86.64.rpm
    <!--NeedCopy-->
    

    Ubuntu/Debianの場合:

    sudo dpkg -i <extract-directory>/xe-guest-utilities_{package-version}_amd64.deb
    <!--NeedCopy-->
    
  5. XenCenterの全般タブで、テンプレートVMの仮想化状態を確認します。XenServer® VM Toolsが正しくインストールされている場合、仮想化状態は最適化済みと表示されます。

ステップ3b: テンプレートVMへの.NETおよびLinux VDAパッケージのインストール

注:

現在実行中のVDAをテンプレートVMとして使用する場合は、この手順をスキップしてください。

Linux VDAパッケージをインストールする前に、テンプレートVMに.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のインストール後、Linux VDAをインストールするには、Linuxディストリビューションに基づいて次のコマンドを実行します。

RHEL/CentOS/Rocky Linuxの場合:

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を再起動する前に次のコマンドを実行します。

nmcli dev connect eth0
systemctl restart NetworkManager
<!--NeedCopy-->

Ubuntu/Debianの場合:

sudo dpkg –i  <PATH>/<Linux VDA DEB>

apt-get install -f
<!--NeedCopy-->

SUSEの場合:

sudo zypper –i install <PATH>/<Linux VDA RPM>
<!--NeedCopy-->

(RHEL 7のみ) ステップ 3c: tdb-tools パッケージをインストールするためのリポジトリを有効にする

RHEL 7サーバーの場合:

subscription-manager repos --enable=rhel-7-server-optional-rpms
<!--NeedCopy-->

RHEL 7ワークステーションの場合:

subscription-manager repos --enable=rhel-7-workstation-optional-rpms
<!--NeedCopy-->

ステップ 3d: (RHELおよびCentOSのみ) ntfs-3gを提供するEPELリポジトリをインストールする

RHEL 8、RHEL 7、およびCentOS 7にEPELリポジトリをインストールします。EPELのインストール方法については、https://docs.fedoraproject.org/en-US/epel/ の手順を参照してください。

ステップ 3e: (SUSEのみ) ntfs-3gを手動でインストールする

SUSEプラットフォームでは、ntfs-3gを提供するリポジトリはありません。ソースコードをダウンロードし、コンパイルして、ntfs-3gを手動でインストールします。

  1. GNU Compiler Collection (GCC) コンパイラシステムと make パッケージをインストールします。

    sudo zypper install gcc
    sudo zypper install make
    <!--NeedCopy-->
    
  2. ntfs-3gパッケージをダウンロードします。

  3. ntfs-3gパッケージを解凍します。

    sudo tar -xvzf ntfs-3g_ntfsprogs-<package version>.tgz
    <!--NeedCopy-->
    
  4. ntfs-3gパッケージへのパスを入力します。

    -  sudo cd ntfs-3g_ntfsprogs-<package version>
    <!--NeedCopy-->
    
  5. ntfs-3gをインストールします。

    ./configure
    make
    make install
    <!--NeedCopy-->
    

ステップ 3f: (Ubuntuのみ) /etc/network/interfaces ファイルを編集する

/etc/network/interfaces ファイルに source /etc/network/interfaces.d/* の行を追加します。

ヒント:

/etc/network/interfaces ファイルは、Ubuntuマシンで利用できない場合があります。ファイルが存在しない場合は、まずnet-toolsおよびifupdownパッケージをインストールする必要があります。

ステップ 3g: (Ubuntuのみ) /etc/resolv.conf をポイントする

/etc/resolv.conf/run/systemd/resolve/stub-resolv.conf ではなく /run/systemd/resolve/resolv.conf にポイントします。

unlink /etc/resolv.conf

ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf
<!--NeedCopy-->

ステップ 3h: 使用するデータベースを指定する

Linux VDAパッケージのインストール後に、SQLiteとPostgreSQLを切り替えることができます。これを行うには、次の手順を完了します。

注:

  • VDIモードではSQLiteのみを使用し、ホスト型共有デスクトップ配信モデルではPostgreSQLを使用することをお勧めします。
  • 簡易インストールおよびMCSの場合、SQLiteまたはPostgreSQLを手動でインストールすることなく使用するように指定できます。/etc/xdl/db.conf で特に指定がない限り、Linux VDAはデフォルトでPostgreSQLを使用します。Linuxディストリビューションによって提供されるバージョンではなく、カスタムバージョンのPostgreSQLが必要な場合は、指定されたバージョンを手動でインストールし、/etc/xdl/db.conf を編集して新しいバージョンを反映させ、簡易インストールスクリプト (ctxinstall.sh) またはMCSスクリプト (deploymcs.sh) を実行する前にPostgreSQLサービスを開始する必要があります。
  • /etc/xdl/db.conf を使用して、PostgreSQLのポート番号を構成することもできます。
  1. /opt/Citrix/VDA/sbin/ctxcleanup.sh を実行します。新規インストールの場合、この手順は省略します。

  2. deploymcs.sh を実行する前に /etc/xdl/db.conf を編集します。以下は db.conf ファイルの例です。

    # database configuration file for Linux VDA
    
    ## database choice
    # possible choices are:
    #     SQLite
    #     PostgreSQL
    # default choice is PostgreSQL
    DbType="PostgreSQL"
    
    ## database port
    # specify database port for the database.
    # if not specified, default port will be used:
    # SQLite: N/A
    # PostgreSQL: 5432
    DbPort=5432
    
    ## PostgreSQL customized
    # only the following value means true, otherwise false:
    #     true
    #     yes
    #     y
    #     YES
    #     Y
    # default is false
    DbCustomizePostgreSQL=false
    
    ## PostgreSQL service name
    # specify the service name of PostgreSQL for Linux VDA
    # default is "postgresql"
    DbPostgreSQLServiceName="postgresql"
    <!--NeedCopy-->
    

カスタムバージョンのPostgreSQLを使用するには、DbCustomizePostgreSQLtrue に設定します。

ステップ 3i: MCS変数の構成

MCS変数を構成する方法は2つあります。

  • /etc/xdl/mcs/mcs.confファイルを編集します。
  • Easy Install GUIを使用します。Easy Install GUIを開くには、Linux VDAのデスクトップ環境で/opt/Citrix/VDA/bin/easyinstallコマンドを実行します。

    Easy install GUI

    ヒント:

    変数設定を指定したパスのローカルファイルに保存するには、[保存] をクリックします。指定したファイルから変数設定を読み込むには、[読み込み] をクリックします。

以下は、ドメインに参加していないシナリオ用に構成できるMCS変数です。必要に応じて、デフォルトの変数値を使用するか、変数をカスタマイズできます(オプション)。

DOTNET_RUNTIME_PATH=path-to-install-dotnet-runtime DESKTOP_ENVIRONMENT=gnome | mate REGISTER_SERVICE=Y | N ADD_FIREWALL_RULES=Y | N VDI_MODE=Y | N START_SERVICE=Y | N

(オプション) ステップ 3j: MCSのレジストリ値の書き込みまたは更新

テンプレートマシンで、必要に応じてレジストリ値を書き込むまたは更新するためのコマンドラインを/etc/xdl/mcs/mcs_local_setting.regファイルに追加します。この操作により、MCSプロビジョニングされたマシンが再起動するたびにデータと設定が失われるのを防ぎます。

/etc/xdl/mcs/mcs_local_setting.regファイルの各行は、レジストリ値を設定または更新するためのコマンドです。

たとえば、レジストリ値をそれぞれ書き込むまたは更新するために、次のコマンドラインを/etc/xdl/mcs/mcs_local_setting.regファイルに追加できます。

create -k "HKLM\System\CurrentControlSet\Control\Citrix\VirtualChannels\Clipboard\ClipboardSelection" -t "REG_DWORD" -v "Flags" -d "0x00000003" --force
<!--NeedCopy-->
update -k "HKLM\System\CurrentControlSet\Control\Citrix\VirtualChannels\Clipboard\ClipboardSelection" -v "Flags" -d "0x00000003"
<!--NeedCopy-->

ステップ 3k: マスターイメージの作成

  1. /etc/xdl/mcs/mcs.confを編集してMCS変数を構成する場合は、/opt/Citrix/VDA/sbin/deploymcs.shを実行します。GUIを使用してMCS変数を構成する場合は、[展開] をクリックします。GUIで[展開] をクリックすると、GUIで設定した変数が/etc/xdl/mcs/mcs.confファイルで設定した変数を上書きします。

  2. 使用するパブリッククラウドに基づいて、マスターイメージのスナップショットを作成し、名前を付けます。

    • (XenServer (旧称 Citrix Hypervisor)、GCP、およびVMware vSphereの場合) テンプレートVMにアプリケーションをインストールし、テンプレートVMをシャットダウンします。マスターイメージのスナップショットを作成し、名前を付けます。

    • (Azureの場合) テンプレートVMにアプリケーションをインストールし、AzureポータルからテンプレートVMをシャットダウンします。テンプレートVMの電源ステータスが[停止済み (割り当て解除済み)] と表示されていることを確認します。ここでリソースグループの名前を覚えておいてください。Azureでマスターイメージを見つけるには、この名前が必要です。

      Stopped power status of template VM

    • (AWSの場合) テンプレートVMにアプリケーションをインストールし、AWS EC2ポータルからテンプレートVMをシャットダウンします。テンプレートVMのインスタンス状態が[停止済み] と表示されていることを確認します。テンプレートVMを右クリックし、[イメージ] > [イメージの作成] を選択します。必要に応じて情報を入力し、設定を行います。[イメージの作成] をクリックします。

      Creating an EBS image

    • (Nutanixの場合) Nutanix AHVで、テンプレートVMをシャットダウンします。マスターイメージのスナップショットを作成し、名前を付けます。

      注:

      Citrix Virtual Apps™ and Desktopsで使用するには、Acropolisスナップショット名にXD_をプレフィックスとして付ける必要があります。必要に応じて、Acropolisコンソールを使用してスナップショットの名前を変更します。スナップショットの名前を変更した後、[カタログの作成] ウィザードを再起動して、更新されたリストを取得します。

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

  1. Citrix Cloudにサインインします。
  2. 左上のメニューで、[マイサービス] > [DaaS] を選択します。
  3. [管理] > [完全な構成] から、[マシンカタログ] を選択します。
  4. ウィザードの指示に従ってマシンカタログを作成します。

    Nutanix固有の[コンテナ] ページで、以前にテンプレートVMに指定したコンテナを選択します。

    [マスターイメージ] ページで、イメージスナップショットを選択します。

    [仮想マシン] ページで、仮想CPUの数とvCPUあたりのコア数を確認します。マシン展開方法としてMCSを選択し、カタログで作成するマシンのIDとして[ドメインに参加していない] を選択します。

    必要に応じて、その他の構成タスクを実行します。詳しくは、「マシンカタログの作成」を参照してください。

注:

Delivery Controller™でのマシンカタログ作成プロセスにかなりの時間がかかる場合は、Nutanix Prismに移動し、Preparationというプレフィックスが付いたマシンを手動で電源オンにします。このアプローチは、作成プロセスを続行するのに役立ちます。

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

デリバリーグループは、1つ以上のマシンカタログから選択されたマシンのコレクションです。どのユーザーがそれらのマシンを使用できるか、およびそれらのユーザーが利用できるアプリケーションとデスクトップを指定します。詳しくは、「デリバリーグループの作成」を参照してください。

MCSを使用した非ドメイン参加Linux VDAの作成

この記事の概要