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

最終公開日 : Nov 13, 2026
この記事では、Machine Creation Services™ (MCS) を使用して、Citrix DaaS でドメイン非参加の Linux VDA を作成する方法について説明します。
重要:

(Nutanix のみ) ステップ 1: Nutanix AHV プラグインをインストールして登録する

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

ステップ1a: オンプレミスのDelivery Controller用Nutanix AHVプラグインをインストールして登録する

Citrix Virtual Apps and Desktops™をインストールした後、Delivery ControllerにXD MCS AHV Pluginを選択してインストールします。
オンプレミスのDelivery Controller用Nutanix AHVプラグイン(/en-us/linux-virtual-delivery-agent/2402-ltsr/media/nutanix-plug-in-for-cvad.png)

ステップ1b: クラウドDelivery Controller用Nutanix AHVプラグインをインストールして登録する

Citrix Cloud™ Connector用にCWA MCS AHV Pluginを選択してインストールします。Citrix Cloudテナントに登録されているすべてのCitrix Cloud Connectorにプラグインをインストールします。AHVのないリソースの場所を提供するCitrix Cloud Connectorであっても、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. アクションバーで を選択します。
  5. ウィザードは次のページに案内します。特定のページコンテンツは、選択した接続の種類によって異なります。各ページを完了したら、Summaryページに到達するまでNextを選択します。

ステップ2a: 接続

接続の追加イメージ(/en-us/linux-virtual-delivery-agent/2402-ltsr/media/add-conn-connection.png)
「接続」ページで:
  • 接続を作成するには、 を選択します。既存の接続と同じホスト構成に基づいて接続を作成するには、 を選択し、関連する接続を選択します。
  • 「ゾーン名」フィールドでゾーンを選択します。オプションは、構成したすべてのリソースの場所です。
  • 「接続の種類」フィールドでハイパーバイザーまたはクラウドサービスを選択します。オプションは、ゾーンにプラグインが適切にインストールされているハイパーバイザーとクラウドサービスです。 または、PowerShellコマンド Get-HypHypervisorPlugin -ZoneUid を使用して、選択したゾーンで利用可能なハイパーバイザープラグインのリストを取得できます。
  • 接続名を入力します。この名前は、管理表示に表示されます。
  • 仮想マシンを作成するツールとして、Machine Creation ServicesまたはCitrix Provisioningを選択します。
接続ページの情報は、使用しているホスト(接続の種類)によって異なります。たとえば、Azure Resource Managerを使用する場合、既存のサービスプリンシパルを使用するか、新しいものを作成できます。

ステップ2b: ストレージ管理

接続管理イメージの追加
ストレージ管理の種類と方法については、「ホストストレージ」を参照してください。
Hyper-V または VMware ホストへの接続を構成している場合は、クラスター名を参照して選択します。その他の接続タイプでは、クラスター名は要求されません。
ストレージ管理方法を選択します。ハイパーバイザーによって共有されるストレージ、またはハイパーバイザーにローカルなストレージ。
  • ハイパーバイザーで共有されるストレージを選択した場合、利用可能なローカルストレージに一時データを保持するかどうかを指定します。(この接続を使用するマシンカタログで、デフォルト以外のサイズの一時ストレージを指定できます。)例外: クラスター共有ボリューム(CSV)を使用する場合、Microsoft System Center Virtual Machine Managerでは、ローカルストレージに一時データキャッシュディスクを作成できません。管理コンソールでそのストレージ管理設定を構成しようとすると失敗します。
Citrix Hypervisorプールで共有ストレージを使用する場合、共有ストレージデバイスの負荷を軽減するためにIntelliCacheを使用するかどうかを指定します。詳細については、「Citrix Hypervisor仮想化環境」を参照してください。

ステップ2c: ストレージの選択

