Linux Virtual Delivery Agent 2110

Machine Creation Services™ (MCS) を使用した Linux VM の作成

  1. Step MCS を使用して Linux VM を作成するには、ハイパーバイザー上にマスターイメージを準備します。このプロセスには、テンプレート VM への VDA のインストール、Citrix Studio でのマシンカタログの作成、デリバリーグループの作成、および特定の構成タスクの実行が含まれます。

注:

Citrix Hypervisor™、Microsoft Azure、VMware vSphere、AWS、GCP、Nutanix AHV 以外のハイパーバイザーでマスターイメージを準備しようとすると、予期しない結果が発生する可能性があります。

Microsoft Azure、AWS、GCP は、Citrix Virtual Apps and Desktops™ 7 2003 以降ではサポートされていません。ただし、Citrix Virtual Apps and Desktops サービスでホストを引き続き使用することはできます。

サポートされるディストリビューション

  Winbind SSSD Centrify PBIS
RHEL 8.4 はい いいえ はい はい
CentOS 8 (2105) はい いいえ はい はい
RHEL 8.3 はい いいえ はい はい
CentOS 8.3 はい いいえ はい はい
RHEL 8.2 はい いいえ はい はい
CentOS 8.2 はい いいえ はい はい
RHEL 8.1 はい いいえ はい はい
CentOS 8.1 はい いいえ はい はい
RHEL 7.9 はい はい はい はい
CentOS 7.9 はい はい はい はい
RHEL 7.8 はい はい はい はい
CentOS 7.8 はい はい はい はい
Ubuntu 20.04 はい はい いいえ はい
Ubuntu 18.04 はい はい いいえ はい
Ubuntu 16.04 はい はい いいえ はい
Debian 10.9 はい はい いいえ はい
SUSE 15.3 はい はい いいえ はい
SUSE 15.2 はい はい いいえ はい
SUSE 12.5 はい はい いいえ はい

注:

MCS で作成されたマシンを Windows ドメインに参加させるために PBIS または Centrify を使用している場合は、次のタスクを完了してください。

  • テンプレートマシンで、/etc/xdl/mcs/mcs.conf ファイルに PBIS または Centrify パッケージのダウンロードパスを構成するか、PBIS または Centrify パッケージを直接インストールします。
  • /opt/Citrix/VDA/sbin/deploymcs.sh を実行する前に、そのすべての下位の MCS で作成されたマシンに対する書き込み権限とパスワードリセット権限を持つ組織単位 (OU) を作成します。
  • /opt/Citrix/VDA/sbin/deploymcs.sh の実行が完了した後、MCS で作成されたマシンを再起動する前に、展開に応じて Delivery Controller または Citrix Cloud Connector で klist -li 0x3e4 purge を実行します。
  • Citrix Hypervisor で MCS を使用して Linux VM を作成

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

マスターイメージには、オペレーティングシステム、非仮想化アプリケーション、VDA、およびその他のソフトウェアが含まれます。マスターイメージを準備するには、次の手順を実行します。

ステップ 1a: Citrix VM Tools のインストール

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

  • VM のクリーンなシャットダウン、再起動、または一時停止
  • XenCenter での VM パフォーマンスデータの表示
  • 実行中の VM の移行 (XenMotion 経由)
  • スナップショットまたはメモリ付きスナップショット (チェックポイント) の作成、およびスナップショットへの復元
    • 実行中の Linux VM の vCPU 数の調整
  1. guest-tools.iso という名前の Citrix VM Tools をマウントするには、次のコマンドを実行します。

    sudo mount /dev/cdrom /mnt
    <!--NeedCopy-->
    
  2. Linux ディストリビューションに基づいて xe-guest-utilities パッケージをインストールするには、次のコマンドを実行します。

    RHEL/CentOS の場合:

    sudo rpm -i /mnt/Linux/xe-guest-utilities_{package-version}_all.rpm
    <!--NeedCopy-->
    

    Ubuntu/Debian の場合:

    sudo dpkg -i /mnt/Linux/xe-guest-utilities_{package-version}_all.deb
    <!--NeedCopy-->
    

    SUSE の場合:

    sudo rpm -i /mnt/Linux/xe-guest-utilities_{package-version}_all.rpm
    <!--NeedCopy-->
    
  3. XenCenter の [General] タブで、テンプレート VM の仮想化状態を確認します。Citrix VM Tools が正しくインストールされている場合、仮想化状態は [Optimized] です。

    最適化された仮想化状態

ステップ 1b: (Ubuntu 16.04 のみ) OpenJDK 11 のインストール

Ubuntu 16.04 に OpenJDK 11 をインストールするには、次の手順を完了します。

  1. https://jdk.java.net/archive/ から最新の OpenJDK 11 をダウンロードします。
  2. ダウンロードしたパッケージを解凍するには、tar zxf openjdk-11.0.2_linux-x64_bin.tar.gz コマンドを実行します。
  3. (オプション) OpenJDK をターゲットディレクトリに保存するには、mv jdk-11.0.2/ <target directory> コマンドを実行します。
  4. Java ランタイムをセットアップするには、update-alternatives -----install /usr/bin/java java <custom directory>/bin/java 2000 コマンドを実行します。
  5. Java のバージョンを確認するには、java -version コマンドを実行します。

ステップ 1c: テンプレート VM への Linux VDA パッケージのインストール

注:

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

テンプレート VM に Linux VDA パッケージをインストールする前に、.NET Core Runtime 3.1 をインストールしてください。詳しくは、「インストール概要」を参照してください。

Linux ディストリビューションに基づいて、Linux VDA の環境をセットアップするには、次のコマンドを実行します。

RHEL/CentOS の場合:

sudo yum –y localinstall <PATH>/<Linux VDA RPM>
<!--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-->
-  #### ステップ 1d: 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-->

ステップ 1e: ntfs-3g を提供できる EPEL リポジトリのインストール

RHEL 8/CentOS 8、RHEL 7/CentOS 7 に EPEL リポジトリをインストールして、後で deploymcs.sh を実行したときに EPEL リポジトリで利用可能な ntfs-3g パッケージがインストールされるようにします。

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

手順1g: ランタイム環境のセットアップ

deploymcs.shを実行する前に、以下を実行します。

