使用 Lustre 部署可擴展的分散式檔案系統

Lustre 是用於高效能運算 (HPC) 叢集和環境的開放原始碼平行分散式檔案系統。名稱 LustreLinux集的詳細資訊。

您可以使用 Lustre,在連附至運算節點的 Oracle Cloud Infrastructure 裸機運算和網路連附區塊儲存體或 NVMe SSD 上建立 HPC 檔案伺服器。Terraform 樣板可讓您輕鬆地在 Oracle Cloud Infrastructure 上部署 Lustre。

重新串流叢集可擴展檔案系統的傳輸量、儲存容量較高或兩者。結合運算和儲存體時,它只需為每個月的每 GB 計費幾港仙。

Terraform 建置樣板會佈建 Oracle Cloud Infrastructure 資源,包括運算、儲存體、虛擬雲端網路以及子網路。它也會佈建 Lustre 軟體,包括「管理伺服器 (MGS)」、「描述資料伺服器 (MDS)」、「物件儲存體伺服器 (OSS)」以及 Lustre 從屬端節點。

架構

此參照架構使用具有單一可用性網域和區域子網路的區域。您可以在具有多個可用性網域的區域中使用相同的參照架構。不論可用性網域數目為何,建議您使用區域子網路進行部署。

下圖說明此參考架構。

lustre-oci.png 的描述如下
lustre-oci.png 圖解描述

可擴展的 Lustre 架構包含下列元件:

  • 管理伺服器 (MGS)

    MGS 會儲存一或多個 Lustre 檔案系統的配置資訊,並將此資訊提供給其他 Lustre 主機。此全域資源可支援多個檔案系統。

  • 描述資料伺服器 (MDS)

    MDS 提供 Lustre 檔案系統的索引或命名空間。描述資料內容儲存在稱為「描述資料目標 (MDT)」的磁碟區上。Lustre 檔案系統的目錄結構和檔案名稱、權限、延伸屬性和檔案版面配置都會記錄到 MDT。每個 Lustre 檔案系統必須至少有一個 MDT。

  • 物件儲存伺服器 (OSS)

    OSS 為 Lustre 檔案系統中的所有檔案內容提供大量資料儲存體。每個 OSS 都可以存取一組稱為物件儲存體目標 (OST) 的儲存體磁碟區。每個 OST 都包含數個二進位物件,代表 Lustre 中的檔案資料。Lustre 中的檔案除了儲存在 MDS 中的描述資料 inode 之外,還包含一或多個 OST 物件。

  • Lustre 用戶端

    從屬端是存取 Lustre 檔案系統的運算執行處理。

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

    VCN 是您在 Oracle Cloud Infrastructure 區域中設定的軟體定義網路。VCN 可以區隔為子網路,這些子網路可以專屬於某個區域或可用性網域。區域特定子網域與可用性網域特定子網路可以共存於相同的 VCN 中。子網路可以是公用或專用。

  • 安全清單

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

  • 可用性網域

    可用性網域是區域內獨立的獨立資料中心。每個可用性網域中的實體資源都會與其他可用性網域中的資源隔離,以提供容錯。可用性網域不會共用基礎架構,例如電源、冷卻或內部可用性網域網路。因此,一個可用網域發生故障並不會影響該區域中的其他可用網域。

推薦

