天天看點

X-ObjectMount: 對象存儲通路接入的新選擇

作者:XSKY星辰天合

XEOS 自 2017 年釋出面世以來,曆經 7 年的研發疊代,上個月正式釋出了 XSKY SDS 6.4 版本,包含了最新的多站點統一命名空間能力,也标志了 XEOS 在對象存儲領域的全方面優勢和領先市場地位。

在 XSKY 過去對象存儲服務曆程裡,最常見的問題就是客戶在做應用的存儲規劃時,面對檔案存儲和對象存儲的選擇問題。

通常來說,XSKY 會根據應用的目前特點和發展來進行規劃。

針對資料量不大的應用,建議使用 NAS(XGFS 産品)直接使用,一方面可以用較低的開發成本,另一方面也可以也可以獲得較好的性能,同時也可以依賴 NAS 企業級功能,如快照、配額、ACL 等成熟 NAS 功能進行資料管理。

而針對資料量較多,且以非結構化資料為主,未來有容災和 PB 級增長的情況下,推薦使用對象存儲作為存儲類型,使用 AWS S3 作為對象存儲的事實标準進行開發,可以很好的利用 API 的靈活性實作資料細粒度管理。

但是大部分客戶都會面臨中間狀态,即大量的應用無法從 NAS 存儲轉移到 S3,是以對象存儲的業界産品都會有不同方案來承接這部分需求。

01對象存儲接入的選擇

為了充分利用對象存儲的優勢和進階特性,使用 S3 API 接入對象存儲肯定是最佳選擇,但對象存儲的特殊協定給一些傳統應用帶來了較高的接入複雜度。

X-ObjectMount: 對象存儲通路接入的新選擇

企業内部存在大量資料和應用,并非所有應用都能重新開發以适配對象存儲。盡管這些應用的讀寫請求相對簡單,但它們仍希望利用對象存儲的優勢。此外,一些企業需要将資料導入對象存儲的資料湖底座,以供其他應用調用。

為了解決這些問題,需要簡化傳統應用在對象存儲上的接入過程,使其能夠在保持現有工作流的同時,充分利用對象存儲的擴充性和成本效益。這樣不僅可以提升資料管理效率,還能確定企業在技術遷移過程中平穩過渡。

對于上述需求,業界提供了如在對象存儲基礎上架設 NFS 網關和獨立中繼資料的檔案網關并納管對象方案,但它們在實際應用中存在諸多局限性,在生産業務和長期的對象資料湖建設上力不從心。

X-ObjectMount: 對象存儲通路接入的新選擇

對象 NFS 網關方案

對象 NFS 網關是過去對象存儲産品提供的檔案接口方式,主要是通過 NFS 網關服務來實作從 NFS 到 S3 的轉換,業界主流的對象存儲産品都有類似功能,但實際推廣都不佳,主要是該架構的局限性較強:

  • 單網關架構問題:此類方案一般采用單網關架構,在高可用性方面存在顯著不足。當網關出現故障時,故障切換導緻的降級也不如原生 S3 網關,導緻系統可用性大幅降低,進而影響業務連續性;
  • 網絡和 HTTP 開銷大:此類方案無法有效利用用戶端緩存,所有的請求都需要通過網絡并且以 HTTP 協定傳輸,這導緻了較高的網絡開銷和較低的傳輸效率。

獨立中繼資料網關方案

獨立中繼資料網關指的是通過私有檔案用戶端來實作應用的檔案接口接入,通常采用 FUSE 來承接,然後通過獨立的中繼資料服務來管理檔案中繼資料,并且采用對象存儲來進行資料存儲,即中繼資料管理檔案資料的對象索引。

該方案相較于對象 NFS 網關提供了更好的中繼資料支援,使得過去應用對于檔案接口的性能可以最大化保證,但也存在一定的問題:

  • 額外資源開銷:這類方案引入了獨立的中繼資料和緩存系統,這雖然提升了部分性能,但也需要額外的 SSD 和計算資源,進而增加了成本;
  • 協定轉換帶來的問題:這些方案在對接對象存儲時需要進行協定轉換和切片,導緻底層對象存儲對象跟應用看的到檔案不是一一對應關系。這不僅使得底層存儲無法直接提供對象存儲服務,還丢失了底層存儲所具備的功能特性,如對象的生命周期管理、快照、配額管理和資料處理能力。

每種方案都有其優勢和不足,XEOS 在曆經多年後,希望為“合适的”檔案應用提供更友善的接入和簡單運維,在 6.4 版本中推出了 X-ObjectMount 方案,它并不是能夠完美的承接各種各樣的檔案應用,但對于非常适用于對象存儲 IO 模型的檔案應用來說,提供了無損的接入方式。

