Machine Creation Services™ (MCS) を使用した Google Cloud Platform (GCP) 上での Linux VDA の作成
MCS を使用して GCP 上に Linux VDA を作成するには、次の手順を実行します。
手順 3: Citrix Studio での構成
ステップ 1: GCP 上での Linux 仮想マシン (VM) の作成
ステップ 3: Citrix Studio での GCP へのホスト接続の作成
-
ステップ 1: GCP 上での Linux VM の作成
- ステップ 1a: Google Cloud コンソールで、Compute Engine > VM インスタンスに移動します。
ステップ 1b: VM インスタンスページで、インスタンスを作成をクリックして VM インスタンスを作成します。

ステップ 1c: 次の設定を行い、その他の設定はデフォルトのままにします。
- VM インスタンスの名前を入力します
- VM をホストするリージョンとゾーンを選択します
- (オプション) VM に GPU を追加します。詳細については、この記事の後半にあるステップ 4cを参照してください
-
ブートディスクセクションで、VM のオペレーティングシステムとディスクサイズを選択します。例:

-
詳細オプション > ネットワークに移動し、ホスト名フィールドを FQDN に設定します

ステップ 1d: 作成をクリックして VM インスタンスを作成します。
ステップ 1e: VM が作成されたら、Compute Engineダッシュボードに戻り、リストから VM インスタンスを見つけ、SSH ボタンをクリックして VM に接続します。

ステップ 1f: Web ベースの SSH クライアントを介して、Linux VDA パッケージを VM にアップロードします。

ステップ 1g: SSH を使用した VM へのアクセス失敗の防止
VM は再起動後に到達不能になる可能性があります。この問題を回避するには、VM に初めてログオンするときに root パスワードを設定し、root として VM にログオンできることを確認します。その後、VM の再起動後にコンソールで次のコマンドを実行します。
- nmcli dev connect eth0
- systemctl restart NetworkManager
<!--NeedCopy-->
ステップ 2: GCP サービスアカウントの作成
このセクションでは、サービスアカウントキーの作成と、サービスアカウントに必要なロールの付与を含む、GCP サービスアカウントの作成について説明します。
注:
GCP サービスアカウントを作成するには、Service Account Admin (roles/iam.serviceAccountAdmin) IAM ロールが付与されていることを確認してください。
ステップ 2a: Google Cloud コンソールで、IAM と管理 > サービスアカウントに移動し、サービスアカウントを作成タブをクリックします。

ステップ 2b: サービスアカウントの詳細ステップで、フィールドに値を入力し、作成して続行をクリックします。

ステップ 2c: オプションの手順をスキップし、下部にある完了をクリックします。

ステップ 2d: もう一度IAM と管理 > サービスアカウントに移動し、サービスアカウントタブをクリックします。新しく作成したサービスアカウントを見つけ、キータブに移動し、キーを追加 > 新しいキーを作成 > JSON > 作成をクリックします。


注:
キーファイルをダウンロードした後、再度ダウンロードすることはできません。
手順 2e: Google Cloud コンソールで、IAM と管理 > IAM に移動し、追加をクリックします。新しいメンバーフィールドで新しく作成したサービスアカウントを検索して選択し、サービスアカウントにリソースへのアクセス権を付与する役割を選択します。別の役割を追加をクリックして役割を付与し続け、新しく作成したサービスアカウントに以下のすべての役割を付与するようにしてください。
-
Compute 管理者
-
Storage 管理者
- Cloud Build 編集者
-
サービスアカウントユーザー
- Cloud Datastore ユーザー
-
Compute インスタンス管理者 (ベータ版)
-
オーナー
-
例:
-

-
-
Storage 管理者
手順 3: Citrix Studio で GCP へのホスト接続を作成
Google Cloud Platform 仮想化環境に従って GCP 環境をセットアップし、以下の手順を完了して GCP へのホスト接続を作成します。
-
オンプレミスの Delivery Controller の場合は、オンプレミスの Citrix Studio で 構成 > ホスティング > 接続とリソースの追加を選択してホスト接続を作成します。クラウド Delivery Controller の場合は、Citrix Cloud™ の Web ベースの Studio コンソールで 管理 > ホスティング > 接続とリソースの追加を選択してホスト接続を作成します。
-
接続とリソースの追加ウィザードで、接続の種類として Google Cloud Platform を選択します。
例: Citrix Cloud の Web ベースの Studio コンソールで:
-

