雲儲存閘道器和OSSFS的使用體驗

2021-09-27 10:28:41 字數 1835 閱讀 5957

最近有需要幫助朋友在阿里雲上搭建一套可以用檔案介面訪問物件儲存的基礎架構,在阿里雲上搜尋了一下,發現了阿里雲上有兩個產品都支援類似的功能- 雲儲存閘道器和ossfs。

雲儲存閘道器(csg)是一款幫助客戶在現有本地應用程式、基礎設施和資料儲存與阿里雲之間實現無縫整合的儲存服務。通過可在本地和雲上部署的相容行業標準儲存協議的虛擬裝置,將現有的儲存應用程式和工作負載鏈結阿里雲儲存服務,無縫對接阿里雲的儲存和計算平台。csg可以提供兩類訪問介面:nas(nfs/cifs)和iscsi。其中nas介面提供標準的網路檔案訪問協議可以支援多台主機同時掛載,以檔案形式訪問oss儲存桶中的檔案。產品形態和aws的storage gateway類似,提供的功能也差不多。

ossfs基於s3fs改造的一款開源軟體,能讓使用者在linux系統中,將物件儲存oss的儲存空間(bucket)掛載到本地檔案系統中,能夠像操作本地檔案一樣操作oss的物件(object),實現資料的共享。

兩者都提供了類似的以檔案形式訪問oss物件的能力,一款是收費產品,乙個是開源產品,那兩者在功能和效能上有何種差異呢?筆者近期對兩款產品進行了試用,基於高效雲盤和相似的配置對兩者做了一些比較。

兩款軟體都提供了檔案介面的支援,就利用一些開源軟體和實際應用對兩者做了一些相容性和效能測試。詳細對比見下面的表。

測試項ossfs

檔案閘道器

posix相容性(pjdfstest)

37%,部分測試造成檔案系統崩潰

99%,測試順利跑完檔案系統無異常

檔案隨機讀寫效能(fio 8kb w70% r30%)

測試未完成,檔案系統錯誤

read:1299

write:3031

檔案查詢效能 (遍歷100萬檔案)

10分鐘未完成,

10s大檔案併發讀寫

不支援,讀寫錯誤。

支援稀疏檔案

不支援支援

windows 訪問

不支援smb共享

linux/macos 訪問

特定linux版本,macos不支援

nfs v3/v4共享,適配macos和99%的linux發行版

多客戶端訪問

不支援最多1024個客戶端

錯誤/故障重傳

不支援支援

支援子目錄掛載

不支援支援

歸檔儲存桶

不支援支援,可透明讀寫

儲存桶加密

不支援支援byok方式

金鑰管理

ak明文儲存, 有安全隱患

雲下例項:加密落盤

雲上例項:ram授權

安裝部署

手動命令列安裝部署

圖形化建立,客戶端直接掛載。

運維監控

無檔案上雲狀態

無支援sls日誌投遞

從安裝部署上看,ossfs需要在指定linux版本上安裝乙個rpm包,並安裝一些依賴的元件,整個過程大概10分鐘左右。雲儲存閘道器的雲上部署,通過圖形化的嚮導操作7-8分鐘可以完成nas的掛載。

從上面的對比和實際操作來看,ossfs適用於比較簡單的單純小規模檔案上傳場景。雲儲存閘道器的檔案閘道器比ossfs提供了更好的檔案效能支援。對於現有的檔案介面的應用可以做到無縫對接,在使用ossfs做對比測試的時候,一旦發生高併發讀寫,ossfs比較容易發生讀寫錯誤或者整體崩潰,尤其是在複製大於100gb的檔案時,曾經反覆折騰了數次。利用雲儲存閘道器,非常順利的成功寫入並上傳到oss乙個1tb的映象檔案。

雲儲存閘道器的檔案閘道器,尤其適合對接傳統的備份軟體的輸出和把oss儲存桶裡的物件以檔案的形式掛載給多台ecs客戶端訪問。同時基於高效雲盤的測試結果,整體的4300+混合讀寫iops也接近了單塊高效雲盤的理論值5000iops,可以承接一些輕負載的業務,例如:小型資料庫,郵件伺服器,小型**和檔案伺服器等場景。

混合雲儲存的寵兒 儲存一體機TStor

隨著各行各業數位化轉型的加速,資料呈指數式增長,公有雲已成為許多使用者的選擇。但出於相容性 資料私密 法規要求等方面的考慮,並非所有資料都能上雲,顯然混合雲模式能完美解決這些問題,混合雲儲存也將會成為主流的儲存模式。平滑擴容,空間利用率高達85 經濟高效,低成本實現雲端容災 雙模運維,靈活部署 ts...

智慧型路燈杆雲盒閘道器的功能和應用

智慧型路燈杆雲盒閘道器,是用在多功能路燈桿上的智慧型通訊一體化整合裝置,主要是給路燈桿上的各類終端外設提供閘道器支援,執行資料採集 本地化資料處理,以及指令控制等工作。開發智慧型路燈杆雲盒閘道器的原因 由於多功能路燈杆承載的業務多樣性,因此對通訊網路的建設要求也比較高 1 智慧型路燈杆的通訊網路要求...

共用體的定義和使用

在 c 語言中,允許幾種不同型別的變數存放到同一段記憶體單元中,也就是使用覆蓋技術,幾個變數互 相覆蓋。這種幾個不同的變數共同占用一段記憶體的結構,被稱為共用體型別結構,簡稱共用體。一般定義 形式為 union 共用體名 變數名表列 只有先定義了共用體變數,才能在後續的程式中引用它。不能直接引用共用...