ストレージ選択イメージ
ストレージの選択の詳細については、「ホストストレージ」を参照してください。
利用可能なデータタイプごとに、少なくとも1つのホストストレージデバイスを選択します。前のページで選択したストレージ管理方法によって、このページで選択できるデータタイプが決まります。ウィザードの次のページに進む前に、サポートされているデータタイプごとに少なくとも1つのストレージデバイスを選択する必要があります。
ストレージの選択ページの下部には、ハイパーバイザーで共有されるストレージを選択し、利用可能なローカルストレージ上の一時データを最適化を有効にした場合に、さらに多くの構成オプションが表示されます。一時データに使用するローカルストレージデバイス(同じハイパーバイザープール内)を選択できます。
現在選択されているストレージデバイスの数が表示されます(グラフィックでは「1 storage device selected」)。そのエントリにカーソルを合わせると、選択されているデバイス名が表示されます(デバイスが構成されていない場合を除く)。
  1. 使用するストレージデバイスを変更するには、**「選択」**をクリックします。
  2. ストレージの選択ダイアログボックスで、ストレージデバイスのチェックボックスをオンまたはオフにしてから、OKを選択します。

ステップ2d: リージョン

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

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

リソースの名前を入力します。この名前は、管理コンソールに表示され、接続に関連付けられたストレージとネットワークの組み合わせを識別します。 VMが使用するネットワークを1つ以上選択します。
接続の種類によっては(Azure Resource Managerなど)、VMが使用するサブネットも表示されます。1つ以上のサブネットを選択してください。

ステップ2f: 概要

選択内容を確認します。変更する場合は、前のウィザードページに戻ってください。確認が完了したら、**「完了」**を選択します。
注意: 一時データをローカルに保存する場合、この接続を使用するマシンを含むカタログを作成する際に、一時データストレージの非デフォルト値を構成できます。
注:
フルアクセス管理者にはスコープは表示されません。詳細については、「管理者、役割、およびスコープ」を参照してください。
詳細については、「接続の作成と管理」を参照してください。

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

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

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

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

ステップ3b:テンプレートVMに.NETとLinux VDAパッケージをインストールする

注:
現在実行中のVDAをテンプレートVMとして使用する場合は、この手順をスキップしてください。
Linux VDAパッケージをインストールする前に、システム要件に従って .NETをインストールしてください。
.NETのインストール後、お使いのLinuxディストリビューションに基づいて次のコマンドを実行し、Linux VDAをインストールします。
RHEL/CentOS/Rocky Linuxの場合:
sudo yum –y localinstall <PATH>/<Linux VDA RPM>
注:
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
Ubuntu/Debianの場合:
sudo dpkg –i  <PATH>/<Linux VDA DEB>

apt-get install -f
SUSEの場合:
sudo zypper –i install <PATH>/<Linux VDA RPM>

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

RHEL 7サーバーの場合:
subscription-manager repos --enable=rhel-7-server-optional-rpms
RHEL 7 ワークステーションの場合:
subscription-manager repos --enable=rhel-7-workstation-optional-rpms

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

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

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

SUSE プラットフォームでは、ntfs-3g を提供するリポジトリはありません。ソースコードをダウンロードし、コンパイルして、ntfs-3g を手動でインストールします。
  1. GNU Compiler Collection (GCC) コンパイラシステムと make パッケージをインストールします。
    sudo zypper install gcc
    sudo zypper install make
  2. ntfs-3g パッケージをダウンロードします。
  3. ntfs-3g パッケージを解凍します。
    sudo tar -xvzf ntfs-3g_ntfsprogs-<package version>.tgz
  4. ntfs-3g パッケージへのパスを入力します。
    sudo cd ntfs-3g_ntfsprogs-<package version>
  5. ntfs-3g をインストールします。
    ./configure
    make
    make install

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

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

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

/run/systemd/resolve/stub-resolv.conf を指す代わりに、/etc/resolv.conf を /run/systemd/resolve/resolv.conf に向けます。
unlink /etc/resolv.conf

ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf

ステップ 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"
    カスタムバージョンの PostgreSQL を使用するには、DbCustomizePostgreSQL を true に設定します。

ステップ 3i: MCS 変数を構成する

MCS 変数を構成する方法は 2 つあります。
  • /etc/xdl/mcs/mcs.conf ファイルを編集します。
  • 簡易インストール GUI を使用します。簡易インストール GUI を開くには、Linux VDA のデスクトップ環境で /opt/Citrix/VDA/bin/easyinstall コマンドを実行します。
    簡易インストール GUI
    ヒント:
    保存をクリックすると、指定したパスのローカルファイルに変数の設定が保存されます。読み込みをクリックすると、指定したファイルから変数の設定が読み込まれます。