-
- GCP アカウントのサービスアカウントキーをインポートし、接続名を入力します。
-
-
ウィザードの指示に従ってページを進めます。特定のページの内容は、選択した接続の種類によって異なります。各ページを完了したら、次へを選択して概要ページに進みます。詳細については、MCS を使用してドメインに参加していない Linux VDA を作成するの記事の手順 2: ホスト接続を作成するを参照してください。
手順 4: Linux VDA マスターイメージを準備
手順 4a: (RHEL 8.x/9.x および Rocky Linux 8.x/9.x の場合) イーサネット接続を構成します。
GCP でホストされている RHEL 8.x/9.x および Rocky Linux 8.x/9.x に Linux VDA をインストールした後、VM の再起動後にイーサネット接続が失われ、Linux VDA に到達できなくなる可能性があります。この問題を回避するには、VM に初めてログオンするときに root パスワードを設定し、root として VM にログオンできることを確認します。その後、VM を再起動した後、コンソールで次のコマンドを実行します。
nmcli dev connect eth0
systemctl restart NetworkManager
<!--NeedCopy-->

- **手順 4b:** テンプレート VM に Linux VDA パッケージをインストールします。
- テンプレート VM で、Linux VDA パッケージをインストールするには、次の手順を実行します。
- 1. .NET Runtime 6.0 をインストールします。
```
sudo yum install dotnet-sdk-6.0
<!--NeedCopy--> ```
-
Linux VDA パッケージをインストールします。
sudo yum –y localinstall <PATH>/<Linux VDA RPM> <!--NeedCopy--> -
EPEL リポジトリを有効にします。
sudo rpm -ivh https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm <!--NeedCopy-->
手順 4c: GCP 上のテンプレート VM にグラフィックス処理ユニット (GPU) を追加します (オプション)。
- 1. Google Cloud コンソールで、1 つ以上の GPU をテンプレート VM に追加します。GCP での GPU の追加と削除については、<https://cloud.google.com/compute/docs/gpus/add-remove-gpus> を参照してください。
- 
- 1. テンプレート VM に適切な GPU ドライバーをインストールします。詳細については、<https://cloud.google.com/compute/docs/gpus/install-drivers-gpu> を参照してください。
- **必要な NVIDIA ドライバーバージョン:**
- Compute Engine で実行されている NVIDIA GPU は、次の NVIDIA ドライバーバージョンを使用する必要があります。
- L4 GPU の場合:
- Linux : 525.60.13 以降
- A100 GPU の場合:
- Linux : 450.80.02 以降
- T4、P4、P100、および V100 GPU の場合:
- Linux : 410.79 以降
- K80 GPU の場合 ([サポート終了](https://cloud.google.com/compute/docs/eol/k80-eol)):
- Linux : 410.79 - 最新の R470 バージョン
K80 GPU については、NVIDIA は [R470 ドライバー](https://docs.nvidia.com/datacenter/tesla/index.html#r470-driver-release-notes)ブランチがデバッグサポートを受ける最後のドライバーバージョンであることを発表しました。この更新を確認するには、[NVIDIA ソフトウェアサポートマトリックス](https://docs.nvidia.com/datacenter/tesla/drivers/index.html#cuda-arch-matrix)を参照してください。
**インストールスクリプト:**
以下のスクリプトを使用して、インストールプロセスを自動化できます。
```
https://raw.githubusercontent.com/GoogleCloudPlatform/compute-gpu-installation/main/linux/install_gpu_driver.py --output install_gpu_driver.py
<!--NeedCopy--> ```
**サポートされているオペレーティングシステム:**
インストールスクリプトは、以下のLinuxディストリビューションでテストされています。
- CentOS 7/8
- Debian 10/11
- Red Hat Enterprise Linux (RHEL) 7/8
- Rocky Linux 8
- Ubuntu 18/20/22
このスクリプトを他のLinuxディストリビューションで使用すると、インストールは失敗します。Linux VMの場合、このスクリプトはNVIDIAドライバーのみをインストールします。
1. インストールスクリプトをダウンロードします。
```
curl https://raw.githubusercontent.com/GoogleCloudPlatform/compute-gpu-installation/main/linux/install_gpu_driver.py --output install_gpu_driver.py
<!--NeedCopy--> ```
- 1. スクリプトに完全なアクセス権を付与します。
```
chmod 777 install_gpu_driver.py
<!--NeedCopy--> ```
1. インストールスクリプトを実行します。
```
python3 install_gpu_driver.py
<!--NeedCopy--> ```
1. gdm3でWaylandを無効にします。
- お使いのディストリビューションのWayland構成ファイルを以下のいずれかの場所で特定します。
- /etc/gdm3/custom.conf (Ubuntu)
- /etc/gdm/custom.conf (CentOS, RHEL, Rocky Linux)
- sudo/root権限でファイルを開きます。
- 行頭の **#** を削除して、**WaylandEnable=false** のコメントを解除します。
- VMを再起動します。
1. NVIDIA 510以降のドライバーをインストールした場合は、GSPファームウェアを無効にします。
GSPファームウェアが有効になっている場合は、NVIDIAモジュールパラメーター **NVreg_EnableGpuFirmware** を0に設定して無効にします。
このパラメーターを設定するには、/etc/modprobe.d/nvidia.confファイルに以下のエントリを追加します。
- options nvidia NVreg_EnableGpuFirmware=0
- /etc/modprobe.d/nvidia.confファイルが存在しない場合は、作成します。
この手順を完了する際は、以下の点に注意してください。
- sudoを使用してコマンドを実行し、構成ファイルを作成および更新します。
- VMを再起動するには、Linuxターミナルで **sudo reboot** を使用するか、VMを停止して起動します。
手順 4d: MCS変数の構成
/etc/xdl/mcs/mcs.confファイルを編集して、MCS変数を構成します。以下は、ドメインに参加していないシナリオとドメインに参加しているシナリオで構成できるMCS変数です。
-
ドメインに参加していないシナリオの場合
デフォルトの変数を使用するか、必要に応じて変数をカスタマイズできます(オプション)。
DOTNET_RUNTIME_PATH=path-to-install-dotnet-runtime \DESKTOP_ENVIRONMENT= **gnome | mate \**REGISTER_SERVICE=**Y | N**ADD_FIREWALL_RULES=**Y | N**VDI_MODE=**Y | N**START_SERVICE=**Y | N**
-
ドメインに参加しているシナリオの場合
-
Use_AD_Configuration_Files_Of_Current_VDA: 現在実行中のVDAの既存のAD関連構成ファイル(/etc/krb5.conf、/etc/sssd.conf、および/etc/samba/smb.conf)を使用するかどうかを決定します。Yに設定すると、MCSで作成されたマシンの構成ファイルは、現在実行中のVDAの同等のファイルと同じになります。ただし、dnsおよびAD_INTEGRATION変数は引き続き構成する必要があります。デフォルト値はNで、マスターイメージの構成テンプレートがMCSで作成されたマシンの構成ファイルを決定することを意味します。現在実行中のVDAをテンプレートVMとして使用するには、値をYに設定します。それ以外の場合は、Nに設定します。 -
dns: 各DNSサーバーのIPアドレスを設定します。最大4つのDNSサーバーを設定できます。 -
NTP_SERVER: NTPサーバーのIPアドレスを設定します。特に指定がない限り、ドメインコントローラーのIPアドレスです。 -
WORKGROUP: ADで構成したNetBIOS名(大文字と小文字を区別)にワークグループ名を設定します。それ以外の場合、MCSはマシンのホスト名の直後にあるドメイン名の一部をワークグループ名として使用します。たとえば、マシンアカウントが user1.lvda.citrix.com の場合、MCSは lvda をワークグループ名として使用しますが、citrix が正しい選択です。ワークグループ名が正しく設定されていることを確認してください。 -
AD_INTEGRATION: Winbind、SSSD、PBIS、またはCentrifyを設定します。MSCがサポートするLinuxディストリビューションとドメイン参加方法のマトリックスについては、「サポートされているディストリビューション」を参照してください。 -
CENTRIFY_DOWNLOAD_PATH: Server Suite Free(旧Centrify Express)パッケージをダウンロードするためのパスを設定します。この値は、AD_INTEGRATION変数をCentrifyに設定した場合にのみ有効になります。 -
CENTRIFY_SAMBA_DOWNLOAD_PATH: Centrify Sambaパッケージをダウンロードするためのパスを設定します。この値は、AD_INTEGRATION変数をCentrifyに設定した場合にのみ有効になります。 -
PBIS_DOWNLOAD_PATH: PBISパッケージをダウンロードするためのパスを設定します。この値は、AD_INTEGRATION変数をPBISに設定した場合にのみ有効になります。 -
UPDATE_MACHINE_PW: マシンアカウントのパスワードの自動更新を有効または無効にします。詳細については、「マシンアカウントのパスワードの自動更新」を参照してください。 -
Linux VDA構成変数:
DOTNET_RUNTIME_PATH=path-to-install-dotnet-runtime \DESKTOP_ENVIRONMENT= **gnome | mate \**SUPPORT_DDC_AS_CNAME=**Y | N**VDA_PORT=port-numberREGISTER_SERVICE=**Y | N**ADD_FIREWALL_RULES=**Y | N**HDX_3D_PRO=**Y | N**VDI_MODE=**Y | N**SITE_NAME=**dns-site-name | ‘<none>’**LDAP_LIST=**‘list-ldap-servers’ | ‘<none>’**SEARCH_BASE=**search-base-set | ‘<none>’**FAS_LIST=**‘list-fas-servers’ | ‘<none>’**START_SERVICE=**Y | N**TELEMETRY_SOCKET_PORT=port-numberTELEMETRY_PORT=port-number
-
手順 4e: マスターイメージの作成
-
(SSSD + RHEL 8.x/9.x または Rocky Linux 8.x/9.x のみ)
update-crypto-policies --set DEFAULT:AD-SUPPORTコマンドを実行し、テンプレートVMを再起動します。 -
/opt/Citrix/VDA/sbin/deploymcs.shを実行します。ドメインに参加していないシナリオでは、以下のエラーは正常であり、続行を妨げるものではありません。

-
テンプレートVMにアプリケーションをインストールし、テンプレートVMをシャットダウンします。マスターイメージのスナップショットを作成し、名前を付けます。
ステップ 5: マシンカタログの作成
- Citrix Cloud にサインインします。左上のメニューで、[マイサービス] > [DaaS] を選択します。
- [管理] > [完全な構成] から、左側のペインで [マシンカタログ] を選択します。
- アクションバーで [マシンカタログの作成] を選択します。
-
[マシンタイプ] ページで、[マルチセッションOS] または [シングルセッションOS] を選択し、[次へ] を選択します。

-
[マシン管理] ページで、[電源管理されているマシン] と [Citrix Machine Creation Services] オプションを選択し、[次へ] を選択します。複数のリソースがある場合は、メニューから1つを選択します。

-
[マスターイメージ] ページで、以前に作成したマスターイメージを選択します。


-
[マシンID] ページで、マスターイメージがどのドメインにも参加していない場合は [ドメインに参加していない] を選択し、マスターイメージをドメインに参加させた場合はActive Directoryアカウントを選択します。
ドメインに参加していないシナリオの場合:

ドメインに参加しているシナリオの場合:

- [新しいActive Directoryアカウントの作成] を選択した場合は、ドメインを選択し、Active Directoryで作成されるプロビジョニングされたVMコンピューターアカウントの命名スキームを表す文字のシーケンスを入力します。アカウントの命名スキームは1~64文字で、空白、非ASCII文字、または特殊文字を含めることはできません。
- [既存のActive Directoryアカウントを使用] を選択した場合は、[参照] を選択して、選択したマシンの既存のActive Directoryコンピューターアカウントに移動します。
- [ドメイン資格情報] ページで、[資格情報の入力] を選択し、ユーザー名とパスワードを入力して [保存] を選択し、[次へ] を選択します。入力する資格情報には、Active Directoryアカウント操作を実行する権限が必要です。
- その他のページで追加設定を構成します。詳しくは、「Google Cloud Platformカタログの作成」を参照してください。
-
[概要] ページで情報を確認し、カタログの名前を指定して、[完了] を選択します。

マシンカタログの作成には時間がかかる場合があります。完了すると、カタログが一覧表示されます。Google Cloudコンソールで、ターゲットノードグループにマシンが作成されていることを確認できます。
ステップ 6: デリバリーグループの作成
デリバリーグループは、1つ以上のマシンカタログから選択されたマシンのコレクションです。どのユーザーがこれらのマシンを使用できるか、およびそれらのユーザーが利用できるアプリケーションとデスクトップを指定します。
詳しくは、Citrix DaaS ドキュメントのデリバリーグループの作成を参照してください。
- Citrix Cloud にサインインします。左上のメニューで、[マイサービス] > [DaaS] を選択します。
- [管理] > [完全な構成] から、左側のペインで [デリバリーグループ] を選択します。
-
アクションバーで [デリバリーグループの作成] を選択します。デリバリーグループ作成ウィザードが開きます。
表示されるウィザードページは、選択内容によって異なる場合があります。
-
[マシン] ページで、マシンカタログを選択し、そのカタログから使用するマシンの数を選択します。

-
その他のページで追加設定を構成します。詳しくは、「デリバリーグループの作成」を参照してください。
-
[概要] ページで、デリバリーグループの名前を入力します。また、(オプションで)説明を入力することもできます。この説明は、Citrix Workspace™アプリおよび [完全な構成] 管理インターフェイスに表示されます。例:
デリバリーグループの名前を入力します:

[完全な構成] 管理インターフェイスのデリバリーグループのリスト:

Citrix Workspaceアプリで配信されたマシン
