1. 程式人生 > 其它 >Ceph 儲存叢集配置之儲存裝置

Ceph 儲存叢集配置之儲存裝置

有兩個 Ceph 守護程序在裝置上儲存資料:

  • Ceph OSD(或物件儲存守護程序)是 Ceph 中大部分資料的儲存位置。一般來說,每個 OSD 都由單個儲存裝置支援,例如傳統硬碟 (HDD) 或固態硬碟 (SSD)。OSD 也可以由裝置組合支援,例如用於大多數資料的 HDD 和用於某些元資料的 SSD(或 SSD 的分割槽)。叢集中的 OSD 數量通常取決於將儲存多少資料、每個儲存裝置有多大以及冗餘級別和型別(複製或糾刪碼)。

  • Ceph Monitor守護程序管理關鍵的叢集狀態,如叢集成員和身份驗證資訊。對於較小的叢集,只需要幾 GB 即可,但對於較大的叢集,監控資料庫可以達到數十甚至數百 GB。

OSD 後端

OSD 可以通過兩種方式管理它們儲存的資料。從 Luminous 12.2.z 版本開始,新的預設(推薦)後端是 BlueStore。在 Luminous 之前,預設(也是唯一的選項)是 Filestore。

BlueStore

BlueStore 是一個專用儲存後端,專為管理 Ceph OSD 工作負載的磁碟資料而設計。它的靈感來自過去十年使用 FileStore 支援和管理 OSD 的經驗。BlueStore 的主要功能包括:

  • 直接管理儲存裝置。BlueStore 使用原始塊裝置或分割槽。這避免了可能限制性能或增加複雜性的任何中間抽象層(例如 XFS 等本地檔案系統)。

  • 使用 RocksDB 進行元資料管理。我們嵌入 RocksDB 的鍵/值資料庫來管理內部元資料,例如從物件名稱到磁碟上塊位置的對映。

  • 完整的資料和元資料校驗和。預設情況下,寫入 BlueStore 的所有資料和元資料都受一個或多個校驗和保護。未經驗證,不會從磁碟讀取資料或元資料或將資料或元資料返回給使用者。

  • 內聯壓縮。寫入的資料在寫入磁碟之前可以選擇壓縮。

  • 多裝置元資料分層。BlueStore 允許將其內部日誌(預寫日誌)寫入單獨的高速裝置(如 SSD、NVMe 或 NVDIMM)以提高效能。如果有大量更快的儲存可用,內部元資料也可以儲存在更快的裝置上。

  • 高效的寫時複製。RBD 和 CephFS 快照依賴於在 BlueStore 中高效實現的寫時複製克隆機制。這為常規快照和糾刪碼池(依賴克隆來實現高效的兩階段提交)帶來了高效的 IO。

有關詳細資訊,請參閱 BlueStore 配置參考和 BlueStore 遷移。

FileStore

FileStore 是在 Ceph 中儲存物件的傳統方法。它依賴於標準檔案系統(通常是 XFS)和鍵/值資料庫(傳統上是 LevelDB,現在是 RocksDB)來獲取一些元資料。

FileStore 經過良好測試並在生產中廣泛使用,但由於其整體設計和依賴於傳統檔案系統來儲存物件資料,因此存在許多效能缺陷。

儘管 FileStore 通常能夠在大多數與 POSIX 相容的檔案系統(包括 btrfs 和 ext4)上執行,但我們只建議使用 XFS。btrfs 和 ext4 都有已知的錯誤和缺陷,使用它們可能會導致資料丟失。預設情況下,所有 Ceph 配置工具都將使用 XFS。

有關詳細資訊,請參閱檔案儲存配置參考。

作者:Varden 出處:http://www.cnblogs.com/varden/ 本文內容如有雷同,請聯絡作者! 本文版權歸作者和部落格園共有,歡迎轉載,但未經作者同意必須保留此段宣告,且在文章頁面明顯位置給出原文連線,否則保留追究法律責任的權利。