您的需求可能會與此處描述的架構不同。使用下列建議作為起點。

  • 運算型態,防禦主機

    防禦主機是用來存取專用子網路中的任何節點。使用 VM.Standard。E2.1 或 VM.Standard。E2.2 資源配置。

  • 運算型態、MGS 以及 MDS

    因為 MGS 不是密集資源,所以您可以在相同的執行處理上代管 MGS 和 MDS。若要確保節點層次中斷不會影響檔案系統,請使用具有高可用性的裸機執行處理。

  • 具有區塊磁碟區和高可用性的裸機運算

    使用 BM.Standard2.52。一對設定了兩個節點。兩個實體網路介面控制器 (NIC) 各有 25-Gbps 網路速度。針對區塊儲存的所有流量使用一個 NIC,並使用另一個 NIC 將內送資料從屬端節點傳送至 OSS 和 MDS 節點。

    使用含多重執行處理連附的區塊磁碟區儲存 (每一部署需求的大小和數目),將磁碟區連附至這兩個計算節點。

  • 運算資源配置,OSS

    我們對 OSS 的建議與 MGS 和 MDS 的建議相同。

  • 運算資源配置,Lustre 從屬端

    根據您的部署計畫選擇虛擬機器 (VM) 資源配置,特別是網路頻寬需求。

    個別從屬端的傳輸量取決於容量。如果您使用 2.5-Gbps 網路頻寬部署 10 個用戶端,則聚總頻寬為 25 Gbps。

  • RAID 組態

    您可以選擇性地使用 RAID 0 設定 DenseIO 資源配置。

    每個 OSS 建立一個 OST 時,請使用 RAID。

    如果您在每個 OSS 使用一個 OST,建議每個 OSS 使用八個區塊磁碟區將傳輸量最大化 (RAID 0 為選擇性)。

    注意:

    Terraform 樣板會使用 DenseIO 或區塊磁碟區建立裸機資源配置。
  • VCN

    建立 VCN 時,請判斷每個子網路中的雲端資源需要多少 IP 位址。使用無類別網域間路由 (CIDR) 表示法,指定足以容納所需 IP 位址的子網路遮罩和網路位址範圍。請使用標準專用 IP 位址區塊內的位址空間。

    選取未與內部部署網路重疊的位址範圍,以便您可以視需要設定 VCN 與內部部署網路之間的連線。

    建立 VCN 之後,您就無法變更其位址範圍。

    設計子網路時,請考量您的功能和安全需求。將同一層或角色內的所有運算執行處理連附至可作為安全界限的相同子網路。

    使用區域子網路。

  • 安全清單

    您可以使用安全清單來定義套用至整個子網路的傳入和傳出規則。例如,此架構允許 ICMP 內部用於整個專用子網路。

注意事項

  • 效能

    若要獲得最佳效能,請選擇具有適當頻寬的正確運算資源配置。

  • 使用狀態

    請考量根據您的建置需求使用高可用性選項。

  • 成本

    裸機服務提供較佳的網路頻寬效能,成本越高。評估您的需求以選擇適當的運算資源配置。

  • 監督和警示

    視需要設定 MGS、MDS 和 OSS 節點的 CPU 和記憶體使用狀況監督和警示,以擴大或縮小 VM 資源配置。

建置

此參照架構的 Terraform 程式碼可作為 Oracle Cloud Infrastructure Resource Manager 中的範例堆疊。您也可以從 GitHub 下載程式碼,然後自訂程式碼以符合您的特定需求。

  • 使用 Oracle Cloud Infrastructure Resource Manager 中的範例堆疊進行部署:
    1. 一下部署到 Oracle Cloud

      如果您尚未登入,請輸入租用戶和使用者證明資料。

    2. 複查並接受條款與條件。
    3. 選取要建置堆疊的區域。
    4. 依照畫面上的提示和指示建立堆疊。
    5. 建立堆疊之後,請按一下 Terraform 動作,然後選取畫。
    6. 等待工作完成,然後複查計劃。

      若要進行任何變更,請返回「堆疊詳細資訊」頁面,按一下編輯堆疊,然後進行必要的變更。然後,再次執行「劃」動作。

    7. 如果不需要進一步的變更,請返回「堆疊詳細資訊」頁面,按一下 Terraform 動作,然後選取用。
  • 使用 GitHub 中的 Terraform 程式碼進行部署:
    1. 前往 GitHub
    2. 將儲存區域複製或下載到您的本機電腦。
    3. 依照 README 文件中的指示進行。