Linux Virtual Delivery Agent 2109

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

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 Yes No Yes Yes
CentOS 8 (2105) Yes No Yes Yes
RHEL 8.3 Yes No Yes Yes
CentOS 8.3 Yes No Yes Yes
RHEL 8.2 Yes No Yes Yes
CentOS 8.2 Yes No Yes Yes
RHEL 8.1 Yes No Yes Yes
CentOS 8.1 Yes No Yes Yes
RHEL 7.9 Yes Yes Yes Yes
CentOS 7.9 Yes Yes Yes Yes
RHEL 7.8 Yes Yes Yes Yes
CentOS 7.8 Yes Yes Yes Yes
Ubuntu 20.04 Yes Yes No Yes
Ubuntu 18.04 Yes Yes No Yes
Ubuntu 16.04 Yes Yes No Yes
Debian 10.9 Yes Yes No Yes
SUSE 12.5 Yes Yes No Yes

注記:

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

  • テンプレートマシンで、/etc/xdl/mcs/mcs.confファイルでPBISまたはCentrifyパッケージのダウンロードパスを構成するか、PBISまたはCentrifyパッケージを直接インストールします。
  • /opt/Citrix/VDA/sbin/deploymcs.shを実行する前に、そのすべての下位のMCSで作成されたマシンに対して書き込み権限とパスワードリセット権限を持つ組織単位(OU)を作成します。
  • /opt/Citrix/VDA/sbin/deploymcs.shの実行が完了した後、MCSで作成されたマシンを再起動する前に、展開に応じて、デリバリーコントローラーまたは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 12の場合:

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

    仮想化状態が最適化済み

ステップ1b:(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コマンドを実行します。

ステップ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 12の場合:

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 12でのntfs-3gの手動インストール

SUSE 12プラットフォームでは、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 への接続の作成](/ja-jp/linux-virtual-delivery-agent/2109/media/create-connection-to-azure.png)
  1. 接続の種類として Microsoft Azure を選択します。

    Azure 接続タイプの選択

  2. 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. (オプション) 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 12 の場合:

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

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

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

ステップ 2e: SUSE 12 への ntfs-3g の手動インストール

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

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

    sudo zypper install gcc
    sudo zypper install make
    <!--NeedCopy-->
    
    1. ntfs-3g パッケージをダウンロードします。
      1. ntfs-3g パッケージを解凍します。
     -  sudo tar -xvzf ntfs-3g_ntfsprogs-<package version>.tgz
     <!--NeedCopy-->
    
      1. ntfs-3g パッケージへのパスを入力します。
     sudo cd ntfs-3g_ntfsprogs-<package version>
     <!--NeedCopy-->
    
  1. 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 にアプリケーションをインストールし、Azure ポータルからテンプレート VM をシャットダウンします。テンプレート VM の電源状態が 停止済み(割り当て解除済み) であることを確認します。ここでリソースグループの名前を覚えておいてください。Azure でマスターイメージを見つけるには、この名前が必要です。

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

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

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

テンプレートVMのVHDを見つけるイメージ

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

ステップ 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. 最新の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のバージョンを確認します。

ステップ 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 12の場合:

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

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

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

ステップ 2d: SUSE 12へのntfs-3gの手動インストール

SUSE 12プラットフォームでは、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-->
    

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

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

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

  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などの変数を使用してください。

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

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

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

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

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

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

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

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) コンソールに移動します。
    1. 左側のナビゲーションペインで、ユーザーを選択します。
        1. ターゲットユーザーを選択し、スクロールダウンしてセキュリティ認証情報タブを選択します。
        1. スクロールダウンしてアクセスキーの作成をクリックします。新しいウィンドウが表示されます。
    2. .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. 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 のバージョンを確認します。

ステップ 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 12 の場合:

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

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

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

ステップ 2e: SUSE 12 への ntfs-3g の手動インストール

SUSE 12 プラットフォームでは、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 を設定するための変数を提供します。以下にいくつかの変数を示しますが、そのうち 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 を設定します。MCS がサポートする 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-->
    

ステップ 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 にアプリケーションをインストールし、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で、構成 > ホスティング > 接続およびリソースの追加 を選択して、GCPへの接続を作成します。

    GCPへの接続作成の画像

  2. 接続の種類として Google Cloud Platform を選択します。

    Amazon EC2選択の画像

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

    アクセスキーペアの画像

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

    新しいGCP接続の画像

ステップ 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 12の場合:

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

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

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

ステップ 3d: SUSE 12へのntfs-3gの手動インストール

SUSE 12プラットフォームでは、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:マスターイメージの作成

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

    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 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 Virtual Apps and Desktops のインストール後、Citrix Cloud Connector 用の CWA MCS AHV Plugin を選択してインストールします。AHV を持たないリソースの場所をサービスする場合でも、Citrix Cloud テナントに登録されているすべての 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 12の場合:

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

手順 3b: ntfs-3gを提供するEPELリポジトリのインストール

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

手順 3c: SUSE 12でのntfs-3gの手動インストール

SUSE 12プラットフォームでは、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-->
    

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

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を設定します。MCSがサポートする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-->
    

手順 3e: 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 “" –force

    create -k “HKLM\System\CurrentControlSet\Control\Citrix\SelfUpdate” -t “REG_SZ” -v “CaCertificate” -d “" --force

    
    **RHEL 7およびCentOS 7の場合:**
    
    

    sudo rpm -U XenDesktopVDA-.el7_x.x86_64.rpm

    
    **RHEL 8およびCentOS 8の場合:**
    
    

    sudo rpm -U XenDesktopVDA-.el8_x.x86_64.rpm

    
    **SUSE 12の場合:**
    
    

    sudo rpm -U XenDesktopVDA-.sle12_x.x86_64.rpm

    
    **Ubuntu 16.04の場合:**
    
    

    sudo dpkg -i xendesktopvda_.ubuntu16.04_amd64.deb

    
    **Ubuntu 18.04の場合:**
    
    

    sudo dpkg -i xendesktopvda_.ubuntu18.04_amd64.deb

    
    **Ubuntu 20.04の場合:**
    
    

    sudo dpkg -i xendesktopvda_.ubuntu20.04_amd64.deb ```

  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
RHEL 8, CentOS 8 はい いいえ いいえ
RHEL 7, CentOS 7 はい はい いいえ
Ubuntu 20.04 はい いいえ いいえ
Ubuntu 18.04 はい いいえ いいえ
Ubuntu 16.04 はい いいえ いいえ
Debian 10.9 はい いいえ いいえ
SUSE 12.5 はい いいえ いいえ

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

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

    sudo cp root.pem /etc/pki/CA/certs/
    <!--NeedCopy-->
    
  2. ctxfascfg.sh を実行します。

  3. /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 で変数を設定します。

    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 を実行します。

注:

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