Linux Virtual Delivery Agent 2109

Machine Creation Services(MCS)を使用したLinux仮想マシンの作成

MCSを使用してLinux仮想マシンを作成するには、ハイパーバイザー上でマスターイメージを準備します。このプロセスでは、テンプレート仮想マシンに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 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仮想マシンの作成

手順1:マスターイメージの準備

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

手順1a:Citrix VM Toolsのインストール

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

  • 仮想マシンを正しくシャットダウン、再起動、または一時停止する。
  • XenCenterでその仮想マシンのパフォーマンスデータを表示する。
  • 実行中の仮想マシンを移行する(XenMotionを使用)。
  • スナップショットまたはメモリを含んだスナップショット(チェックポイント)を作成したり、スナップショットを復元したりする。
  • 実行中のLinux仮想マシン上の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の [全般] タブで、テンプレート仮想マシンの仮想化状態を確認します。Citrix VM Toolsが正しくインストールされている場合、仮想化の状態は [最適化済み] となります:

    [最適化済み]仮想化の状態

手順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. (オプション)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のバージョンを確認します。

手順1c:テンプレート仮想マシンにLinux VDAパッケージをインストールする

注:

現在実行中のVDAをテンプレート仮想マシンとして使用するには、この手順を省略します。

テンプレート仮想マシンにLinux VDAパッケージをインストールする前に、.NET Coreランタイム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リポジトリをインストールする

EPELリポジトリをRHEL 8/CentOS 8、RHEL 7/CentOS 7にインストールします。こうしておくと、後で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を設定します。LinuxディストリビューションのマトリックスとMSCがサポートするドメイン参加方法については、この記事の「サポートされているディストリビューション」 を参照してください。

    • 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. (オプション)テンプレート仮想マシン上で構成テンプレートを更新して、作成されたすべての仮想マシン上の/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で、テンプレート仮想マシンをシャットダウンします。マスターイメージのスナップショットを作成して名前を付けます。

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

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

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

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

AzureでのMCSを使用したLinux仮想マシンの作成

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

  1. Citrix CloudのCitrix Studioで、[構成]>[ホスト]>[接続およびリソースの追加] の順に選択して、Azureへの接続を作成します。

    Azureへの接続の作成

  2. 接続の種類として[Microsoft Azure]を選択します。

    Azure接続の種類の選択

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

    AzureサブスクリプションIDの入力

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

    新しいAzure接続

手順2:テンプレート仮想マシンでマスターイメージを準備

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

手順2a:Ubuntu 18.04用にcloud-initを構成する

仮想マシンの再起動または停止時に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. 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:テンプレート仮想マシンにLinux VDAパッケージをインストールする

注:

現在実行中のVDAをテンプレート仮想マシンとして使用するには、この手順を省略します。

テンプレート仮想マシンにLinux VDAパッケージをインストールする前に、.NET Coreランタイム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リポジトリをインストールする

EPELリポジトリをRHEL 8/CentOS 8、RHEL 7/CentOS 7にインストールします。こうしておくと、後で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を設定します。LinuxディストリビューションのマトリックスとMSCがサポートするドメイン参加方法については、この記事の「サポートされているディストリビューション」 を参照してください。

    • 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. (オプション)テンプレート仮想マシン上で構成テンプレートを更新して、作成されたすべての仮想マシン上の/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. テンプレート仮想マシンにアプリケーションをインストールし、Azure Portalでテンプレート仮想マシンをシャットダウンします。テンプレート仮想マシンの電源状態が、[Stopped(deallocated)] になっていることを確認します。ここでリソースグループの名前を覚えておいてください。Azureでマスターイメージを検索する際に名前が必要です。

    テンプレート仮想マシンの電源状態が停止の画像

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

Citrix Studioで、マシンカタログを作成し、カタログに作成する仮想マシンの数を指定します。マシンカタログを作成するときは、テンプレート仮想マシンが属するリソースグループからマスターイメージを選択し、テンプレート仮想マシンのVHDを探します。

