在專用雲端部署適用於 AI 工作負載的裸機 GPU 叢集

在某些情況下,為人工智慧、機器學習和語言模型製作部署工作負載可能對資料駐留、安全性和合規性有嚴格的要求。

對於這些工作負載,Oracle Cloud 提供數個分散式部署和作業模型,包括政府雲、主權雲端和專用雲端。其中一種解決方案是 Oracle Cloud Infrastructure Dedicated Region ,這是部署在客戶控制資料中心的雲端區域,其服務和基礎架構功能與 Oracle 公有雲區域相同。

在公用和專用雲端區域中,Oracle Cloud Infrastructure (OCI) 可直接存取由高效能 GPU 和 Oracle RoCEv2 Cluster Networks 提供支援的裸機伺服器叢集。裸機 GPU 叢集提供業界部署專用 AI、ML 或 DL 的最佳性價比。

架構

此架構示範一般系統中各種元件與其核心 HPC 裸機 GPU 叢集之間的關係。

自然語言處理是一種預先訓練的深度學習模型。每個模型會因其複雜性而異,並可根據 GPU 處理器規格和包含其參數所需的記憶體來調整大小以獲得最佳效能。某些大型模型包含數十億個參數,需要大量的記憶體和處理能力來即時執行模型,這對於 AI 推論應用程式至關重要。

有了較大的模型,不僅需要單一的多 GPU 執行處理,還需要有數百個共同運作的 GPU 叢集。這些執行處理也需要使用透過叢集網路執行的叢集檔案系統,以提供高 IOPS 以及叢集中節點之間作業的最佳可能延遲。

為了提供此低延遲,高頻寬檔案系統 Oracle Cloud Infrastructure (OCI) 會根據遠端直接記憶體存取 (RDMA) 使用 Oracle 的低延遲叢集網路,透過聚合乙太網路 (RoCE) 執行,節點之間延遲不到 10 毫秒。RDMA 允許節點之間的低延遲連線,以及存取 GPU 記憶體,而不涉及 CPU。OCI 可讓客戶叢集化 4096 個裸機節點,每個節點各有 8 個 GPU,最高可達 32768 個 GPU。

OCI 為 AI/ML 工作負載 (例如本機 NVMe SSD、網路及平行檔案系統) 提供多種高效能、低延遲的儲存解決方案。OCI Bare Metal 伺服器隨附 NVMe SSD 本機儲存體。可以用來建立暫存檔案的暫用 NFS 或暫用平行檔案系統 (BeeOND,Weka)。您可以使用區塊磁碟區多重連附功能,使用單一磁碟區儲存整個訓練資料集,並將其連附至多個 GPU 執行處理。或者,您可以使用裸機或 VM 和平衡的效能層區塊儲存,建置最高的傳輸量和最低成本的檔案伺服器,搭配 NFS 型 (NFS-HA、FSS) 或平行檔案系統 (Weka.io、Spectrum Scale、BeeGFS、BeeOND)。訓練結果會儲存在 Oracle Cloud Infrastructure Object Storage 中,供長期儲存使用。

下圖說明此參照架構。

architecture-bm-gpu-dedicated-region.png 的描述如下
architecture-bm-gpu-dedicated-region.png 圖解描述

architecture-bm-gpu-dedicated-region-oracle.zip