-  `/etc/xdl/mcs/mcs.conf`内の変数の変更。`mcs.conf`構成ファイルは、MCSおよびLinux VDAを設定するための変数を提供します。必要に応じて設定できる変数は次のとおりです。

-  `Use_Existing_Configurations_Of_Current_VDA`: 現在実行中のVDAの既存の構成を使用するかどうかの決定。Yに設定すると、MCSで作成されたマシンの構成ファイルは、現在実行中のVDAの構成ファイルと同じになります。ただし、`dns`および`AD_INTEGRATION`変数は引き続き構成する必要があります。デフォルト値はNであり、マスターイメージ上の構成テンプレートがMCSで作成されたマシンの構成ファイルを決定することを意味します。

-  `dns`: DNS IPアドレスの設定。

-  `AD_INTEGRATION`: Winbind、SSSD、PBIS、またはCentrifyの設定。MSCがサポートするLinuxディストリビューションとドメイン参加方法のマトリックスについては、この記事の「[サポートされるディストリビューション](#supported-distributions)」を参照してください。

-  `CENTRIFY_DOWNLOAD_PATH`: Centrifyパッケージをダウンロードするためのパスの設定。この値は、`AD_INTEGRATION`変数をCentrifyに設定した場合にのみ有効になります。

-  `CENTRIFY_SAMBA_DOWNLOAD_PATH`: Centrify Sambaパッケージをダウンロードするためのパスの設定。この値は、`AD_INTEGRATION`変数をCentrifyに設定した場合にのみ有効になります。

-  `WORKGROUP`: ADで構成した場合のワークグループ名(大文字と小文字を区別)の設定。

-  テンプレートマシンで、必要に応じてレジストリ値を書き込むまたは更新するためのコマンドラインを`/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--> ```

手順1h: マスターイメージの作成

  1. /opt/Citrix/VDA/sbin/deploymcs.shの実行。
  2. (オプション)テンプレートVMで、構成テンプレートを更新して、作成されたすべてのVM上の関連する/etc/krb5.conf/etc/samba/smb.conf、および/etc/sssd/sssd.confファイルをカスタマイズします。

    Winbindユーザーの場合は、/etc/xdl/mcs/winbind_krb5.conf.tmplおよび/etc/xdl/mcs/winbind_smb.conf.tmplテンプレートを更新します。

    SSSDユーザーの場合は、/etc/xdl/mcs/sssd.conf.tmpl/etc/xdl/mcs/sssd_krb5.conf.tmpl、および/etc/xdl/mcs/sssd_smb.conf.tmplテンプレートを更新します。

    Centrifyユーザーの場合は、/etc/xdl/mcs/centrify_krb5.conf.tmplおよび/etc/xdl/mcs/centrify_smb.conf.tmplテンプレートを更新します。

    注:

    テンプレートファイルで使用されている既存の形式を維持し、$WORKGROUP、$REALM、$realm、${new_hostname}、および$AD_FQDNなどの変数を使用します。

  3. Citrix Hypervisorで、テンプレートVMをシャットダウンします。マスターイメージのスナップショットを作成し、名前を付けます。

手順2: マシンカタログの作成

Citrix Studioで、マシンカタログを作成し、カタログで作成するVMの数を指定します。必要に応じて、その他の構成タスクを実行します。詳しくは、「Studioを使用したマシンカタログの作成」を参照してください。

手順3: デリバリーグループの作成

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

MCSを使用したAzureでのLinux VMの作成

手順1: Citrix StudioでのAzureへのホスティング接続の作成

  1. Citrix Cloud™のCitrix Studioで、[構成]>[ホスティング]>[接続とリソースの追加]を選択して、Azureへの接続を作成します。

    • Azureへの接続の作成

      1. 接続の種類としてMicrosoft Azureを選択します。
    • Azure接続タイプの選択

      1. AzureアカウントのサブスクリプションIDと接続名を入力します。
    • AzureサブスクリプションIDの入力

    ホスティングペインに新しい接続が表示されます。

    新しいAzure接続

手順2: テンプレートVMでのマスターイメージの準備

マスターイメージには、オペレーティングシステム、非仮想化アプリケーション、VDA、およびその他のソフトウェアが含まれています。マスターイメージを準備するには、以下を実行します。

手順2a: Ubuntu 18.04のcloud-initの構成

VMが再起動または停止されたときにVDAホスト名が保持されるようにするには、次のコマンドを実行します。

 echo "preserve_hostname: true" > /etc/cloud/cloud.cfg.d/99_hostname.cfg
<!--NeedCopy-->

/etc/cloud/cloud.cfg ファイル内の system_info セクションの下に、以下の行が存在することを確認します。

system_info:
   network:
       renderers: ['netplan', 'eni', 'sysconfig']
<!--NeedCopy-->

ステップ 2b: (Ubuntu 16.04 のみ) OpenJDK 11 のインストール

Ubuntu 16.04 で OpenJDK 11 をインストールするには、次の手順を実行します。

  1. 最新の OpenJDK 11 を https://jdk.java.net/archive/ からダウンロード
  2. ダウンロードしたパッケージを解凍するには、tar zxf openjdk-11.0.2_linux-x64_bin.tar.gz コマンドを実行
  3. (オプション) OpenJDK をターゲットディレクトリに保存するには、mv jdk-11.0.2/ <target directory> コマンドを実行
  4. Java ランタイムをセットアップするには、update-alternatives --install /usr/bin/java java <custom directory>/bin/java 2000 コマンドを実行
  5. Java のバージョンを確認するには、java -version コマンドを実行

ステップ 2c: テンプレート VM への Linux VDA パッケージのインストール

注:

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

テンプレート VM に Linux VDA パッケージをインストールする前に、.NET Core Runtime 3.1 をインストールします。詳細については、「インストール概要」を参照してください。

お使いの Linux ディストリビューションに基づいて、Linux VDA の環境をセットアップするには、次のコマンドを実行します。

RHEL/CentOS の場合:

sudo yum –y localinstall <PATH>/<Linux VDA RPM>
<!--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-->

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

ステップ 2e: ntfs-3g を提供できる EPEL リポジトリのインストール

RHEL 8/CentOS 8、RHEL 7/CentOS 7 に EPEL リポジトリをインストールすると、後で deploymcs.sh を実行したときに、EPEL リポジトリで利用可能な ntfs-3g パッケージがインストールされます。

ステップ 2f: 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-->
    
      1. ntfs-3g パッケージへのパスを入力
    -  sudo cd ntfs-3g_ntfsprogs-<package version>
    <!--NeedCopy-->
    
  4. ntfs-3g をインストール

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

ステップ 2g: ランタイム環境のセットアップ

deploymcs.sh を実行する前に、次の操作を行います。

-  `/etc/xdl/mcs/mcs.conf` の変数を変更。`mcs.conf` 構成ファイルは、MCS および Linux VDA を設定するための変数を提供します。以下にいくつかの変数を示しますが、そのうち `dns` と `AD_INTEGRATION` は設定する必要があります
**注:** 変数に複数の値を設定できる場合は、値を単一引用符で囲み、スペースで区切ります。例:LDAP_LIST='aaa.lab:389 bbb.lab:389'
-  `Use_Existing_Configurations_Of_Current_VDA`: 現在実行中の VDA の既存の構成を使用するかどうかを決定します。Y に設定すると、MCS で作成されたマシンの構成ファイルは、現在実行中の VDA の対応するファイルと同じになります。ただし、`dns` および `AD_INTEGRATION` 変数は引き続き構成する必要があります。デフォルト値は N であり、マスターイメージ上の構成テンプレートが MCS で作成されたマシンの構成ファイルを決定することを意味します。
-  `dns`: DNS IP アドレスを設定します。
-  `AD_INTEGRATION`: Winbind、SSSD、PBIS、または Centrify を設定します。MSC がサポートする Linux ディストリビューションとドメイン参加方法の対応表については、この記事の「[サポートされるディストリビューション](#supported-distributions)」を参照してください。
-  `CENTRIFY_DOWNLOAD_PATH`: Centrify パッケージをダウンロードするためのパスを設定します。この値は、`AD_INTEGRATION` 変数を Centrify に設定した場合にのみ有効になります。
    -  `CENTRIFY_SAMBA_DOWNLOAD_PATH`: Centrify Samba パッケージをダウンロードするためのパスを設定します。この値は、`AD_INTEGRATION` 変数を Centrify に設定した場合にのみ有効になります。
-  `WORKGROUP`: AD で構成した場合、ワークグループ名(大文字と小文字を区別)を設定します。
-  テンプレートマシンで、必要に応じてレジストリ値を書き込むまたは更新するためのコマンドラインを `/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--> ```

ステップ 2h: マスターイメージの作成

  1. /opt/Citrix/VDA/sbin/deploymcs.sh を実行します。
  2. (オプション) テンプレートVMで、構成テンプレートを更新して、作成されたすべてのVM上の関連する /etc/krb5.conf/etc/samba/smb.conf、および /etc/sssd/sssd.conf ファイルをカスタマイズします。

    Winbindユーザーの場合は、/etc/xdl/mcs/winbind_krb5.conf.tmpl および /etc/xdl/mcs/winbind_smb.conf.tmpl テンプレートを更新します。

    SSSDユーザーの場合は、/etc/xdl/mcs/sssd.conf.tmpl/etc/xdl/mcs/sssd_krb5.conf.tmpl、および /etc/xdl/mcs/sssd_smb.conf.tmpl テンプレートを更新します。

    Centrifyユーザーの場合は、/etc/xdl/mcs/centrify_krb5.conf.tmpl および /etc/xdl/mcs/centrify_smb.conf.tmpl テンプレートを更新します。

    注: テンプレートファイルで使用されている既存の形式を維持し、$WORKGROUP、$REALM、$realm、${new_hostname}、および$AD_FQDNなどの変数を使用してください。

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

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

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

Citrix Studioで、マシンカタログを作成し、カタログに作成するVMの数を指定します。マシンカタログを作成する際、テンプレートVMが属するリソースグループからマスターイメージを選択し、テンプレートVMのVHDを見つけます。

    -  ![テンプレートVMのVHDを見つける画像](/ja-jp/linux-virtual-delivery-agent/2110/media/find-vhd-of-template-vm2.png)

-  必要に応じて、その他の構成タスクを実行します。詳細については、「[Studioを使用したマシンカタログの作成](/ja-jp/citrix-virtual-apps-desktops/install-configure/machine-catalogs-create.html)」を参照してください。

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

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

MCSを使用したVMware vSphereでのLinux VMの作成

ステップ 1: Citrix StudioでのVMwareへのホスティング接続の作成

  1. vSphere環境にvCenter Serverをインストールします。詳細については、「VMware vSphere」を参照してください。

  2. Citrix Studioで、構成 > ホスティング > 接続とリソースの追加 を選択して、VMware vSphereへの接続を作成します。

    Azureへの接続を作成する画像

  3. 接続の種類としてVMware vSphereを選択します。

    VMware vSphereを選択する画像

  4. VMwareアカウントの接続アドレス(vCenter Server URL)、ユーザー名とパスワード、および接続名を入力します。

    VMware接続名の画像

    新しい接続がホスティングペインに表示されます。

    新しいvSphere接続の画像

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

マスターイメージには、オペレーティングシステム、非仮想化アプリケーション、VDA、およびその他のソフトウェアが含まれています。マスターイメージを準備するには、次の手順を実行します。

ステップ 2a: (Ubuntu 16.04のみ) OpenJDK 11のインストール

Ubuntu 16.04で、次の手順を実行してOpenJDK 11をインストールします。

  1. https://jdk.java.net/archive/ から最新のOpenJDK 11をダウンロードします。
  2. tar zxf openjdk-11.0.2_linux-x64_bin.tar.gz コマンドを実行して、ダウンロードしたパッケージを解凍します。
  3. (オプション) mv jdk-11.0.2/ <target directory> コマンドを実行して、OpenJDKをターゲットディレクトリに保存します。
  4. update-alternatives --install /usr/bin/java java <custom directory>/bin/java 2000 コマンドを実行して、Javaランタイムをセットアップします。
  5. java -version コマンドを実行して、Javaのバージョンを確認します。

ステップ 2b: テンプレートVMへのLinux VDAパッケージのインストール

注:

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

テンプレートVMにLinux VDAパッケージをインストールする前に、.NET Core Runtime 3.1をインストールしてください。詳細については、「インストール概要」を参照してください。

お使いのLinuxディストリビューションに基づいて、次のコマンドを実行してLinux VDAの環境をセットアップします。

RHEL/CentOSの場合:

sudo yum –y localinstall <PATH>/<Linux VDA RPM>
<!--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-->
-  #### ステップ 2c: `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-->

ステップ 2d: ntfs-3g を提供できる EPEL リポジトリのインストール

RHEL 8/CentOS 8、RHEL 7/CentOS 7 に EPEL リポジトリをインストールします。これにより、後で deploymcs.sh を実行したときに、EPEL リポジトリで利用可能な ntfs-3g パッケージがインストールされます。

ステップ 2e: 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-->
    

ステップ 2f: ランタイム環境のセットアップ

deploymcs.sh を実行する前に、以下を実行します。

-  `/etc/xdl/mcs/mcs.conf` の変数を変更します。`mcs.conf` 構成ファイルは、MCS と Linux VDA を設定するための変数を提供します。以下にいくつかの変数を示しますが、そのうち `dns` と `AD_INTEGRATION` は設定する必要があります。

**注:** 変数に複数の値を設定できる場合は、値を単一引用符で囲み、スペースで区切ります。例: LDAP_LIST='aaa.lab:389 bbb.lab:389.'

-  `Use_Existing_Configurations_Of_Current_VDA`: 現在実行中の VDA の既存の構成を使用するかどうかを決定します。Y に設定すると、MCS で作成されたマシンの構成ファイルは、現在実行中の VDA の対応するファイルと同じになります。ただし、`dns` および `AD_INTEGRATION` 変数は引き続き構成する必要があります。デフォルト値は N で、これはマスターイメージ上の構成テンプレートが MCS で作成されたマシンの構成ファイルを決定することを意味します。

-  `dns`: DNS IP アドレスを設定します。

-  `AD_INTEGRATION`: Winbind、SSSD、PBIS、または Centrify を設定します。MSC がサポートする Linux ディストリビューションとドメイン参加方法のマトリックスについては、この記事の「[サポートされるディストリビューション](#supported-distributions)」を参照してください。

-  `CENTRIFY_DOWNLOAD_PATH`: Centrify パッケージをダウンロードするためのパスを設定します。この値は、`AD_INTEGRATION` 変数を Centrify に設定した場合にのみ有効になります。

-  `CENTRIFY_SAMBA_DOWNLOAD_PATH`: Centrify Samba パッケージをダウンロードするためのパスを設定します。この値は、`AD_INTEGRATION` 変数を Centrify に設定した場合にのみ有効になります。

-  `WORKGROUP`: AD で構成した場合、ワークグループ名(大文字と小文字を区別)を設定します。

-  テンプレートマシンで、必要に応じてレジストリ値を書き込むまたは更新するためのコマンドラインを `/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--> ```

ステップ 2g: マスターイメージの作成

  1. /opt/Citrix/VDA/sbin/deploymcs.sh を実行します。
  2. (オプション) テンプレート VM で、構成テンプレートを更新して、作成されたすべての VM 上の関連する /etc/krb5.conf、/etc/samba/smb.conf、および /etc/sssd/sssd.conf ファイルをカスタマイズします。

    Winbind ユーザーの場合は、/etc/xdl/mcs/winbind_krb5.conf.tmpl および /etc/xdl/mcs/winbind_smb.conf.tmpl テンプレートを更新します。

    SSSD ユーザーの場合は、/etc/xdl/mcs/sssd.conf.tmpl/etc/xdl/mcs/sssd_krb5.conf.tmpl、および /etc/xdl/mcs/sssd_smb.conf.tmpl テンプレートを更新します。

    Centrify ユーザーの場合は、/etc/xdl/mcs/centrify_krb5.conf.tmpl および /etc/xdl/mcs/centrify_smb.conf.tmpl テンプレートを更新します。

    注: テンプレートファイルで使用されている既存の形式を維持し、$WORKGROUP、$REALM、$realm、${new_hostname}、および $AD_FQDN などの変数を使用してください。

  3. テンプレート VM へのアプリケーションのインストールが完了したら、VMware からテンプレート VM をシャットダウンします。テンプレート VM のスナップショットを作成します。

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

Citrix Studio で、マシンカタログを作成し、カタログで作成する VM の数を指定します。マシンカタログを作成するときは、スナップショットリストからマスターイメージを選択します。

マスターイメージを選択するイメージ

-  必要に応じて、他の構成タスクを実行します。詳細については、「[Studio を使用したマシンカタログの作成](/ja-jp/citrix-virtual-apps-desktops/install-configure/machine-catalogs-create.html)」を参照してください。

-  ### ステップ 4: デリバリーグループの作成

-  デリバリーグループは、1 つ以上のマシンカタログから選択されたマシンのコレクションです。デリバリーグループは、どのユーザーがそれらのマシンを使用できるか、およびそれらのユーザーが利用できるアプリケーションとデスクトップを指定します。詳細については、「[デリバリーグループの作成](/ja-jp/citrix-virtual-apps-desktops/install-configure/delivery-groups-create.html)」を参照してください。

-  ## MCS を使用した AWS 上での Linux VM の作成
  • ステップ 1: Citrix Studio での AWS へのホスティング接続の作成

  1. Citrix Cloud の Citrix Studio で、構成 > ホスティング > 接続とリソースの追加 を選択して、AWS への接続を作成します。

    AWS への接続を作成するイメージ

  2. 接続タイプとして Amazon EC2 を選択します。

    Amazon EC2の選択を示す画像

  3. AWSアカウントのAPIキーとシークレットキーを入力し、接続名を入力します

    アクセスキーペアの画像

    APIキーはアクセスキーIDであり、シークレットキーはシークレットアクセスキーです。これらはアクセスキーペアと見なされます。シークレットアクセスキーを紛失した場合は、アクセスキーを削除して別のキーを作成できます。アクセスキーを作成するには、次の手順を実行します。

    1. AWSサービスにサインインします
    2. Identity and Access Management (IAM) コンソールに移動します
    3. 左側のナビゲーションペインで、ユーザーを選択します
    4. 対象ユーザーを選択し、下にスクロールしてセキュリティ認証情報タブを選択します
    5. 下にスクロールしてアクセスキーの作成をクリックします。新しいウィンドウが表示されます
    6. .csvファイルのダウンロードをクリックし、アクセスキーを安全な場所に保存します

    ホスティングペインに新しい接続が表示されます。

    新しいAWS接続の画像

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

マスターイメージには、オペレーティングシステム、非仮想化アプリケーション、VDA、およびその他のソフトウェアが含まれています。マスターイメージを準備するには、次の手順を実行します。

ステップ2a: cloud-initの設定

  1. EC2インスタンスの再起動または停止時にVDAホスト名が保持されるようにするには、次のコマンドを実行してVDAホスト名を保持します

    
     -  echo "preserve_hostname: true" > /etc/cloud/cloud.cfg.d/99_hostname.cfg
    
     <!--NeedCopy-->
    

    Ubuntu 18.04の場合、/etc/cloud/cloud.cfgファイルのsystem_infoセクションに次の行が存在することを確認してください。

    
    system_info:
        network:
            renderers: ['netplan', 'eni', 'sysconfig']
    
    <!--NeedCopy-->
    
  2. AWS上のMCSで作成されたVMにリモートでアクセスするためにSSHを使用するには、それらのVMにキー名がアタッチされていないため、パスワード認証を有効にします。必要に応じて、次の手順を実行します

    • cloud-init設定ファイル /etc/cloud/cloud.cfg を編集します。ssh_pwauth: trueの行が存在することを確認します。set-passwordの行とその後の行が存在する場合は、削除またはコメントアウトします

       users:
       -  default
       <!--NeedCopy-->
      
    • cloud-initによって作成されたデフォルトユーザー ec2-user または ubuntu を使用する予定がある場合は、passwdコマンドを使用してユーザーパスワードを変更できます。MCSで作成されたVMにログインするために、新しいパスワードを覚えておいてください
    • /etc/ssh/sshd_configファイルを編集し、次の行が存在することを確認します

       PasswordAuthentication yes
       <!--NeedCopy-->
      

      ファイルを保存し、sudo service sshd restartコマンドを実行します。

ステップ2b: (Ubuntu 16.04のみ) OpenJDK 11のインストール

Ubuntu 16.04でOpenJDK 11をインストールするには、次の手順を実行します。

  1. 最新のOpenJDK 11をhttps://jdk.java.net/archive/からダウンロードします
  2. tar zxf openjdk-11.0.2_linux-x64_bin.tar.gzコマンドを実行して、ダウンロードしたパッケージを解凍します
  3. (オプション) mv jdk-11.0.2/ <target directory>コマンドを実行して、OpenJDKをターゲットディレクトリに保存します
  4. update-alternatives --install /usr/bin/java java <custom directory>/bin/java 2000コマンドを実行して、Javaランタイムをセットアップします
  5. java -versionコマンドを実行して、Javaのバージョンを確認します

ステップ2c: テンプレートVMへのLinux VDAパッケージのインストール

注:

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

テンプレートVMにLinux VDAパッケージをインストールする前に、.NET Core Runtime 3.1をインストールしてください。詳細については、「インストール概要」を参照してください。

お使いのLinuxディストリビューションに基づいて、次のコマンドを実行してLinux VDAの環境をセットアップします。

RHEL/CentOSの場合:

sudo yum –y localinstall <PATH>/<Linux VDA RPM>
<!--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-->
-  #### ステップ2d: `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-->

ステップ2e: ntfs-3gを提供するEPELリポジトリのインストール

RHEL 8/CentOS 8、RHEL 7/CentOS 7にEPELリポジトリをインストールして、後でdeploymcs.shを実行したときにEPELリポジトリで利用可能なntfs-3gパッケージがインストールされるようにします。

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

ステップ 2g: ランタイム環境のセットアップ

deploymcs.sh を実行する前に、以下を実行します。

  • /etc/xdl/mcs/mcs.conf の変数を変更します。mcs.conf 設定ファイルは、MCS および Linux VDA を設定するための変数を提供します。以下にいくつかの変数を示しますが、そのうち dnsAD_INTEGRATION は必ず設定する必要があります。

    注: 変数に複数の値を設定できる場合は、値を単一引用符で囲み、スペースで区切ります。例: LDAP_LIST=’aaa.lab:389 bbb.lab:389’。

    • Use_Existing_Configurations_Of_Current_VDA: 現在実行中の VDA の既存の構成を使用するかどうかを決定します。Y に設定すると、MCS で作成されたマシンの構成ファイルは、現在実行中の VDA の同等のファイルと同じになります。ただし、dns および AD_INTEGRATION 変数は引き続き構成する必要があります。デフォルト値は N で、これはマスターイメージ上の構成テンプレートが MCS で作成されたマシンの構成ファイルを決定することを意味します。

    • dns: DNS IP アドレスを設定します。

    • AD_INTEGRATION: Winbind、SSSD、PBIS、または Centrify を設定します。MSC がサポートする Linux ディストリビューションとドメイン参加方法の対応表については、この記事の「サポートされるディストリビューション」を参照してください。

    • CENTRIFY_DOWNLOAD_PATH: Centrify パッケージをダウンロードするためのパスを設定します。この値は、AD_INTEGRATION 変数を Centrify に設定した場合にのみ有効になります。

    • CENTRIFY_SAMBA_DOWNLOAD_PATH: Centrify Samba パッケージをダウンロードするためのパスを設定します。この値は、AD_INTEGRATION 変数を Centrify に設定した場合にのみ有効になります。

    • WORKGROUP: AD で構成した場合、ワークグループ名(大文字と小文字を区別)を設定します。

  • テンプレートマシンで、必要に応じてレジストリ値を書き込むまたは更新するために、/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-->
    

ステップ 2h: マスターイメージの作成

  1. /opt/Citrix/VDA/sbin/deploymcs.sh を実行します。
  2. (オプション)テンプレート VM で、構成テンプレートを更新して、作成されたすべての VM 上の関連する /etc/krb5.conf/etc/samba/smb.conf、および /etc/sssd/sssd.conf ファイルをカスタマイズします。

    Winbind ユーザーの場合は、/etc/xdl/mcs/winbind_krb5.conf.tmpl および /etc/xdl/mcs/winbind_smb.conf.tmpl テンプレートを更新します。

    SSSD ユーザーの場合は、/etc/xdl/mcs/sssd.conf.tmpl/etc/xdl/mcs/sssd_krb5.conf.tmpl、および /etc/xdl/mcs/sssd_smb.conf.tmpl テンプレートを更新します。

    Centrify ユーザーの場合は、/etc/xdl/mcs/centrify_krb5.conf.tmpl および /etc/xdl/mcs/centrify_smb.conf.tmpl テンプレートを更新します。

    注: テンプレートファイルで使用されている既存の形式を維持し、$WORKGROUP、$REALM、$realm、${new_hostname}、および $AD_FQDN などの変数を使用してください。

  3. テンプレート VM にアプリケーションをインストールし、AWS EC2 ポータルからテンプレート VM をシャットダウンします。テンプレート VM のインスタンス状態が Stopped であることを確認します。

  4. テンプレート VM を右クリックし、Image > Create Image を選択します。必要に応じて情報を入力し、設定を行います。Create Image をクリックします。

    EBS イメージ作成の画像

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

Citrix Studio で、マシンカタログを作成し、カタログに作成する VM の数を指定します。マシンカタログを作成する際は、マシンテンプレート(以前に作成したマスターイメージ)を選択し、1 つ以上のセキュリティグループを選択します。

マシンカタログ作成の画像

セキュリティグループ選択の画像

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

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

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

MCS を使用した GCP での Linux VM の作成

ステップ 1: GCP 環境のセットアップ

詳細については、「Google Cloud Platform 仮想化環境」を参照してください。

ステップ 2: Citrix Studio で GCP へのホスティング接続を作成

  1. Citrix Cloud の Citrix Studio で、Configuration > Hosting > Add Connection and Resources を選択して GCP への接続を作成します。

    GCP への接続作成の画像

  2. 接続タイプとして Google Cloud Platform を選択します。

    Amazon EC2 選択の画像

  3. GCP アカウントのサービスアカウントキーをインポートし、接続名を入力します。

    アクセスキーペアの画像

新しい接続がホスティングペインに表示されます。

![新しいGCP接続の画像](/ja-jp/linux-virtual-delivery-agent/2110/media/new-gcp-connection.png)

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

マスターイメージには、オペレーティングシステム、非仮想化アプリケーション、VDA、およびその他のソフトウェアが含まれます。マスターイメージを準備するには、次の手順を実行します。

ステップ 3a: (Ubuntu 16.04のみ) OpenJDK 11のインストール

Ubuntu 16.04でOpenJDK 11をインストールするには、次の手順を実行します。

  1. 最新のOpenJDK 11をhttps://jdk.java.net/archive/からダウンロードします。
  2. tar zxf openjdk-11.0.2_linux-x64_bin.tar.gzコマンドを実行して、ダウンロードしたパッケージを解凍します。
  3. (オプション) mv jdk-11.0.2/ <target directory>コマンドを実行して、OpenJDKをターゲットディレクトリに保存します。
  4. update-alternatives --install /usr/bin/java java <custom directory>/bin/java 2000コマンドを実行して、Javaランタイムを設定します。
  5. java -versionコマンドを実行して、Javaのバージョンを確認します。

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

注:

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

テンプレートVMにLinux VDAパッケージをインストールする前に、.NET Core Runtime 3.1をインストールしてください。詳細については、「インストール概要」を参照してください。

お使いのLinuxディストリビューションに基づいて、Linux VDAの環境を設定するために次のコマンドを実行します。

RHEL/CentOSの場合:

sudo yum –y localinstall <PATH>/<Linux VDA RPM>
<!--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: 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: ntfs-3gを提供するEPELリポジトリのインストール

RHEL 8/CentOS 8、RHEL 7/CentOS 7にEPELリポジトリをインストールして、後でdeploymcs.shを実行したときにEPELリポジトリで利用可能なntfs-3gパッケージがインストールされるようにします。

ステップ 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: ランタイム環境の設定

deploymcs.shを実行する前に、次の手順を実行します。

  • /etc/xdl/mcs/mcs.conf内の変数を変更します。mcs.conf構成ファイルは、MCSおよびLinux VDAを設定するための変数を提供します。以下にいくつかの変数を示しますが、そのうちdnsAD_INTEGRATIONは設定する必要があります。

    注: 変数を複数の値で設定できる場合は、値を単一引用符で囲み、スペースで区切ります。例: LDAP_LIST=’aaa.lab:389 bbb.lab:389’

    • Use_Existing_Configurations_Of_Current_VDA: 現在実行中のVDAの既存の構成を使用するかどうかを決定します。Yに設定すると、MCSで作成されたマシンの構成ファイルは、現在実行中のVDAの対応するファイルと同じになります。ただし、dnsおよびAD_INTEGRATION変数は引き続き構成する必要があります。デフォルト値はNであり、これはマスターイメージ上の構成テンプレートがMCSで作成されたマシンの構成ファイルを決定することを意味します。

    • dns: DNS IPアドレスを設定します。

    • AD_INTEGRATION: Winbind、SSSD、PBIS、またはCentrifyを設定します。MSCがサポートするLinuxディストリビューションとドメイン参加方法の対応表については、この記事の「サポートされるディストリビューション」を参照してください。

    • CENTRIFY_DOWNLOAD_PATH: Centrifyパッケージをダウンロードするためのパスを設定します。この値は、AD_INTEGRATION変数をCentrifyに設定した場合にのみ有効になります。

    • CENTRIFY_SAMBA_DOWNLOAD_PATH: Centrify Sambaパッケージをダウンロードするためのパスを設定します。この値は、AD_INTEGRATION変数をCentrifyに設定した場合にのみ有効になります。

    • WORKGROUP: ADで構成した場合、ワークグループ名(大文字と小文字を区別)を設定します。

  • テンプレートマシンで、必要に応じてレジストリ値を書き込むまたは更新するために、/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-->
    

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

  1. /opt/Citrix/VDA/sbin/deploymcs.sh を実行します。
  2. (オプション) テンプレートVMで、構成テンプレートを更新し、作成されたすべてのVM上の関連する/etc/krb5.conf/etc/samba/smb.conf、および/etc/sssd/sssd.confファイルをカスタマイズします。

    Winbindユーザーの場合は、/etc/xdl/mcs/winbind_krb5.conf.tmplおよび/etc/xdl/mcs/winbind_smb.conf.tmplテンプレートを更新します。

    SSSDユーザーの場合は、/etc/xdl/mcs/sssd.conf.tmpl/etc/xdl/mcs/sssd_krb5.conf.tmpl、および/etc/xdl/mcs/sssd_smb.conf.tmplテンプレートを更新します。

    Centrifyユーザーの場合は、/etc/xdl/mcs/centrify_krb5.conf.tmplおよび/etc/xdl/mcs/centrify_smb.conf.tmplテンプレートを更新します。

    注:

    テンプレートファイルで使用されている既存の形式を維持し、$WORKGROUP、$REALM、$realm、${new_hostname}、および$AD_FQDNなどの変数を使用してください。

  3. テンプレートVMへのアプリケーションのインストールが完了したら、VMwareからテンプレートVMをシャットダウンします。テンプレートVMのスナップショットを作成します。

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

Citrix Studioでマシンカタログを作成し、カタログに作成するVMの数を指定します。マシンカタログを作成するときは、スナップショットリストからマスターイメージを選択します。

マスターイメージの選択画像

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

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

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

MCSを使用したNutanix AHVでのLinux VMの作成

ステップ 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 Virtual Apps and Desktopsをインストールした後、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: Citrix StudioでのNutanixへのホスティング接続の作成

  1. オンプレミスDelivery Controllerの場合は、オンプレミスのCitrix Studioで[構成]>[ホスティング]>[接続とリソースの追加]を選択します。クラウドDelivery Controllerの場合は、Citrix CloudのWebベースのStudioコンソールで[管理]>[ホスティング]>[接続とリソースの追加]を選択して、Nutanixハイパーバイザーへの接続を作成します。
  2. [接続とリソースの追加]ウィザードで、[接続]ページで接続の種類としてNutanix AHVを選択し、ハイパーバイザーのアドレス、資格情報、および接続名を指定します。[ネットワーク]ページで、ホスティングユニットのネットワークを選択します。

    たとえば、オンプレミスのCitrix Studioの場合:

    オンプレミスのCitrix StudioでNutanixへのホスティング接続を作成する

    たとえば、Citrix CloudのWebベースのStudioコンソールの場合:

    Citrix CloudのWebベースのStudioコンソールでNutanixへのホスティング接続を作成する

  3. [ネットワーク]ページで、ホスティングユニットのネットワークを選択します。

ステップ 3: テンプレートVMでのマスターイメージの準備

マスターイメージには、オペレーティングシステム、非仮想化アプリケーション、VDA、およびその他のソフトウェアが含まれています。マスターイメージを準備するには、次の手順を完了します。

ステップ 3a: テンプレートVMへのLinux VDAパッケージのインストール

注:

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

テンプレートVMにLinux VDAパッケージをインストールする前に、.NET Core Runtime 3.1をインストールしてください。詳細については、「インストール概要」を参照してください。

Linuxディストリビューションに基づいて、次のコマンドを実行してLinux VDAの環境をセットアップします。

RHEL/CentOSの場合:

sudo yum –y localinstall <PATH>/<Linux VDA RPM>
<!--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-->

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

ステップ 3c: ntfs-3g を提供できる EPEL リポジトリのインストール

RHEL 8/CentOS 8、RHEL 7/CentOS 7 に EPEL リポジトリをインストールすると、後で deploymcs.sh を実行したときに EPEL リポジトリで利用可能な ntfs-3g パッケージがインストールされます。

ステップ 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: ランタイム環境のセットアップ

deploymcs.sh を実行する前に、以下を実行します。

  • /etc/xdl/mcs/mcs.conf の変数を変更します。mcs.conf 構成ファイルは、MCS および Linux VDA を設定するための変数を提供します。以下にいくつかの変数を示しますが、そのうち dnsAD_INTEGRATION は設定する必要があります。

    注: 変数に複数の値を設定できる場合は、値を単一引用符で囲み、スペースで区切ります。例: LDAP_LIST=’aaa.lab:389 bbb.lab:389.’

    • Use_Existing_Configurations_Of_Current_VDA: 現在実行中の VDA の既存の構成を使用するかどうかを決定します。Y に設定すると、MCS で作成されたマシンの構成ファイルは、現在実行中の VDA の対応するものと同じになります。ただし、dns および AD_INTEGRATION 変数は引き続き構成する必要があります。デフォルト値は N です。これは、マスターイメージの構成テンプレートが MCS で作成されたマシンの構成ファイルを決定することを意味します。

    • dns: DNS IP アドレスを設定します。

    • AD_INTEGRATION: Winbind、SSSD、PBIS、または Centrify を設定します。MSC がサポートする Linux ディストリビューションとドメイン参加方法の対応表については、この記事の「サポートされるディストリビューション」を参照してください。

    • CENTRIFY_DOWNLOAD_PATH: Centrify パッケージをダウンロードするためのパスを設定します。この値は、AD_INTEGRATION 変数を Centrify に設定した場合にのみ有効になります。

    • CENTRIFY_SAMBA_DOWNLOAD_PATH: Centrify Samba パッケージをダウンロードするためのパスを設定します。この値は、AD_INTEGRATION 変数を Centrify に設定した場合にのみ有効になります。

    • WORKGROUP: AD で構成した場合、ワークグループ名(大文字と小文字を区別)を設定します。

  • テンプレートマシンで、必要に応じてレジストリ値を書き込むまたは更新するためのコマンドラインを /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-->
    

ステップ 3f: Nutanix AHV でのテンプレート VM のシャットダウンとマスターイメージのスナップショットの作成および命名

注:

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

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

Citrix Studio で、マシンカタログを作成し、カタログで作成する VM の数を指定します。Nutanix 固有のコンテナページで、以前にテンプレート VM に指定したコンテナを選択します。マスターイメージページで、イメージスナップショットを選択します。仮想マシンページで、仮想 CPU の数と vCPU あたりのコア数を確認します。

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

注:

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

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

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

MCS を使用した Linux VDA の更新

MCS を使用して Linux VDA を更新するには、以下を実行します。

  1. Linux VDA を現在のリリースに更新する前に、.NET Core Runtime 3.1 をインストールしていることを確認してください。

  2. テンプレートマシンで Linux VDA を更新します。

    注:

    自動ソフトウェア更新をスケジュールするには、Linux VDA セルフアップデート機能を使用することもできます。この目標を達成するには、テンプレートマシンの etc/xdl/mcs/mcs_local_setting.reg ファイルにコマンドラインを追加します。 たとえば、次のコマンドラインを追加できます。

    create -k "HKLM\System\CurrentControlSet\Control\Citrix\SelfUpdate" -t "REG_DWORD" -v "fEnabled" -d "0x00000001" –force
    
    create -k "HKLM\System\CurrentControlSet\Control\Citrix\SelfUpdate" -t "REG_SZ" -v "ScheduledTime" -d "Immediately" –force
    
    create -k "HKLM\System\CurrentControlSet\Control\Citrix\SelfUpdate" -t "REG_SZ" -v "Url" -d "`<Your-Azure-Container-Url>`" –force
    
    create -k "HKLM\System\CurrentControlSet\Control\Citrix\SelfUpdate" -t "REG_SZ" -v "CaCertificate" -d "`<Local-Certificate-Path-of-PortalAzureCom>`" --force
    <!--NeedCopy-->
    

    RHEL 7 および CentOS 7 の場合:

    sudo rpm -U XenDesktopVDA-<version>.el7_x.x86_64.rpm
    <!--NeedCopy-->
    

    RHEL 8およびCentOS 8の場合:

    sudo rpm -U XenDesktopVDA-<version>.el8_x.x86_64.rpm
    <!--NeedCopy-->
    

    SUSEの場合:

    sudo rpm -U XenDesktopVDA-<version>.sle12_x.x86_64.rpm
    <!--NeedCopy-->
    

    Ubuntu 16.04の場合:

    sudo dpkg -i xendesktopvda_<version>.ubuntu16.04_amd64.deb
    <!--NeedCopy-->
    

    Ubuntu 18.04の場合:

    sudo dpkg -i xendesktopvda_<version>.ubuntu18.04_amd64.deb
    <!--NeedCopy-->
    

    Ubuntu 20.04の場合:

    sudo dpkg -i xendesktopvda_<version>.ubuntu20.04_amd64.deb
    <!--NeedCopy-->
    
  3. /etc/xdl/mcs/mcs.confおよび/etc/xdl/mcs/mcs_local_setting.regを編集します。

  4. 新しいスナップショットを作成します。

  5. Citrix Studioで、新しいスナップショットを選択してマシンカタログを更新します。各マシンが再起動するまで待機します。マシンを手動で再起動しないでください。

マシンアカウントパスワードの自動更新

マシンアカウントのパスワードは、デフォルトではマシンカタログ作成後30日で期限切れになります。パスワードの期限切れを防ぎ、マシンアカウントのパスワード更新を自動化するには、次の手順を実行します。

  1. /opt/Citrix/VDA/sbin/deploymcs.shを実行する前に、/etc/xdl/mcs/mcs.confに次のエントリを追加します。

    UPDATE_MACHINE_PW="enabled"

  2. /opt/Citrix/VDA/sbin/deploymcs.shを実行した後、/etc/cron.d/mcs_update_password_cronjobを開いて更新時間と頻度を設定します。デフォルト設定では、毎週日曜日の午前2時30分にマシンアカウントのパスワードが更新されます。

マシンアカウントのパスワードが更新されるたびに、Delivery Controller上のチケットキャッシュが無効になり、/var/log/xdl/jproxy.logに次のエラーが表示されることがあります。

[ERROR] - AgentKerberosServiceAction.Run: GSSException occurred. Error: Failure unspecified at GSS-API level (Mechanism level: Checksum failed)

エラーを解消するには、チケットキャッシュを定期的にクリアします。すべてのDelivery Controllerまたはドメインコントローラーでキャッシュクリーンアップタスクをスケジュールできます。

MCSで作成されたVMでのFASの有効化

次のディストリビューションで実行されているMCSで作成されたVMでFASを有効にできます。

  Winbind SSSD Centrify PBIS
RHEL 8, CentOS 8 はい いいえ いいえ はい
RHEL 7, CentOS 7 はい はい いいえ はい
Ubuntu 20.04 はい いいえ いいえ いいえ
Ubuntu 18.04 はい いいえ いいえ いいえ
Ubuntu 16.04 はい いいえ いいえ いいえ
Debian 10.9 はい いいえ いいえ いいえ
SUSE 15.3 はい いいえ いいえ いいえ
SUSE 15.2 はい いいえ いいえ いいえ
SUSE 12.5 はい いいえ いいえ いいえ

テンプレートVMでマスターイメージを準備する際のFASの有効化

  1. ルートCA証明書をインポートします。

    sudo cp root.pem /etc/pki/CA/certs/
    <!--NeedCopy-->
    
  2. ctxfascfg.shを実行します。詳しくは、「ctxfascfg.shの実行」を参照してください。

  3. /etc/xdl/mcs/mcs.confで変数を設定します。

    注:

    これらの変数はVMの起動時に呼び出されるため、/etc/xdl/mcs/mcs.confですべての必要な変数を設定する必要があります。

    1. Use_Existing_Configurations_Of_Current_VDAの値をYに設定します。
    2. FAS_LIST変数をFASサーバーアドレス、またはセミコロンで区切られ二重引用符で囲まれた複数のFASサーバーアドレスに設定します。例:FAS_LIST="<FAS_SERVER_FQDN>;<FAS_SERVER_FQDN>"
    3. VDI_MODEなど、必要に応じて他の変数を設定します。
  4. スクリプト/opt/Citrix/VDA/sbin/deploymcs.shを実行します。

MCSで作成されたVMでのFASの有効化

前述のようにテンプレートマシンでFASが有効になっていない場合、各MCSで作成されたVMでFASを有効にできます。

MCSで作成されたVMでFASを有効にするには、次の手順を実行します。

  1. /etc/xdl/mcs/mcs.confで変数を設定します。

    注:

    これらの変数はVMの起動時に呼び出されるため、/etc/xdl/mcs/mcs.confですべての必要な変数を設定する必要があります。

    1. Use_Existing_Configurations_Of_Current_VDAの値をYに設定します。
    2. FAS_LIST変数をFASサーバーアドレスに設定します。
    3. VDI_MODEなど、必要に応じて他の変数を設定します。
  2. ルートCA証明書をインポートします。

    sudo cp root.pem /etc/pki/CA/certs/
    <!--NeedCopy-->
    
  3. スクリプト/opt/Citrix/VDA/sbin/ctxfascfg.shを実行します。詳しくは、「ctxfascfg.shの実行」を参照してください。