仮想 GPU で高速化した Linux ワークステーションを作成する

このチュートリアルでは、ディスプレイ対応 GPU を割り当てて Ubuntu 22.04 を実行する仮想 Linux ワークステーションを作成する方法について説明します。Cloud de Confiance by S3NS は、4 つのディスプレイ対応 GPU(NVIDIA L4、NVIDIA T4、NVIDIA P4、NVIDIA P100)を提供しています。

Windows ワークステーションを作成するには、仮想 GPU による高速 Windows ワークステーションの作成のチュートリアルをご覧ください。

仮想ワークステーションを作成した後、PC-over-IP(PCoIP®)テクノロジーを使用して HP Anyware(旧 Teradici CAS)でリモート アクセスする方法について学びます。PCoIP は、メディア、エンターテイメント、ゲーム開発、アーキテクチャ、エンジニアリング業界で広く使用されているリモート デスクトップ プロトコルです。PCoIP は、これらの業界でのワークロードに不可欠な機能(色精度、複数モニターのサポート、ロスレス ディスプレイ、タブレットの圧力感度など)を提供します。

このチュートリアルは、Linux コマンドラインに精通していることを前提としています。

アーキテクチャ

次の図は、単一の仮想ワークステーションをデプロイするためにこのチュートリアルで使われているコンポーネントを示しています。図に示すオプションのコンポーネントには、仮想ワークステーションに接続するさまざまな方法、共有ストレージ、サードパーティ ライセンスを提供するための追加のインスタンス、レンダリングまたはコンピューティング ファームを表す追加のインフラストラクチャが含まれています。

仮想ワークステーション アーキテクチャ

リージョンを選択する

仮想ワークステーションをデプロイする際に重要になるのは、デベロッパーのロケーションと作成されたインスタンスとの間のレイテンシです。レイテンシが短いほど、より良いエクスペリエンスが得られます。したがって、可能な限り地理的に近いリージョンを選択することをおすすめします。さまざまな GPU が利用可能な場所の詳細については、GPU のリージョンとゾーンの可用性をご覧ください。

  1. Cloud Shell を開きます。(gcloud CLI を使用している場合は、パソコンのターミナル ウィンドウを開きます)。

    Cloud Shell に移動

  2. 次に、GPU が利用可能なゾーンのリストを取得します。

    gcloud compute accelerator-types list

    物理的に最も近いリージョンとゾーンをメモします。

  3. 使用するゾーンを設定します。

    gcloud config set compute/zone ZONE

    ZONE は、使用しているゾーンの名前(us-west1-b など)に置き換えます。

マシンタイプを選択する

NVIDIA L4 GPU は、G2 マシンタイプにアタッチされます。GPU を 1 つ以上使用する仮想マシンには、インスタンスに追加する GPU ごとに vCPU の最大数が設定されます。たとえば、各 NVIDIA L4 GPU では、インスタンスのマシンタイプで最大 32 個の vCPU と最大 128 GB のメモリを使用できます。各種の GPU 構成で使用可能な vCPU とメモリの範囲を確認するには、GPU リストをご覧ください。

このチュートリアルの例では、8 個の vCPU の G2 仮想ワークステーションで構成されており、これは、単一の NVIDIA L4 GPU に対する vCPU 32 個の制限をはるかに下回ります。

仮想ワークステーションを作成する

  1. Cloud Shell で、Compute Engine 仮想ワークステーション インスタンスを作成します。

    gcloud compute instances create VM_NAME \
        --zone=ZONE \
        --machine-type=MACHINE_TYPE \
        --accelerator=type=ACCELERATOR,count=NUM-GPUS \
        --maintenance-policy="TERMINATE" \
        --image-project=ubuntu-os-cloud \
        --image-family=ubuntu-2204-lts \
        --boot-disk-size=SIZE \
        --boot-disk-type=TYPE \
        --network=NETWORK
    

    次のように置き換えます。

    • VM_NAME は、ワークステーションの名前です。
    • ZONE は VM を作成するゾーンです。
    • MACHINE_TYPE は、事前定義済みまたはカスタムのマシン構成です。
    • ACCELERATOR は、接続する GPU のタイプ(nvidia-l4-vws など)です。
    • NUM-GPUS は、VM に接続する GPU の数です。
    • SIZE は、ブートディスクのサイズ(GB)です。
    • TYPE は、ブートディスクのタイプです。使用可能なディスクタイプのリストを取得するには、gcloud compute disk-types list を実行します。
    • NETWORK は、VM を作成するネットワークです。

    次に例を示します。

    gcloud compute instances create test-workstation \
        --zone=us-west1-b \
        --machine-type=g2-standard-8 \
        --accelerator=type=nvidia-l4-vws,count=1 \
        --maintenance-policy="TERMINATE" \
        --image-project=ubuntu-os-cloud \
        --image-family=ubuntu-2204-lts \
        --boot-disk-size=100 \
        --boot-disk-type=pd-ssd \
        --network=default
    

    仮想ワークステーションが作成されると、マシンのステータスが表示されます。出力は次のようになります。

    NAME: test-workstation
    ZONE: us-west1-b
    MACHINE_TYPE: g2-standard-8
    PREEMPTIBLE:
    INTERNAL_IP: 10.138.XX.XXX
    EXTERNAL_IP: XX.XXX.XXX.XXX
    STATUS: RUNNING
    

    仮想ワークステーションの外部 IP アドレスをメモしておきます。これはチュートリアルの後半で使用します。

    仮想ワークステーションの外部 IP アドレスは、Cloud de Confiance コンソールを使用していつでも取得できます。

仮想ワークステーションにログインする