此架構具有下列元件:

  • 地區

    Oracle Cloud Infrastructure 區域是包含一或多個資料中心 (稱為可用性網域) 的本地化地理區域。區域與其他區域無關,且遠距離可加以區分 (跨國家,甚至是大陸)。

  • 雲端保全

    您可以使用 Oracle Cloud Guard 來監控及維護 Oracle Cloud Infrastructure 中資源的安全性。Cloud Guard 使用偵測器處方,您可以定義這些處方來檢查資源是否有安全漏洞,以及監控操作員和使用者是否有危險的活動。偵測到任何組態錯誤或不安全的活動時,Cloud Guard 會建議更正動作,並根據您可以定義的回應器處方協助採取這些動作。

  • 可用性網域

    可用性網域是區域內獨立的資料中心。每個可用性網域中的實體資源會與其他可用性網域中的資源隔離,提供容錯能力。可用性網域不共用基礎設施 (例如電源或冷卻系統) 或內部可用性網域網路。因此,一個可用性網域發生故障不應影響區域中的其他可用性網域。

  • 容錯域

    故障領域是可用性領域內的一組硬體和基礎設施。每個可用性網域都有三個容錯域,分別具備獨立的電源和硬體。當您將資源分配給多個容錯域時,您的應用程式可以容忍容錯域內的實體伺服器失敗、系統維護,以及電源失敗。

  • 區間

    區間是 Oracle Cloud Infrastructure 租用戶內的跨區域邏輯分割區。使用區間組織 Oracle Cloud 中的資源、控制對資源的存取,以及設定使用配額。若要控制對指定區間中資源的存取,您必須定義原則,指定誰可以存取資源及其可執行的動作。

  • 虛擬雲端網路 (VCN) 和子網路

    VCN 是您在 Oracle Cloud Infrastructure 區域中設定的可自訂軟體定義網路。就像傳統的資料中心網路一樣,VCN 也可讓您控制網路環境。VCN 可以有多個非重疊的 CIDR 區塊,您可以在建立 VCN 之後加以變更。您可以將 VCN 分割成子網路,子網路可以限定為區域或可用性網域。每個子網路都是由不與 VCN 中其他子網路重疊的連續位址範圍所組成。您可以在建立子網路後變更其大小。子網路可以是公用或專用。

  • 網站至網站 VPN

    網站至網站 VPN 可在您的內部部署網路與 Oracle Cloud Infrastructure 中的 VCN 之間提供 IPSec VPN 連線。IPSec 協定套件會在封包從來源傳輸至目的地之前加密 IP 流量,並在到達時解密流量。

  • FastConnect

    Oracle Cloud Infrastructure FastConnect 可讓您輕鬆地在您的資料中心與 Oracle Cloud Infrastructure 之間建立專屬的專用連線。相較於網際網路連線,FastConnect 提供更高的頻寬選項和更可靠的網路體驗。

  • 動態路由閘道 (DRG)

    DRG 是一個虛擬路由器,可在 VCN 與區域外部網路之間 (例如另一個 Oracle Cloud Infrastructure 區域中的 VCN、內部部署網路或其他雲端提供者中的網路) 提供相同區域 VCN 之間的專用網路流量路徑。

  • 網路位址轉譯 (NAT) 閘道

    NAT 閘道可讓 VCN 中的專用資源存取網際網路上的主機,而不會將這些資源暴露給內送網際網路連線。

  • 網際網路閘道

    網際網路閘道允許 VCN 中公用子網路與公用網際網路之間的流量。

  • 服務閘道

    服務閘道可讓您從 VCN 存取其他服務,例如 Oracle Cloud Infrastructure Object Storage 。從 VCN 到 Oracle 服務的流量會透過 Oracle 網路結構傳送,而不會周遊網際網路。

  • 安全清單

    您可以為每個子網路建立安全規則,指定子網路中必須允許進出的流量來源、目的地和類型。

  • 路由表

    虛擬路由表包含規則,可將流量從子網路路由至 VCN 外部的目的地,通常透過閘道。

  • 堡壘主機

    堡壘主機是運算執行處理,可作為雲端外部拓樸的安全受控制進入點。堡壘主機通常在解密區域 (DMZ) 中佈建。它可讓您將機密資源放在無法直接從雲端存取的專用網路中,以保護機密資源。拓樸具有單一的已知進入點,您可以定期監督和稽核。因此,您可以避免讓拓樸的敏感元件暴露,而不影響拓樸的存取。

  • 堡壘主機節點 (標頭節點)

    堡壘主機節點 (前端節點) 使用 Web 式入口網站來連線至前端節點和排定工作。工作要求會透過 Oracle Cloud Infrastructure FastConnect 或 IPSec VPN 傳送至標頭節點。標頭節點也會將客戶資料集傳送至檔案儲存,並可在資料上進行一些預先處理。總節點可以在工作完成時佈建節點叢集和刪除叢集。

  • 執行處理集區

    執行個體池是區域內的一組執行個體,這些執行個體是從同一執行個體配置創建,並做為一個組管理。

    執行處理集區可讓您在與群組相同的區域內建立及管理多個運算執行處理。他們還能與其他服務 (例如 Oracle Cloud Infrastructure Load Balancing 服務和 Oracle Cloud Infrastructure Identity and Access Management 服務) 整合。

  • 物件儲存

    物件儲存可讓您快速存取各種內容類型的大量結構化和非結構化資料,包括資料庫備份、分析資料,以及豐富的內容 (例如影像和影片)。您可以安全地儲存資料,然後直接從網際網路或雲端平台內擷取資料。您可以擴展儲存體,而不會發生任何效能或服務可靠性的降低。針對快速、立即且經常存取的「熱」儲存體,使用標準儲存體。將封存儲存用於保留很長一段時間、極少或極少存取的「冷」儲存。