以下は、非ドメイン参加シナリオ用に構成できるMCS変数です。デフォルトの変数値を使用することも、必要に応じて変数をカスタマイズすることもできます(オプション)。
DOTNET_RUNTIME_PATH=dotnet-runtimeのインストールパス
DESKTOP_ENVIRONMENT=gnome | mate REGISTER_SERVICE=はい | いいえ
ADD_FIREWALL_RULES=はい | いいえ VDI_MODE=はい | いいえ
START_SERVICE=はい | いいえ

(オプション) ステップ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" --forceupdate -k "HKLM\System\CurrentControlSet\Control\Citrix\VirtualChannels\Clipboard\ClipboardSelection" -v "Flags" -d "0x00000003"

ステップ3k: マスターイメージを作成する

  1. /etc/xdl/mcs/mcs.confを編集してMCS変数を構成する場合は、/opt/Citrix/VDA/sbin/deploymcs.shを実行します。GUIを使用してMCS変数を構成する場合は、Deployをクリックします。GUIでDeployをクリックすると、GUIで設定した変数が/etc/xdl/mcs/mcs.confファイルで設定した変数を上書きします。
  2. 使用しているパブリッククラウドに基づいて、マスターイメージのスナップショットを作成し、名前を付けます。
    • (XenServer (旧Citrix Hypervisor)、GCP、およびVMware vSphereの場合) テンプレートVMにアプリケーションをインストールし、テンプレートVMをシャットダウンします。マスターイメージのスナップショットを作成し、名前を付けます。
    • (Azureの場合) テンプレートVMにアプリケーションをインストールし、AzureポータルからテンプレートVMをシャットダウンします。テンプレートVMの電源ステータスが**Stopped (deallocated)**と表示されていることを確認します。ここでリソースグループの名前を覚えておいてください。Azureでマスターイメージを見つけるには、その名前が必要です。
      テンプレートVMの停止された電源ステータス
    • (AWSの場合) テンプレートVMにアプリケーションをインストールし、AWS EC2ポータルからテンプレートVMをシャットダウンします。テンプレートVMのインスタンスの状態がStoppedと表示されていることを確認します。テンプレートVMを右クリックし、Image > Create Imageを選択します。必要に応じて情報を入力し、設定を行います。Create Imageをクリックします。
      EBSイメージの作成
    • (Nutanixの場合) Nutanix AHVで、テンプレートVMをシャットダウンします。マスターイメージのスナップショットを作成し、名前を付けます。
      注:
      Citrix Virtual Apps™ and Desktops で使用するには、Acropolis スナップショット名に XD_ をプレフィックスとして付ける必要があります。必要に応じて、Acropolis コンソールを使用してスナップショットの名前を変更します。スナップショットの名前を変更したら、カタログの作成ウィザードを再起動して、更新されたリストを取得します。

ステップ4:マシンカタログを作成する

  1. Citrix Cloudにサインインします。
  2. 左上のメニューで、**[My Services]>[DaaS]**の順に選択します。
  3. **[Manage]>[Full Configuration]から、[Machine Catalogs]**を選択します。
  4. ウィザードの指示に従ってマシンカタログを作成します。
    Nutanix固有の**[Container]**ページで、以前にテンプレートVMに指定したコンテナを選択します。
    **[Master Image]**ページで、イメージスナップショットを選択します。
    **[Virtual Machines]ページで、仮想CPUの数とvCPUあたりのコア数を確認します。マシン展開方法としてMCSを選択し、カタログで作成するマシンのIDとして[Non-domain-joined]**を選択します。
    必要に応じて、その他の構成タスクを実行します。詳しくは、「マシンカタログの作成」を参照してください。
注:
Delivery Controller™でのマシンカタログ作成プロセスにかなりの時間がかかる場合は、Nutanix Prismに移動し、Preparationというプレフィックスが付いたマシンの電源を手動でオンにします。この方法により、作成プロセスを続行できます。

ステップ5:デリバリーグループを作成する

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