テンプレート仮想マシンのVHD表示の画像

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

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

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

VMware vSphereでのMCSを使用したLinux仮想マシンの作成

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

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

  2. Citrix Studioで、[構成]>[ホスト]>[接続およびリソースの追加]の順に選択して、VMware vSphereへの接続を作成します。

    Azureへの接続作成の画像

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

    VMware sphere選択の画像

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

    VMware接続名の画像

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

    新しいsphere接続の画像

手順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:テンプレート仮想マシンにLinux VDAパッケージをインストールする

注:

現在実行中のVDAをテンプレート仮想マシンとして使用するには、この手順を省略します。

テンプレート仮想マシンにLinux VDAパッケージをインストールする前に、.NET Coreランタイム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リポジトリをインストールする

EPELリポジトリをRHEL 8/CentOS 8、RHEL 7/CentOS 7にインストールします。こうしておくと、後で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を設定するための変数が含まれています。以下は、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を設定します。LinuxディストリビューションのマトリックスとMSCがサポートするドメイン参加方法については、この記事の「サポートされているディストリビューション」 を参照してください。

    • 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. (オプション)テンプレート仮想マシン上で構成テンプレートを更新して、作成されたすべての仮想マシン上の/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. テンプレート仮想マシンにアプリケーションをインストールしたら、VMwareでテンプレート仮想マシンをシャットダウンします。テンプレート仮想マシンのスナップショットを作成します。

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

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

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

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

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

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

AWSでのMCSを使用したLinux仮想マシンの作成

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

  1. Citrix CloudのCitrix Studioで、[構成]>[ホスト]>[接続およびリソースの追加] の順に選択して、AWSへの接続を作成します。

    AWSへの接続作成の画像

  2. 接続の種類として [Amazon EC2] を選択します。

    Amazon EC2を選択する画像

  3. AWSアカウントのAPIキーと秘密キーを入力し、接続名を入力します。

    アクセスキーペアの画像

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

    1. AWSサービスにサインインします。
    2. IDおよびアクセス管理(IAM)コンソールに移動します。
    3. 左側のナビゲーションペインで、[Users] を選択します。
    4. 対象ユーザーを選択して下にスクロールして、[Security credentials] タブを選択します。
    5. 下にスクロールして、[Create access key] をクリックします。新しいウィンドウが開きます。
    6. [Download .csv file] をクリックし、アクセスキーを安全な場所に保存します。

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

    新しい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が作成した仮想マシンにSSHを使用してリモートアクセスする場合、これらの仮想マシンにキー名がアタッチされていないため、パスワード認証を有効にします。必要に応じて次の操作を実行します。

    • cloud-init構成ファイル/etc/cloud/cloud.cfgを編集します。ssh_pwauth: true行が存在することを確認します。set-password行と次の行が存在する場合は、その行を削除するか、コメントを追加します。

       users:
       - default
       <!--NeedCopy-->
      
    • cloud-initによって作成されたデフォルトユーザーec2-userまたはubuntuを使用する場合は、passwdコマンドを使用してユーザーパスワードを変更できます。新しいパスワードを記録して、MCSが作成した仮想マシンにログインするときに使用できるようにします。
    • /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:テンプレート仮想マシンにLinux VDAパッケージをインストールする

注:

現在実行中のVDAをテンプレート仮想マシンとして使用するには、この手順を省略します。

テンプレート仮想マシンにLinux VDAパッケージをインストールする前に、.NET Coreランタイム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リポジトリをインストールする

