Linux Virtual Delivery Agent

Google Cloud Platform (GCP) で Machine Creation Services™ (MCS) を使用して Linux VDA を作成

手順 3: Citrix Studio での MCS カタログの作成

手順 1: GCP で Linux 仮想マシン (VM) を作成

手順 2: GCP サービスアカウントを作成

手順 3: Citrix Studio で GCP へのホスト接続を作成

手順 4: Linux VDA マスターイメージを準備

手順 5: マシンカタログを作成

手順 1b: [VM インスタンス] ページで、[インスタンスを作成] をクリックして VM インスタンスを作成します。

[インスタンスを作成] タブ

手順 1c: 次の設定を行い、その他の設定はデフォルトのままにします。

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

    ブートディスク

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

    ホスト名フィールドを設定

手順 1d: [作成] をクリックして VM インスタンスを作成します。

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

GCP 上の VM に接続するには SSH ボタンをクリック

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

GCP 上の VM に Linux VDA パッケージをアップロード

手順 1g: SSH を使用した VM へのアクセス失敗を防止します。

VM は再起動後に到達不能になる場合があります。この問題を回避するには、VM に初めてログオンするときに root パスワードを設定し、root として VM にログオンできることを確認します。その後、VM を再起動してからコンソールで次のコマンドを実行します。

-  nmcli dev connect eth0
-  systemctl restart NetworkManager
<!--NeedCopy-->
  • シリアルコンソールに接続

手順 2: GCP サービスアカウントを作成

このセクションでは、サービスアカウントキーの作成や、サービスアカウントに必要なロールの付与など、GCP サービスアカウントの作成について説明します。

注:

GCP サービスアカウントを作成するには、サービスアカウント管理者 (roles/iam.serviceAccountAdmin) IAM ロールが付与されていることを確認してください。

手順 2a: Google Cloud コンソールで、[IAM と管理] > [サービスアカウント] に移動し、[サービスアカウントを作成] タブをクリックします。

サービスアカウントを作成タブ

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

サービスアカウントの詳細

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

GCP サービスアカウントの作成が完了

手順 2d: 再び [IAM と管理] > [サービスアカウント] に移動し、[サービスアカウント] タブをクリックします。新しく作成したサービスアカウントを見つけて [キー] タブに移動し、[キーを追加] > [新しいキーを作成] > [JSON] > [作成] をクリックします。

GCP サービスアカウントキーを追加

キーファイルをダウンロード

注:

キーファイルをダウンロードした後、再度ダウンロードすることはできません。

手順 2e: Google Cloud コンソールで、[IAM と管理] > [IAM] に移動し、[追加] をクリックします。[新しいメンバー] フィールドで新しく作成したサービスアカウントを検索して選択し、サービスアカウントにリソースへのアクセスを許可する役割を選択します。[別の役割を追加] をクリックして役割の付与を続け、新しく作成したサービスアカウントに以下のすべての役割を付与するようにします。

  • Compute 管理者
    • Storage 管理者
      • Cloud Build 編集者
    • サービスアカウントユーザー
      • Cloud Datastore ユーザー
    • Compute インスタンス管理者 (ベータ版)
      • オーナー

      • 例:

      • Grant roles to the GCP service account

手順 3: Citrix Studio で GCP へのホスト接続を作成

Google Cloud Platform 仮想化環境に従って GCP 環境をセットアップし、以下の手順を実行して GCP へのホスト接続を作成します。

  1. オンプレミスの Delivery Controller の場合は、オンプレミスの Citrix Studio で [構成] > [ホスティング] > [接続とリソースの追加] を選択してホスト接続を作成します。クラウド Delivery Controller の場合は、Citrix Cloud™ の Web ベースの Studio コンソールで [管理] > [ホスティング] > [接続とリソースの追加] を選択してホスト接続を作成します。

  2. [接続とリソースの追加] ウィザードで、接続の種類として [Google Cloud Platform] を選択します。

    例: Citrix Cloud の Web ベースの Studio コンソールの場合:

    • Add connection image

      1. GCP アカウントのサービスアカウントキーをインポートし、接続名を入力します。
  3. ウィザードの各ページを進みます。特定のページの内容は、選択した接続の種類によって異なります。各ページを完了したら、[次へ] を選択して [概要] ページに進みます。詳しくは、「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-->

Connect to the serial console

        -  **手順 4b:** テンプレート VM への Linux VDA パッケージのインストール。

    -  テンプレート VM で、Linux VDA パッケージをインストールするには、次の手順を実行します。

    -  1.  .NET Runtime 6.0 をインストールします。