建議

使用下列建議作為起點,並視需要量身打造以符合您的特定需求。
  • VCN

    建立 VCN 時,請根據計畫要連附至 VCN 中子網路的資源數目,決定所需的 CIDR 區塊數目和每個區塊的大小。使用標準專用 IP 位址空間內的 CIDR 區塊。

    選取未與任何其他網路 (在 Oracle Cloud Infrastructure 中、您的內部部署資料中心或其他雲端提供者) 重疊的 CIDR 區塊,以設定專用連線。

    建立 VCN 之後,您可以變更、新增及移除其 CIDR 區塊。

    設計子網路時,請考慮流量和安全性需求。將特定層或角色內的所有資源連附至相同的子網路,以作為安全界限。

    使用區域子網路。

  • 安全

    使用 Oracle Cloud Guard 主動監控及維護 Oracle Cloud Infrastructure 中資源的安全性。Cloud Guard 會使用您可以定義的偵測器處方來檢查資源是否有安全漏洞,以及監控操作員和使用者是否有危險的活動。偵測到組態錯誤或不安全的活動時,Cloud Guard 會建議更正動作,並根據您可以定義的回應器處方協助採取這些動作。

    對於需要最高安全性的資源,Oracle 建議您使用安全區域。安全區域是與以最佳做法為基礎之 Oracle 定義的安全原則處方關聯的區間。舉例來說,安全區域中的資源不得從公用網際網路存取,而必須使用客戶管理的金鑰加密。當您在安全區域中建立及更新資源時,Oracle Cloud Infrastructure 會根據安全區域處方中的原則驗證作業,並拒絕違反任何原則的作業。

  • 雲端保全

    複製並自訂 Oracle 提供的預設處方,以建立自訂偵測器和回應器處方。這些處方可讓您指定哪些類型的安全違規會產生警告,以及允許對它們執行哪些動作。例如,您可能會想要偵測可見性設為公用物件儲存的儲存桶。

    在租用戶層級套用 Cloud Guard 以涵蓋最廣泛的範圍,並降低維護多個組態的管理負擔。

    您也可以使用「受管理清單」功能,將特定組態套用至偵測器。

  • 安全區域

    對於需要最高安全性的資源,Oracle 建議您使用安全區域。安全區域是與以最佳做法為基礎之 Oracle 定義的安全原則處方關聯的區間。舉例來說,安全區域中的資源不得從公用網際網路存取,而必須使用客戶管理的金鑰加密。當您在安全區域中建立及更新資源時,Oracle Cloud Infrastructure 會根據安全區域處方中的原則驗證作業,並拒絕違反任何原則的作業。

  • 網路安全群組 (NSG)

    您可以使用 NSG 定義一組適用於特定 VNIC 的輸入和輸出規則。建議您使用 NSG 而非安全清單,因為 NSG 可讓您將 VCN 的子網路架構與應用程式的安全需求分開。

  • GPU 節點

    部署 GPU 裸機資源配置以取得完整效能。

    叢集最多可達 32,768 個 GPU。

注意事項

建置此參照架構時,請考量下列各點。

  • 使用狀態

    請根據您的部署需求和區域,考慮使用高可用性選項。選項包括在一個區域和容錯域中使用多個可用性網域。

    • 監督與警示

      設定節點的 CPU 和記憶體使用量監控和警示,以便視需要縱向擴展或縮減資源配置。

    • 成本

      裸機 GPU 執行處理可提供更高成本的必要 CPU 電源。評估您的需求以選擇適當的運算資源配置。

      沒有執行中的工作時,您可以刪除叢集。

      請注意,裸機執行處理在未開機時仍會繼續產生營運成本。必須「終止」才能停止產生費用。

  • 叢集檔案系統
    有多個案例:
    • 隨附 GPU、HPC 和高效能儲存資源配置的本機 NVMe SSD 儲存體。
    • 多連附區塊磁碟區可提供高達 2,680 MB/ 秒 IO 傳輸量或 700k IOPS。
    • 您也可以根據效能需求,在 NVMe SSD 儲存體或區塊儲存體上安裝自己的平行檔案系統。OCI 提供暫用且永久的 NFS 型 (NFS-HA、FSS) 或平行檔案系統 (weka.io、Spectrum Scale、BeeGFS、BeeOND、Lustre、Gluster、Quobyte) 解決方案,請參閱「探索更多」。與支援專家聯絡,以根據您的需求設計最佳解決方案。

認可

  • 作者Michael Rutledge