建立搭載 GPU 加速運算技術的虛擬 Linux 工作站


本教學課程說明如何建立執行 Ubuntu 22.04 的虛擬 Linux 工作站,且要附加具顯示功能的 GPU。Google Cloud 提供四種具顯示功能的 GPU:NVIDIA L4、NVIDIA T4、NVIDIA P4 和 NVIDIA P100。

如要建立 Windows 工作站,請參閱教學課程:建立搭載 GPU 加速運算的虛擬 Windows 工作站

建立虛擬工作站後,您會學習如何使用 HP Anyware (前身為 Teradici CAS),透過 PC-over-IP (PCoIP®) 技術遠端存取該工作站。PCoIP 是媒體和娛樂、遊戲開發、建築和工程業廣泛使用的遠端桌面通訊協定。為色彩準確度、多螢幕支援、無失真顯示和繪圖板壓力感應等工作負載提供不可或缺的功能。

本教學課程假設您熟悉 Linux 指令列。

目標

  • 建立一個搭載 GPU 的 Compute Engine 執行個體,以該執行個體做為虛擬工作站的基礎。
  • 在虛擬工作站上安裝 NVIDIA 驅動程式。
  • 在虛擬工作站上安裝 HP Anyware 軟體。
  • 使用 PCoIP 軟體用戶端連線到虛擬工作站。

費用

本教學課程使用 Google Cloud的下列計費元件:

您可以使用 Pricing Calculator,根據您的預測使用量產生預估費用。

在本教學課程中,構成虛擬工作站的資源以及會影響費用的因素如下:

網際網路資料移轉是指從虛擬工作站串流至本機顯示用戶端的資料,按照網際網路輸出資料移轉費用計費。 在 PCoIP 工作階段期間,會影響資料傳輸的變數有頻寬、螢幕解析度、顯示監視器數量、使用的應用程式及各監視器上的活動類型。HP Anyware 的工作階段規劃指南可協助您瞭解不同的工作負載需求。

事前準備

本教學課程會使用 Google Cloud CLI,您可以透過從 Google Cloud console 啟動的 Cloud Shell 執行個體來執行。如要在本機工作站上使用 gcloud CLI,請安裝 Google Cloud CLI。本教學課程說明如何在 Cloud Shell 中執行指令;如果您是在工作站上使用 gcloud CLI,請視情況調整您的操作。

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Enable the Compute Engine API.

    Enable the API

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  6. Make sure that billing is enabled for your Google Cloud project.

  7. Enable the Compute Engine API.

    Enable the API

  8. 此外,請確認您擁有下列項目:

    • 專案,且該專案在您所選區域中必須要有NVIDIA L4 虛擬工作站 GPU 的配額。 Google Cloud 您可以使用 gcloud compute accelerator-types list 指令來取得可用 GPU 的清單。
    • Google Chrome 瀏覽器,用來存取 Google Cloud 控制台。
    • 最新的 Windows 版、Mac 版或 Linux 版 PCoIP Client 軟體,用來存取虛擬工作站。
    • help.teradici.com 建立帳戶,下載 HP Anyware 軟體。註冊帳戶完全免費。
    • HP Anyware 軟體授權。您可以申請試用授權,或是洽詢 HP 代表並索取試用註冊碼,以用於這個虛擬工作站。

架構

下圖顯示本教學課程在部署單一虛擬工作站時使用的元件。圖中的選用元件包括了連線至虛擬工作站、共用儲存空間的不同連線方式,以及用於提供第三方授權的其他執行個體,還有代表算繪或運算伺服器陣列的其他基礎架構。

虛擬工作站架構。

選擇一個區域

有個重要因素會影響您部署虛擬工作站,那就是您所在位置與您所建立執行個體之間的時間延遲。延遲時間越短,您的體驗就會越好。因此,建議選擇地理位置離您最近的區域來工作。如要進一步瞭解不同 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,針對新增至執行個體的每一 GPU,均有 vCPU 數量上限。舉例來說,執行個體機器類型中每個 NVIDIA L4 GPU 最多可以有 32 個 vCPU 和 128 GB 記憶體。如要查看不同 GPU 設定的可用 vCPU 和記憶體範圍,請參閱 GPU 清單

本教學課程範例中的虛擬工作站擁有 8 個 vCPU,遠低於單一 NVIDIA L4 GPU 的 32 個 vCPU 限制。

建立虛擬工作站

  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 位址。稍後在教學課程中會用到這項資訊。

    您隨時都能使用 Google Cloud 控制台取得虛擬工作站的外部 IP 位址。

登入虛擬工作站

建立虛擬工作站之後,請登入該機器,以進行設定。

  1. 在 Cloud Shell 中,連線至新的虛擬工作站:

    gcloud compute ssh VM_NAME
  2. 設定您的帳戶密碼。如要使用 PCoIP 軟體用戶端登入虛擬工作站,必須提供使用者密碼。

    sudo passwd `whoami`

    系統提示您輸入密碼時,請輸入密碼。在稍後的教學課程,您要透過 HP Anyware PCoIP 用戶端,使用這個密碼登入虛擬工作站。

安裝基礎程式庫

預設的 Google Cloud 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 在 Google Cloud上都僅支援合格的 NVIDIA RTX 虛擬工作站驅動程式。這類驅動程式可從公開 Google Cloud 儲存空間值區下載。

  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
    

    更改下列內容:

    • TOKEN 是下載權杖,您可以從「Downloads and scripts」下方的「HP Anyware Graphics Agent for Linux」頁面擷取。
  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 Graphics Agent

如要使用 Anyware Graphics Agent,您必須擁有 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 軟體用戶端應用程式。

  2. 在「Host Address or Registration Code」欄位中,輸入虛擬工作站的外部 IP 位址。如果想要輸入連線名稱,也可以輸入。

  3. 連線後,請輸入先前為虛擬工作站建立的使用者名稱和密碼進行身分認證。

    幾秒後就會看到 Linux 桌面。

測試虛擬工作站

部署虛擬工作站之後,可以使用以下數種工具來測試工作站的效能和互動情況:

您也可以根據工作負載,進一步瞭解如何最佳化 PCoIP 效能

清除所用資源

如要避免系統向您的 Google Cloud 帳戶收取本教學課程中所用資源的相關費用,請刪除含有該項資源的專案,或者保留專案但刪除個別資源。

完成本教學課程後,請清除您在Google Cloud 上建立的資源,這樣日後就不需再為這些資源付費。

停止虛擬工作站的運作

停止運作的虛擬工作站會產生永久磁碟的使用費用,但您隨時都可以重新啟動虛擬工作站。如要停止虛擬工作站的運作,請在 Cloud Shell 中執行下列指令:

gcloud compute instances stop VM_NAME

刪除所有元件

  1. 刪除虛擬工作站
  2. 刪除防火牆規則

刪除專案

  1. In the Google Cloud console, go to the Manage resources page.

    Go to Manage resources

  2. In the project list, select the project that you want to delete, and then click Delete.
  3. In the dialog, type the project ID, and then click Shut down to delete the project.

後續步驟