EPELリポジトリをRHEL 8/CentOS 8、RHEL 7/CentOS 7にインストールします。こうしておくと、後で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を設定します。LinuxディストリビューションのマトリックスとMSCがサポートするドメイン参加方法については、この記事の「サポートされているディストリビューション」 を参照してください。

    • 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. (オプション)テンプレート仮想マシン上で構成テンプレートを更新して、作成されたすべての仮想マシン上の/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. テンプレート仮想マシンにアプリケーションをインストールし、AWS EC2 Portalでテンプレート仮想マシンをシャットダウンします。テンプレート仮想マシンのインスタンス状態が、[Stopped] になっていることを確認します。

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

    EBSイメージ作成の画像

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

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

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

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

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

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

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

GCPでのMCSを使用したLinux仮想マシンの作成

手順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. 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のバージョンを確認します。

手順3b:テンプレート仮想マシンにLinux VDAパッケージをインストールする

注:

現在実行中のVDAをテンプレート仮想マシンとして使用するには、この手順を省略します。

テンプレート仮想マシンにLinux VDAパッケージをインストールする前に、.NET Coreランタイム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リポジトリをインストールする

EPELリポジトリをRHEL 8/CentOS 8、RHEL 7/CentOS 7にインストールします。こうしておくと、後で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を設定します。LinuxディストリビューションのマトリックスとMSCがサポートするドメイン参加方法については、この記事の「サポートされているディストリビューション」 を参照してください。

    • 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. (オプション)テンプレート仮想マシン上で構成テンプレートを更新して、作成されたすべての仮想マシン上の/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. テンプレート仮想マシンにアプリケーションをインストールしたら、VMwareでテンプレート仮想マシンをシャットダウンします。テンプレート仮想マシンのスナップショットを作成します。

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

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

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

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

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

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

Nutanix AHVでのMCSを使用したLinux仮想マシンの作成

手順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をインストールした後、[XD MCS AHV Plugin]を選択してDelivery Controllerにインストールします。

オンプレミス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:プラグインをインストールした後、次の手順を実行する

  • Nutanix AcropolisフォルダーがC:\Program Files\Common Files\Citrix\HCLPlugins\CitrixMachineCreation\v1.0.0.0に作成されていることを確認します。
  • "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:テンプレート仮想マシンでマスターイメージを準備

マスターイメージには、オペレーティングシステム、仮想化しないアプリケーション、VDAなどのソフトウェアをインストールしておきます。マスターイメージを準備するには、次の手順を実行します:

手順3a:テンプレート仮想マシンでLinux VDAパッケージをインストールする

注:

現在実行中のVDAをテンプレート仮想マシンとして使用するには、この手順を省略します。

テンプレート仮想マシンにLinux VDAパッケージをインストールする前に、.NET Coreランタイム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リポジトリをインストールする

EPELリポジトリをRHEL 8/CentOS 8、RHEL 7/CentOS 7にインストールします。こうしておくと、後で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を設定します。LinuxディストリビューションのマトリックスとMSCがサポートするドメイン参加方法については、この記事の「サポートされているディストリビューション」 を参照してください。

    • 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でテンプレート仮想マシンをシャットダウンする。マスターイメージのスナップショットを作成して名前を付ける

注:

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

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

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

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

注:

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

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

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

MCSを使用したLinux VDAの更新

MCSを使用してLinux VDAを更新するには、次の手順を実行します:

  1. Linux VDAを現在のリリースに更新する前に、.NET Coreランタイム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 12の場合:

    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が作成した仮想マシンでFASを有効化

次のディストリビューションで実行されるMCSで作成した仮想マシンで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 はい いいえ いいえ

テンプレート仮想マシンでマスターイメージを準備するときに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変数を1つのFASサーバーアドレス、またはセミコロンで区切られ、二重引用符で囲まれた複数のFASサーバーアドレス(例:FAS_LIST="<FAS_SERVER_FQDN>;<FAS_SERVER_FQDN>")に設定します。
    3. VDI_MODEなど、必要に応じて他の変数を設定します。
  4. スクリプト/opt/Citrix/VDA/sbin/deploymcs.shを実行します。

MCSが作成した仮想マシンでFASを有効にする

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

MCSが作成した仮想マシンで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スクリプトを実行します。

注:

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