```
sudo yum install dotnet-sdk-6.0
<!--NeedCopy--> ```
  1. Linux VDA パッケージをインストールします。

    sudo yum –y localinstall <PATH>/<Linux VDA RPM>
    <!--NeedCopy-->
    
  2. 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> を参照してください。

        -  ![Add one or more GPUs to a VM on GCP](/en-us/linux-virtual-delivery-agent/2311/media/add-gpus-to-vm-on-gcp.png)

    -  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 Software Support Matrix](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**

    ドメインに参加していないシナリオのMCS変数

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

    • 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-number REGISTER_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-number TELEMETRY_PORT=port-number

手順 4e: マスターイメージの作成

  1. (SSSD + RHEL 8.x/9.x または Rocky Linux 8.x/9.x のみ) update-crypto-policies --set DEFAULT:AD-SUPPORT コマンドを実行し、テンプレートVMを再起動します。

  2. /opt/Citrix/VDA/sbin/deploymcs.sh を実行します。

    ドメインに参加していないシナリオの場合、以下のエラーは正常であり、続行を妨げるものではありません。

    ドメインに参加していないシナリオでのMCS展開

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

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

  1. Citrix Cloud にサインインします。左上のメニューで、[My Services] > [DaaS] を選択します。
  2. [Manage] > [Full Configuration] から、左ペインで [Machine Catalogs] を選択します。
  3. アクションバーで [Create Machine Catalog] を選択します。
  4. [Machine Type] ページで、[Multi-session OS] または [Single-session OS] を選択し、[Next] を選択します。

    マシンタイプ

  5. [Machine Management] ページで、[Machines that are power managed][Citrix Machine Creation Services] オプションを選択し、[Next] を選択します。複数のリソースがある場合は、メニューから1つ選択します。

    マシン管理

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

    マスターイメージの選択

    選択されたマスターイメージ

  7. [Machine Identities] ページで、マスターイメージがどのドメインにも参加していない場合は [Non-domain-joined] を選択し、マスターイメージをドメインに参加させた場合はActive Directoryアカウントを選択します。

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

    マシンIDタイプ

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

    Active Directoryアカウントオプションの選択

    • [Create new Active Directory accounts] を選択した場合、ドメインを選択し、Active Directoryで作成されるプロビジョニング済みVMコンピューターアカウントの命名スキームを表す文字シーケンスを入力します。アカウント命名スキームは1~64文字で構成でき、空白スペース、非ASCII文字、または特殊文字を含めることはできません。
    • [Use existing Active Directory accounts] を選択した場合、[Browse] を選択して、選択したマシン用の既存のActive Directoryコンピューターアカウントに移動します。
    • [Domain Credentials] ページで、[Enter credentials] を選択し、ユーザー名とパスワードを入力して [Save] を選択し、[Next] を選択します。入力する資格情報には、Active Directoryアカウント操作を実行する権限が必要です。
  8. 他のページで追加設定を構成します。詳細については、「Google Cloud Platformカタログの作成」を参照してください。
  9. [Summary] ページで情報を確認し、カタログの名前を指定して [Finish] を選択します。

    マシンカタログ設定の概要

マシンカタログの作成には時間がかかる場合があります。完了すると、カタログが一覧表示されます。Google Cloudコンソールで、ターゲットノードグループにマシンが作成されていることを確認できます。

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

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

詳細については、Citrix DaaS ドキュメントのデリバリーグループの作成を参照してください。

  1. Citrix Cloud にサインインします。左上のメニューで、[My Services] > [DaaS] を選択します。
  2. [Manage] > [Full Configuration] から、左ペインで [Delivery Groups] を選択します。
  3. アクションバーで [Create Delivery Group] を選択します。デリバリーグループ作成ウィザードが開きます。

    表示されるウィザードページは、選択内容によって異なる場合があります。

  4. [Machines] ページで、マシンカタログを選択し、そのカタログから使用するマシンの数を選択します。

    デリバリーグループの作成

  5. 他のページで追加設定を構成します。詳細については、「デリバリーグループの作成」を参照してください。

  6. [Summary] ページで、デリバリーグループの名前を入力します。オプションで説明を入力することもできます。これはCitrix Workspace™アプリと [Full Configuration] 管理インターフェイスに表示されます。例:

    デリバリーグループの名前を入力します:

    デリバリーグループに名前を付ける

    [Full Configuration] 管理インターフェイスのデリバリーグループのリスト:

    Full Configuration管理インターフェイスのデリバリーグループのリスト

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

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

Google Cloud Platform (GCP) で Machine Creation Services™ (MCS) を使用して Linux VDA を作成