Machine Creation Services(MCS)を使用したLinux仮想マシンの作成
7.18リリース以降、MCSを使用してLinux仮想マシンを作成できます。
サポートされるハイパーバイザー
- AWS
- Citrix Hypervisor
- Microsoft Azure
- VMware vSphere
サポート対象ではないハイパーバイザーでマスターイメージを準備しようとすると、予期しない問題が発生することがあります。
Citrix HypervisorでのMCSを使用したLinux仮想マシンの作成
手順1:マスターイメージの準備
マスターイメージには、オペレーティングシステム、仮想化しないアプリケーション、VDAなどのソフトウェアをインストールしておきます。マスターイメージを準備するには、次の手順を実行します。
手順1a:Citrix VM Toolsのインストール
xe CLIまたはXenCenterを使用できるようにするには、仮想マシンごとにテンプレート仮想マシンにCitrix VM Toolsをインストールする必要があります。このツールがインストールされていないと、仮想マシンのパフォーマンスが低下する可能性があります。ツールがなければ、次のいずれも実行できません。
- 仮想マシンを正しくシャットダウン、再起動、または一時停止する。
- XenCenterでその仮想マシンのパフォーマンスデータを表示する。
- 実行中の仮想マシンを移行する(XenMotionを介して)。
- スナップショットまたはメモリを含んだスナップショット(チェックポイント)を作成したり、スナップショットを復元したりする。
- 実行中のLinux仮想マシン上のvCPUの数を調整する。
-
次のコマンドを実行して、guest-tools.isoという名前のCitrix VM Toolsをマウントします。
sudo mount /dev/cdrom /mnt <!--NeedCopy-->
-
次のコマンドを実行して、Linuxディストリビューションに基づいて
xe-guest-utilities
パッケージをインストールします。RHEL/CentOSの場合:
sudo rpm -i /mnt/Linux/xe-guest-utilities_{package-version}_all.rpm <!--NeedCopy-->
Ubuntuの場合:
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-->
-
XenCenterの [全般] タブで、テンプレート仮想マシンの仮想化状態を確認します。Citrix VM Toolsが正しくインストールされている場合、仮想化の状態は [最適化済み] となります:
手順1b:テンプレート仮想マシンにLinux VDAパッケージをインストールする
注:
現在実行中のVDAをテンプレート仮想マシンとして使用するには、この手順を省略します。
テンプレート仮想マシンにLinux VDAパッケージをインストールする前に、.NET Coreランタイム3.1をインストールします。詳しくは、「インストールの概要」を参照してください。
使用しているLinuxディストリビューションごとに、次のコマンドを実行して、Linux VDAの環境をセットアップします。
RHEL/CentOSの場合:
sudo yum –y localinstall <PATH>/<Linux VDA RPM>
<!--NeedCopy-->
Ubuntuの場合:
sudo dpkg –i <PATH>/<Linux VDA DEB>
apt-get install -f
<!--NeedCopy-->
SUSE 12の場合:
sudo zypper –i install <PATH>/<Linux VDA RPM>
<!--NeedCopy-->
手順1c:リポジトリを有効にして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-->
手順1d:ntfs-3gが含まれるEPELリポジトリをインストールする
EPELリポジトリをRHEL 6/CentOS 6、RHEL 7/CentOS 7にインストールし、後からdeploymcs.shを実行するとntfs-3gパッケージがインストールされるようにします。
手順1e:SUSE 12にntfs-3gを手動でインストールする
SUSE 12プラットフォームには、ntfs-3gを提供するリポジトリがありません。ソースコードをダウンロードし、コンパイルし、ntfs-3gを手動でインストールします:
-
GNU Compiler Collection(GCC)コンパイラシステムとmakeパッケージをインストールします:
sudo zypper install gcc sudo zypper install make <!--NeedCopy-->
-
ntfs-3gパッケージをダウンロードします。
-
ntfs-3gパッケージを展開します。
sudo tar -xvzf ntfs-3g_ntfsprogs-<package version>.tgz <!--NeedCopy-->
-
ntfs-3gパッケージへのパスを入力します:
sudo cd ntfs-3g_ntfsprogs-<package version> <!--NeedCopy-->
-
ntfs-3gをインストールします:
./configure make make install <!--NeedCopy-->
手順1f:ランタイム環境のセットアップ
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を設定します。 -
WORKGROUP
:ADで構成されている場合、そのワークグループ名を設定します。これはNetBIOS名です(大文字と小文字を区別)。それ以外の場合は、デフォルトではドメイン名です。
-
-
テンプレートマシンで、コマンドラインを/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-->
手順1g:マスターイメージを作成する
- /opt/Citrix/VDA/sbin/deploymcs.sh を実行します。
-
(オプション)テンプレート仮想マシン上で構成テンプレートを更新して、作成されたすべての仮想マシン上の/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の各テンプレートを更新します。
注: テンプレートファイルで使用されている既存の形式を保持し、$WORKGROUP、$REALM、$realm、および$AD_FQDNなどの変数を使用してください。
- Citrix Hypervisorで、テンプレート仮想マシンをシャットダウンします。マスターイメージのスナップショットを作成して名前を付けます。
手順2:マシンカタログの作成
Citrix Studioで、マシンカタログを作成し、カタログに作成する仮想マシンの数を指定します。必要に応じて他の構成タスクを実行します。詳しくは、「Studioでのマシンカタログの作成」を参照してください。
手順3:デリバリーグループの作成
デリバリーグループは、いくつかのマシンカタログから選択したマシンをグループ化したものです。それらのマシンを使用できるユーザーと、そのユーザーに提供するアプリケーションおよびデスクトップを指定します。詳しくは、「デリバリーグループの作成」を参照してください。
AzureでのMCSを使用したLinux仮想マシンの作成
手順1:Citrix StudioでのAzureへのホスティング接続の作成
-
Citrix Studioで、[構成]>[ホスト]>[接続およびリソースの追加] の順に選択して、Azureへの接続を作成します。
-
接続の種類として[Microsoft Azure]を選択します。
-
AzureアカウントのサブスクリプションIDと接続名を入力します。
新しい接続がホストペインに表示されます。
手順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:テンプレート仮想マシンにLinux VDAパッケージをインストールする
注:
現在実行中のVDAをテンプレート仮想マシンとして使用するには、この手順を省略します。
テンプレート仮想マシンにLinux VDAパッケージをインストールする前に、.NET Coreランタイム3.1をインストールします。詳しくは、「インストールの概要」を参照してください。
使用しているLinuxディストリビューションごとに、次のコマンドを実行して、Linux VDAの環境をセットアップします。
RHEL/CentOSの場合:
sudo yum –y localinstall <PATH>/<Linux VDA RPM>
<!--NeedCopy-->
Ubuntuの場合:
sudo dpkg –i <PATH>/<Linux VDA DEB>
apt-get install -f
<!--NeedCopy-->
SUSE 12の場合:
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リポジトリをインストールする
EPELリポジトリをRHEL 6/CentOS 6、RHEL 7/CentOS 7にインストールし、後からdeploymcs.shを実行するとntfs-3gパッケージがインストールされるようにします。
手順2e:SUSE 12にntfs-3gを手動でインストールする
SUSE 12プラットフォームには、ntfs-3gを提供するリポジトリがありません。ソースコードをダウンロードし、コンパイルし、ntfs-3gを手動でインストールします:
-
GNU Compiler Collection(GCC)コンパイラシステムとmakeパッケージをインストールします:
sudo zypper install gcc sudo zypper install make <!--NeedCopy-->
-
ntfs-3gパッケージをダウンロードします。
-
ntfs-3gパッケージを展開します。
sudo tar -xvzf ntfs-3g_ntfsprogs-<package version>.tgz <!--NeedCopy-->
-
ntfs-3gパッケージへのパスを入力します:
sudo cd ntfs-3g_ntfsprogs-<package version> <!--NeedCopy-->
-
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を設定します(SSSDはSUSEではサポートされていません)。 -
WORKGROUP
:ADで構成されている場合、そのワークグループ名を設定します。これはNetBIOS名です(大文字と小文字を区別)。それ以外の場合は、デフォルトではドメイン名です。
-
-
テンプレートマシンで、コマンドラインを/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:マスターイメージを作成する
- /opt/Citrix/VDA/sbin/deploymcs.sh を実行します。
-
(オプション)テンプレート仮想マシン上で構成テンプレートを更新して、作成されたすべての仮想マシン上の/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の各テンプレートを更新します。
注: テンプレートファイルで使用されている既存の形式を保持し、$WORKGROUP、$REALM、$realm、および$AD_FQDNなどの変数を使用してください。
-
テンプレート仮想マシンにアプリケーションをインストールし、Azure Portalでテンプレート仮想マシンをシャットダウンします。テンプレート仮想マシンの電源状態が、[Stopped(deallocated)] になっていることを確認します。ここでリソースグループの名前を覚えておいてください。Azureでマスターイメージを検索する際に名前が必要です。
手順3:マシンカタログの作成
Citrix Studioで、マシンカタログを作成し、カタログに作成する仮想マシンの数を指定します。マシンカタログを作成するときは、テンプレート仮想マシンが属するリソースグループからマスターイメージを選択し、テンプレート仮想マシンのVHDを探します。以下のスクリーンショットを参照してください。
必要に応じて他の構成タスクを実行します。詳しくは、「Studioでのマシンカタログの作成」を参照してください。
手順4:デリバリーグループの作成
デリバリーグループは、いくつかのマシンカタログから選択したマシンをグループ化したものです。それらのマシンを使用できるユーザーと、そのユーザーに提供するアプリケーションおよびデスクトップを指定します。詳しくは、「デリバリーグループの作成」を参照してください。
VMware vSphereでのMCSを使用したLinux仮想マシンの作成
手順1:Citrix StudioでのVMwareへのホスティング接続の作成
-
vSphere環境にvCenter Serverをインストールします。詳しくは、「VMware vSphere」を参照してください。
-
Citrix Studioで、[構成]>[ホスト]>[接続およびリソースの追加] の順に選択して、VMware vSphereへの接続を作成します。
-
接続の種類として[VMware vSphere]を選択します。
-
VMwareアカウントの接続アドレス(vCenter ServerのURL)、ユーザー名とパスワード、および接続名を入力します。
新しい接続がホストペインに表示されます。
手順2:マスターイメージの準備
マスターイメージには、オペレーティングシステム、仮想化しないアプリケーション、VDAなどのソフトウェアをインストールしておきます。マスターイメージを準備するには、次の手順を実行します。
手順2a:テンプレート仮想マシンでLinux VDAパッケージをインストールする
注:
現在実行中のVDAをテンプレート仮想マシンとして使用するには、この手順を省略します。
テンプレート仮想マシンにLinux VDAパッケージをインストールする前に、.NET Coreランタイム3.1をインストールします。詳しくは、「インストールの概要」を参照してください。
使用しているLinuxディストリビューションごとに、次のコマンドを実行して、Linux VDAの環境をセットアップします。
RHEL/CentOSの場合:
sudo yum –y localinstall <PATH>/<Linux VDA RPM>
<!--NeedCopy-->
Ubuntuの場合:
sudo dpkg –i <PATH>/<Linux VDA DEB>
apt-get install -f
<!--NeedCopy-->
SUSE 12の場合:
sudo zypper –i install <PATH>/<Linux VDA RPM>
<!--NeedCopy-->
手順2b:リポジトリを有効にして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-->
手順2c:ntfs-3gが含まれるEPELリポジトリをインストールする
EPELリポジトリをRHEL 6/CentOS 6、RHEL 7/CentOS 7にインストールし、後からdeploymcs.shを実行するとntfs-3gパッケージがインストールされるようにします。
手順2d:SUSE 12にntfs-3gを手動でインストールする
SUSE 12プラットフォームには、ntfs-3gを提供するリポジトリがありません。ソースコードをダウンロードし、コンパイルし、ntfs-3gを手動でインストールします:
-
GNU Compiler Collection(GCC)コンパイラシステムとmakeパッケージをインストールします:
sudo zypper install gcc sudo zypper install make <!--NeedCopy-->
-
ntfs-3gパッケージをダウンロードします。
-
ntfs-3gパッケージを展開します。
sudo tar -xvzf ntfs-3g_ntfsprogs-<package version>.tgz <!--NeedCopy-->
-
ntfs-3gパッケージへのパスを入力します:
sudo cd ntfs-3g_ntfsprogs-<package version> <!--NeedCopy-->
-
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を設定します(SSSDはSUSEではサポートされていません)。 -
WORKGROUP
:ADで構成されている場合、そのワークグループ名を設定します。これはNetBIOS名です(大文字と小文字を区別)。それ以外の場合は、デフォルトではドメイン名です。
-
-
テンプレートマシンで、コマンドラインを/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:マスターイメージを作成する
- /opt/Citrix/VDA/sbin/deploymcs.sh を実行します。
-
(オプション)テンプレート仮想マシン上で構成テンプレートを更新して、作成されたすべての仮想マシン上の/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の各テンプレートを更新します。
注: テンプレートファイルで使用されている既存の形式を保持し、$WORKGROUP、$REALM、$realm、および$AD_FQDNなどの変数を使用してください。
- テンプレート仮想マシンにアプリケーションをインストールしたら、VMwareでテンプレート仮想マシンをシャットダウンします。テンプレート仮想マシンのスナップショットを作成します。
手順3:マシンカタログの作成
Citrix Studioで、マシンカタログを作成し、カタログに作成する仮想マシンの数を指定します。マシンカタログを作成するときは、スナップショットリストからマスターイメージを選択します。
必要に応じて他の構成タスクを実行します。詳しくは、「Studioでのマシンカタログの作成」を参照してください。
手順4:デリバリーグループの作成
デリバリーグループは、いくつかのマシンカタログから選択したマシンをグループ化したものです。デリバリーグループでは、それらのマシンを使用できるユーザーと、そのユーザーに提供するアプリケーションおよびデスクトップを指定します。詳しくは、「デリバリーグループの作成」を参照してください。
AWSでのMCSを使用したLinux仮想マシンの作成
手順1:Citrix StudioでのAWSへのホスティング接続の作成
-
Citrix Studioで、[構成]>[ホスト]>[接続およびリソースの追加] の順に選択して、AWSへの接続を作成します。
-
接続の種類として [Amazon EC2] を選択します。
-
AWSアカウントのAPIキーと秘密キーを入力し、接続名を入力します。
APIキーはアクセスキーIDで、秘密キーはシークレットアクセスキーです。これらは、アクセスキーペアと見なされます。シークレットアクセスキーを紛失した場合は、アクセスキーを削除して新しいアクセスキーを作成できます。アクセスキーを作成するには、次の手順を実行します:
- AWSサービスにサインインします。
- IDおよびアクセス管理(IAM)コンソールに移動します。
- 左側のナビゲーションペインで、[Users] を選択します。
- 対象ユーザーを選択して下にスクロールして、[Security credentials] タブを選択します。
- 下にスクロールして、[Create access key] をクリックします。新しいウィンドウが開きます。
- [Download .csv file] をクリックし、アクセスキーを安全な場所に保存します。
新しい接続がホストペインに表示されます。
手順2:マスターイメージの準備
マスターイメージには、オペレーティングシステム、仮想化しないアプリケーション、VDAなどのソフトウェアをインストールしておきます。マスターイメージを準備するには、次の手順を実行します。
手順2a:cloud-initを構成する
-
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-->
-
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:テンプレート仮想マシンにLinux VDAパッケージをインストールする
注:
現在実行中のVDAをテンプレート仮想マシンとして使用するには、この手順を省略します。
テンプレート仮想マシンにLinux VDAパッケージをインストールする前に、.NET Coreランタイム3.1をインストールします。詳しくは、「インストールの概要」を参照してください。
使用しているLinuxディストリビューションごとに、次のコマンドを実行して、Linux VDAの環境をセットアップします。
RHEL/CentOSの場合:
sudo yum –y localinstall <PATH>/<Linux VDA RPM>
<!--NeedCopy-->
Ubuntuの場合:
sudo dpkg –i <PATH>/<Linux VDA DEB>
apt-get install -f
<!--NeedCopy-->
SUSE 12の場合:
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リポジトリをインストールする
EPELリポジトリをRHEL 6/CentOS 6、RHEL 7/CentOS 7にインストールし、後からdeploymcs.shを実行するとntfs-3gパッケージがインストールされるようにします。
手順2e:SUSE 12にntfs-3gを手動でインストールする
SUSE 12プラットフォームには、ntfs-3gを提供するリポジトリがありません。ソースコードをダウンロードし、コンパイルし、ntfs-3gを手動でインストールします:
-
GNU Compiler Collection(GCC)コンパイラシステムとmakeパッケージをインストールします:
sudo zypper install gcc sudo zypper install make <!--NeedCopy-->
-
ntfs-3gパッケージをダウンロードします。
-
ntfs-3gパッケージを展開します。
sudo tar -xvzf ntfs-3g_ntfsprogs-<package version>.tgz <!--NeedCopy-->
-
ntfs-3gパッケージへのパスを入力します:
sudo cd ntfs-3g_ntfsprogs-<package version> <!--NeedCopy-->
-
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を設定します(SSSDはSUSEではサポートされていません)。 -
WORKGROUP
:ADで構成されている場合、そのワークグループ名を設定します。これはNetBIOS名です(大文字と小文字を区別)。それ以外の場合は、デフォルトではドメイン名です。
-
-
テンプレートマシンで、コマンドラインを/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:マスターイメージを作成する
- /opt/Citrix/VDA/sbin/deploymcs.sh を実行します。
-
(オプション)テンプレート仮想マシン上で構成テンプレートを更新して、作成されたすべての仮想マシン上の/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の各テンプレートを更新します。
注: テンプレートファイルで使用されている既存の形式を保持し、$WORKGROUP、$REALM、$realm、および$AD_FQDNなどの変数を使用してください。
-
テンプレート仮想マシンにアプリケーションをインストールし、AWS EC2 Portalでテンプレート仮想マシンをシャットダウンします。テンプレート仮想マシンのインスタンス状態が、[Stopped] になっていることを確認します。
-
テンプレート仮想マシンを右クリックし、[Image]>[Create Image] を選択します。必要に応じて情報を入力し、設定を行います。[Create Image] をクリックします。
手順3:マシンカタログの作成
Citrix Studioで、マシンカタログを作成し、カタログに作成する仮想マシンの数を指定します。マシンカタログの作成時に、マシンテンプレート(上記で作成したマスターイメージ)を選択し、1つまたは複数のセキュリティグループを選択します。
必要に応じて他の構成タスクを実行します。詳しくは、「Studioでのマシンカタログの作成」を参照してください。
手順4:デリバリーグループの作成
デリバリーグループは、いくつかのマシンカタログから選択したマシンをグループ化したものです。それらのマシンを使用できるユーザーと、そのユーザーに提供するアプリケーションおよびデスクトップを指定します。詳しくは、「デリバリーグループの作成」を参照してください。
MCSを使用したLinux VDAのアップグレード
MCSを使用してLinux VDAをアップグレードするには、次の手順を実行します:
-
テンプレートマシンでLinux VDAをアップグレードします:
RHEL 7/CentOS 7の場合:
sudo rpm -U XenDesktopVDA-19.12.0.50-1.el7_x.x86_64.rpm <!--NeedCopy-->
RHEL 6/CentOS 6の場合:
sudo rpm -U XenDesktopVDA-19.12.0.50-1.el6_x.x86_64.rpm <!--NeedCopy-->
SUSE 12の場合:
sudo rpm -U XenDesktopVDA-19.12.0.50-1.sle12_x.x86_64.rpm <!--NeedCopy-->
Ubuntu 16.04の場合:
sudo dpkg -i xendesktopvda_19.12.0.50-1.ubuntu16.04_amd64.deb <!--NeedCopy-->
Ubuntu 18.04の場合:
sudo dpkg -i xendesktopvda_19.12.0.50-1.ubuntu18.04_amd64.deb <!--NeedCopy-->
-
/etc/xdl/mcs/mcs.confおよび/etc/xdl/mcs/mcs_local_setting.regを編集します。
-
新しいスナップショットを作成します。
-
Citrix Studioで新しいスナップショットを選択し、マシンカタログを更新します。各マシンが起動するまで待機します。マシンを手動で再起動しないでください。