Linux仮想配信エージェント 2411

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

この記事では、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 プラグイン

手順 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. 左上のメニューで、[マイサービス]>[DaaS] を選択します。
  3. [管理]>[完全な構成] から、左ペインで [ホスティング] を選択します。
  4. アクションバーで [接続とリソースの追加] を選択します。
    1. ウィザードが次のページに案内します。特定のページの内容は、選択した接続の種類によって異なります。各ページを完了したら、[次へ] を選択して [概要] ページに到達します。

手順 2a:接続

接続の追加画像

[接続] ページで:

  • 接続を作成するには、[新しい接続の作成] を選択します。既存の接続と同じホスト構成に基づいて接続を作成するには、[既存の接続を使用] を選択し、関連する接続を選択します。
  • [ゾーン名] フィールドでゾーンを選択します。オプションは、構成したすべてのリソースの場所です。
  • [接続の種類] フィールドでハイパーバイザーまたはクラウドサービスを選択します。オプションは、ゾーンにプラグインが適切にインストールされているハイパーバイザーとクラウドサービスです。 または、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
    <!--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をインストールし、次の点に注意してください。

  • .NET Runtimeに加えて、Linux VDAをインストールまたはアップグレードする前に、サポートされているすべてのLinuxディストリビューションに.ASP.NET Core Runtimeをインストールする必要があります。Amazon Linux 2にはバージョン6が必要です。その他のディストリビューションにはバージョン8が必要です。

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

.NETのインストール後、Linuxディストリビューションに基づいて次のコマンドを実行し、Linux VDAをインストールします。

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-->

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

ステップ3d:(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-->
    

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

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

ヒント:

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

ステップ3f:(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-->

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

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サービスを開始する必要があります
  • PostgreSQLのポート番号を設定するために、/etc/xdl/db.conf を使用することもできます
  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を使用するには、DbCustomizePostgreSQL をtrueに設定します。

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

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

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

    簡易インストール 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

(オプション) ステップ 3i: 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-->

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

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

      テンプレート VM の停止済み電源ステータス

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

      EBS イメージの作成

    • (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 に移動し、[準備] というプレフィックスが付いたマシンを手動で電源オンにします。このアプローチは、作成プロセスを続行するのに役立ちます。

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

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

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