02X-ObjectMount的設計實作

X-ObjectMount 旨在讓應用通過熟悉的 POSIX 檔案系統 API 來通路和管理對象存儲資料。它部署在業務節點上,作為中間層将對象存儲的 key-value 結構映射到業務節點的檔案和檔案夾層次結構中,使得業務應用可以像使用本地磁盤或者網絡共享一樣操作存儲在 XEOS 中的資料。它将業務應用對挂載目錄的檔案讀寫等操作轉為 S3 協定發送到後端的 XEOS 叢集中,完成資料的總體通路路徑。

X-ObjectMount: 對象存儲通路接入的新選擇

通過這種方式,X-ObjectMount 為合适的檔案應用了提供了無損的對象存儲接入,同時利用用戶端的資源來增加處理資料和緩存的能力,提高了對小檔案和中繼資料操作的性能。

  • 用戶端線性擴充:X-ObjectMount 可以通過用戶端節點數量的增加,來擴充用戶端通路存儲的讀寫性能。每個新增的用戶端節點都能夠分擔部分讀寫壓力,提高整體系統的吞吐量和響應速度;
  • 用戶端緩存:用戶端緩存機制有效地減少了對後端 XEOS 叢集的直接通路次數,提升了資料讀取的速度。通過緩存常用資料和中繼資料資訊,減少了重複請求帶來的延遲,進而加快了業務應用的資料通路速度;
  • 追加寫和高性能重命名:X-ObjectMount 利用 XEOS 的追加寫 API,實作了高效的 POSIX 追加寫能力,使得應用程式能夠快速、連續地寫入資料,而無需重寫整個檔案。這一特性對于日志記錄、大資料處理等場景尤其關鍵,能夠顯著提高資料寫入的效率;

通過 XEOS 的 API,重命名操作隻需要變更中繼資料記錄,而不需要實際搬遷資料。這種方式大幅提高了重命名操作的性能,使得檔案在被重命名時能夠快速響應,減少了延遲。

  • 完善的管理能力:X-ObjectMount 也在管理監控方面做了強化,支援對使用者或應用配置設定存儲配額和設定容量上限,防止資源濫用。與此同時,它還提供監控功能,幫助管理者實時了解挂載點和用戶端的狀态。

03X-ObjectMount 适合的場景案例

X-ObjectMount 并不能解決所有檔案應用對于對象存儲的遷移問題,但在一些合适的場景中表現出來很好的優勢,目前已經在一些種子客戶場景中進行了驗證和上線,以下是幾個典型應用場景的案例。

案例1:AI 資料加載

某個 AI 客戶由于資料集的快速增加,對存儲的成本和穩定性提出了更高的要求,是以引入了 XEOS 作為 AI 海量資料存儲的底座。

在客戶的業務流程中,在發起訓練前需要排程平台将資料從 XEOS 加載到并行檔案系統中進行訓練。在以往的實踐中,這需要排程平台對接 S3 API,通過 S3 将資料從 XEOS 讀取到并行檔案系統中。這種方式需要額外的開發和适配工作,并且無法利用緩存的能力導緻通路性能較低,難以滿足快速增長的資料讀取需求。

通過引入 X-ObjectMount,排程平台隻需要利用 X-ObjectMount 的本地路徑就可以讀取到 XEOS 的資料。這一方式極大地提高了排程平台的對接效率,同時利用 X-ObjectMount 的緩存功能,可以大幅提升資料通路性能。

X-ObjectMount: 對象存儲通路接入的新選擇

方案優勢

  • 簡化資料加載流程:排程平台不再需要單獨對接 S3 API,隻需使用熟悉的本地檔案系統路徑,即可通路 XEOS 中的資料;
  • 提升通路性能:借助 X-ObjectMount 的緩存功能,減少了對後端存儲的直接通路次數,加快了資料讀取速度,滿足了 AI 訓練對快速資料通路的需求;
  • 降低開發和維護成本:通過簡化對接過程,減少了額外的開發和适配工作,降低了系統的整體維護成本。

該 AI 客戶成功通過 X-ObjectMount 實作了資料的高效加載和讀取,大幅提高了 AI 訓練的效率,并顯著降低了存儲和運維成本。

案例2:日志歸集和分析

某客戶的 k8s 平台有大量的應用不斷産生日志,如 nginx、webservice 等。為了将日志集中存儲,便于後續的分析和審計,客戶目前使用定時腳本和任務将日志複制到 NAS 中進行集中存儲。然而,随着叢集規模的不斷增加,NAS 的存儲容量和檔案數量不斷增加,導緻性能出現瓶頸。

