Linux仮想配信エージェント 2411

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

MCS を使用して GCP 上に Linux VDA を作成するには、次の手順を実行します。

ステップ 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 に初めてログオンするときにルートパスワードを設定し、ルートとして VM にログオンできることを確認します。その後、VM の再起動後にコンソールで次のコマンドを実行します。

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

ステップ 2: GCP サービスアカウントの作成

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

注:

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

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

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

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

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

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

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

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

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

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

注:

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

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

  • Compute 管理者
    • Storage 管理者
      • Cloud Build エディター
    • サービスアカウントユーザー
      • Cloud Datastore ユーザー
    • Compute Instance 管理者 (ベータ版)
      • 所有者
    • 例:

      • GCP サービスアカウントに役割を付与する

ステップ 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 コンソールの場合:

    • 接続の追加イメージ

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

  4. ウィザードの指示に従ってページを進めます。特定のページの内容は、選択した接続の種類によって異なります。各ページを完了したら、[次へ] を選択して [概要] ページに到達します。詳細については、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 に初めてログオンするときにルートパスワードを設定し、ルートとして VM にログオンできることを確認します。その後、VM を再起動してからコンソールで次のコマンドを実行します。

nmcli dev connect eth0
systemctl restart NetworkManager
<!--NeedCopy-->
        -  ![シリアルコンソールに接続](/en-us/linux-virtual-delivery-agent/2411/media/connect-to-serial-console.png)

    -  **ステップ 4b:** テンプレート VM に Linux VDA パッケージをインストール。

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

        -  .NET Runtime に加えて、Linux VDA をインストールまたはアップグレードする前に、サポートされているすべての Linux ディストリビューションに .ASP.NET Core Runtime をインストールする必要があります。Amazon Linux 2 にはバージョン 6 が必要です。その他のディストリビューションにはバージョン 8 が必要です。
    

    お使いの Linux ディストリビューションに必要な .NET バージョンが含まれている場合は、組み込みのフィードからインストールします。それ以外の場合は、Microsoft パッケージフィードから .NET をインストールします。詳細については、https://docs.microsoft.com/en-us/dotnet/core/install/linux-package-managers を参照してください。

        -  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> を参照してください。
    
    -  ![GCP 上の VM に 1 つ以上の GPU を追加](/en-us/linux-virtual-delivery-agent/2411/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 (サポート終了) の場合:
      • Linux : 410.79 - 最新の R470 バージョン

    K80 GPU については、NVIDIA は R470 ドライバーブランチがデバッグサポートを受ける最後のドライバーバージョンであることを発表しました。この更新を確認するには、NVIDIA Software Support Matrix を参照してください。

    インストールスクリプト:

    以下のスクリプトを使用して、インストールプロセスを自動化できます。

    https://raw.githubusercontent.com/GoogleCloudPlatform/compute-gpu-installation/main/linux/install_gpu_driver.py --output install_gpu_driver.py
    <!--NeedCopy-->
    

    サポートされているオペレーティングシステム:

    インストールスクリプトは、以下のLinuxディストリビューションでテスト済みです。

    • Debian 11
    • Red Hat Enterprise Linux (RHEL) 8
    • Rocky Linux 8
    • Ubuntu 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-->
      
    2. スクリプトに完全なアクセス権を付与します。

      chmod 777 install_gpu_driver.py
      <!--NeedCopy-->
      
    3. インストールスクリプトを実行します。

      python3 install_gpu_driver.py
      <!--NeedCopy-->
      
    4. gdm3でWaylandを無効にします。

      • ディストリビューションのWayland構成ファイルを次のいずれかの場所で特定します。
        • /etc/gdm3/custom.conf (Ubuntu)
        • /etc/gdm/custom.conf (CentOS、RHEL、Rocky Linux)
      • sudo/root権限でファイルを開きます。
      • 行の先頭にある # を削除して、WaylandEnable=false のコメントを解除します。
      • VMを再起動します。
    5. 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 にサインインします。左上のメニューで、[マイサービス] > [DaaS] を選択します。
  2. [管理] > [完全な構成] から、左ペインで [マシンカタログ] を選択します。
  3. アクションバーで [マシンカタログの作成] を選択します。
  4. [マシンタイプ] ページで、[マルチセッションOS] または [シングルセッションOS] を選択し、[次へ] を選択します。

    マシンタイプ

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

    マシン管理

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

    マスターイメージの選択

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

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

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

    マシンIDタイプ

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

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

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

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

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

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

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

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

  1. Citrix Cloud にサインインします。左上のメニューで、[マイサービス] > [DaaS] を選択します。
  2. [管理] > [完全な構成] から、左ペインで [デリバリーグループ] を選択します。
  3. アクションバーで [デリバリーグループの作成] を選択します。デリバリーグループ作成ウィザードが開きます。

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

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

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

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

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

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

    デリバリーグループの名前

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

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

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

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

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