仮想ワークステーションの作成が終わったら、マシンにログインして構成できます。

  1. Cloud Shell で、新しい仮想ワークステーションに接続します。

    gcloud compute ssh VM_NAME
  2. アカウントのパスワードを設定します。PCoIP ソフトウェア クライアントを使用して仮想ワークステーションにログインするには、ユーザー パスワードが必要です。

    sudo passwd `whoami`

    プロンプトが表示されたら、パスワードを入力します。チュートリアルの後半で、このパスワードを使用して HP Anyware PCoIP クライアントから仮想ワークステーションにログインします。

ベース ライブラリをインストールする

Cloud de Confiance のデフォルトの Ubuntu 22.04 イメージは、Ubuntu の最小インストールです。次の手順では、仮想ワークステーションをグラフィック ワークステーションとして実行するために必要なライブラリをインストールします。

  1. ソフトウェア リポジトリを更新します。

    sudo apt update
  2. ベース コンポーネントをインストールします。

    sudo apt install -y build-essential
    sudo apt install -y libvulkan1
    
  3. NVIDIA ドライバのバージョンを gcc に更新します。

    sudo apt install -y gcc-12
    sudo apt install -y linux-headers-$(uname -r)
    sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-12 12
    sudo update-alternatives --config gcc
    

NVIDIA ドライバをインストールする

NVIDIA L4、NVIDIA T4、NVIDIA P4、NVIDIA P100 GPU は、可視化ワークロード用の認定 NVIDIA RTX 仮想ワークステーション ドライバを搭載した Cloud de Confianceでのみ動作します。このドライバは、一般公開 Cloud de Confiance ストレージ バケットからダウンロードできます。

  1. 最新の NVIDIA RTX 仮想ワークステーション ドライバをインストールするには、手順(ステップ 3 と 4 のみ)に沿って操作してください。

  2. ワークステーションを再起動します。

    sudo reboot

デスクトップ環境をインストールする

仮想ワークステーションをグラフィック ワークステーションとして実行するには、デスクトップ環境が必要です。このチュートリアルでは、KDE Plasma Desktop をインストールします。

  1. デスクトップ環境をインストールします。

    sudo apt update
    sudo apt -y install kubuntu-desktop
    sudo apt -y install dialog
    
  2. ワークステーションを再起動します。

    sudo reboot

HP Anyware ソフトウェアをインストールする

HP Anyware ソフトウェアは、仮想ワークステーション上で動作するグラフィック エージェントを提供し、ハードウェアまたはソフトウェア クライアントにデスクトップを提供します。

  1. 仮想ワークステーションが再起動したら、Cloud Shell で仮想ワークステーションに再接続します。

    gcloud compute ssh VM_NAME
  2. Teradici ソフトウェア リポジトリを追加します。

    curl -1sLf \
        https://dl.anyware.hp.com/TOKEN/pcoip-agent/cfg/setup/bash.deb.sh \
        | sudo -E distro=ubuntu codename=jammy bash
    

    次のように置き換えます。

  3. ソフトウェア リポジトリを更新します。

    sudo apt update
  4. 省略可: キーボード、マウス、ポインタ デバイス以外の USB デバイスをサポートする必要がある場合は、USB 依存関係をインストールします。

    sudo apt -y install usb-vhci-dkms
  5. HP Anyware ソフトウェアをインストールします。

    sudo apt -y install pcoip-agent-graphics

Anyware グラフィック エージェントを登録する

Anyware グラフィック エージェントを使用するには、HP Anyware ライセンスが必要です。

  1. Cloud Shell で、HP Anyware ソフトウェア ライセンスを有効化します。

    pcoip-register-host --registration-code=REGISTRATION-CODE

    REGISTRATION-CODE は、HP Teradici から入手した ABCDEFGHIJKL@0123-4567-89AB-CDEF 形式のコードに置き換えます。

  2. 仮想ワークステーションを再起動します。

    sudo reboot

ファイアウォール ルールの作成

PCoIP クライアントは、複数のポートを使用して仮想ワークステーションと通信します。仮想ワークステーションへのトラフィックを許可するようにファイアウォール ルールを設定する必要があります。

  • Cloud Shell(仮想ワークステーションではありません)で、必要なポートを開くファイアウォール ルールを作成します。

    gcloud compute firewall-rules create allow-pcoip \
        --action=ALLOW \
        --rules=tcp:443,tcp:4172,udp:4172 \
        --source-ranges=0.0.0.0/0
    

PCoIP クライアントを使用して仮想ワークステーションにログインする

  1. ローカルのパソコンで、HP Anyware サポートページの「PCoIP Clients」セクションに移動します。使用中のオペレーティング システムに対応する PCoIP Software Client アプリケーションをダウンロードしてインストールし、起動します。

  2. [Host Address] または [Registration Code] フィールドに、仮想ワークステーションの外部 IP アドレスを入力します。必要に応じて、接続の名前を入力できます。

  3. 接続されたら、仮想ワークステーション用に作成したユーザー名とパスワードを入力して認証します。

    数秒後に Linux のデスクトップが表示されます。

仮想ワークステーションをテストする

仮想ワークステーションをデプロイした後、さまざまなツールを使用してパフォーマンスとインタラクティビティをテストできます。

  • Linux ワークステーションでグラフィックのパフォーマンスをテストするプログラムである glxgearsglmark2UNIGINE などの GPU ベンチマーク ツールを実行します。
  • Unreal EngineUnity EditorBlender などの任意のコンテンツ作成アプリケーションをインストールします。
  • V-RayOctaneMaxon など一般的なレンダラのレンダリング ベンチマーク ツールを実行します。
  • Google Chrome を使用して、お気に入りのサイトのブラウジングや、YouTube 動画の再生を行います。

ワークロードに基づく PCoIP パフォーマンスの最適化の詳細を確認することもできます。