為了解決 NAS 的性能瓶頸問題,客戶決定引入 X-ObjectMount 的 CSI 插件,将日志存儲遷移至 XEOS。通過該方案,k8s 叢集中的各個 pod 可以直接将日志寫入 XEOS,而不再依賴 NAS 存儲。這種過渡不僅提升了系統性能,還簡化了日志管理流程。

X-ObjectMount: 對象存儲通路接入的新選擇

方案優勢

  • 提升存儲性能:XEOS 具有高擴充性,能夠支援海量資料存儲。通過直接寫入 XEOS,避免了 NAS 的存儲瓶頸問題,確定系統在高并發場景下仍能保持高性能;
  • 簡化日志收集流程:業務元件的日志可以直接寫入 XEOS,而無需通過定時腳本和任務進行複制。這大大簡化了日志管理的工作量,減少了人為幹預;同時原有的資料分析應用通過 X-ObjectMount 直接通路 XEOS,無需因為引入 XEOS 而改造對接 S3 API。
  • 增強資料分析和審計能力:集中存儲的日志資料可以友善地進行分析和審計。XEOS 的強大管理功能和高性能通路能力,使得日志分析平台和審計業務能夠更高效地擷取和處理日志資料。

案例3:備份資料導入

某個客戶存在大量的備份資料,NAS 存儲成本居高不下,同時在與備份軟體對接中無法做到全鍊路防勒索。為了解決這些問題,客戶決定引入 XEOS 作為新的備份資料存儲解決方案。

通過引入 X-ObjectMount,客戶可以實作備份資料的無縫遷移和管理。X-ObjectMount 的優勢在于無需修改現有備份腳本,隻需替代原有的 NAS 挂載點即可完成遷移。這一方案不僅降低了存儲成本,還增強了資料安全性。

X-ObjectMount: 對象存儲通路接入的新選擇

方案優勢

  • 降低存儲成本:XEOS 提供低成本、高容量的存儲解決方案,顯著降低了備份資料的存儲成本;
  • 全鍊路防勒索:XEOS 擁有完善的對象鎖功能,與 CommVault、都完成了專項認證并推出了聯合方案。引入 XEOS 後,該客戶可以實作業務資料的全鍊路防勒索功能;
  • 無縫遷移:通過 X-ObjectMount 替代 NAS 挂載點,現有的備份腳本無需修改,實作了無縫遷移,大大降低了遷移過程中的複雜度。

小結

作為市場占有率領先的對象存儲産品,XEOS 不斷的适應各類業務需求,提供靈活的解決方案。為了快速響應業務的快速變化,XEOS 不斷演變和優化,確定在不同應用場景中都能高效運作。作為對象存儲産品,支援 S3 API 是基本能力,除了支援基礎的 S3 API,XEOS 還在其基礎上擴充了進階 API:

  • 基礎功能:XEOS 與 AWS S3 的相容性在行業中處于領先地位,確定使用者可以無縫遷移和整合現有系統;
  • WORM:XEOS 完整支援監管模式和合規模式,是國内獲得對象鎖生态認證最多的廠商,提供資料不可變性和防篡改的功能;
  • 快照:為了更好地保護資料,并解決備份廠商或業務擷取對象檔案變化效率低的問題,XEOS 創造性地提供了對象存儲整桶快照以及快照差異 API。這些功能大大提升了資料保護和管理的效率;
  • 除此之外,為了讓阿裡雲客戶更輕松的下雲,XEOS 還和阿裡雲合作适配和 OSS API。

随着 AI 和大語言模型(LLM)的快速發展,資料訓練性能和存儲成本的要求越來越高。在近期釋出的 6.4 版本中,XEOS 與 Alluxio 聯手推出了面向 AI 的聯合方案。

XEOS 與 Alluxio 的深度合作,不僅能顯著加速 AI 資料通路,還利用 XEOS 的海量低成本存儲和靈活的全生命周期管理功能,大幅降低 AI 企業的資料存儲成本。該方案為企業在 AI 資料管理和存儲方面提供了強有力的支援,幫助企業在快速發展的 AI 領域保持競争優勢。

而 X-ObjectMount 的推出,通過結合熟悉的 POSIX 檔案系統 API 和 XEOS 的強大存儲能力,為企業提供了高效、靈活的資料管了解決方案。無論是 AI 資料加載、日志歸集和分析,還是備份資料導入,X-ObjectMount 都表現出了顯著的優勢。

通過實際應用場景的測試和優化,已經證明 X-ObjectMount 可以有效的提高應用對接效率,減少改造工作。

X-ObjectMount: 對象存儲通路接入的新選擇

繼續閱讀