- Ceph企業級分布式存儲:原理與工程實踐
- 景顯強 龔向宇 黃軍寶
- 615字
- 2021-11-05 10:18:49
2.6.2 CephFS限制因素
首先看一下客戶端訪問CephFS的過程。在CephFS中,客戶端是使用CephFS的所有操作請求的入口。客戶端將元數據讀寫請求發送到活躍的MDS,從中獲取文件元數據,并且安全地緩存元數據和文件數據。
MDS將元數據提供給客戶端,緩存熱的元數據是為了減少對后端元數據池的請求,管理客戶端的緩存是為了保證緩存一致性。CephFS工作過程是,在活躍的MDS之間復制熱的元數據,并將元數據變化信息合并到日志,定期刷新到后端元數據池中,使數據在集群間實時同步,具體如圖2-4所示。
在使用CephFS過程中,我們應注意以下幾點。
(1)采用多MDS節點部署方式
為了使生產環境下的數據可用,你要采用多MDS節點部署方式。部署完成后,MDS節點分為主節點和備節點。當主節點異常時,備節點將接管客戶端的訪問,保證數據持續提供。默認情況下,CephFS僅使用一個活躍的MDS守護進程。但是,你可以給文件系統配置為使用多個活躍的的MDS守護進程,以處理更大的工作負載。

圖2-4 CephFS工作過程
(2)重點保護元數據池
如圖2-4所示,RADOS底層需要提供兩個后端存儲池,其中一個存儲數據,另一個存儲元數據。你在創建MDS的時候,要首先創建這兩個數據池,且一定要做好對存儲數據池的保護,比如采用更高的副本級別,這個池中的任何數據丟失都會導致整個文件系統無法訪問。另外,你也可以考慮使用延遲較低的存儲設備,例如固態驅動器(SSD)磁盤,因為這直接影響到客戶端操作的反饋延遲。
(3)使用一個CephFS
默認情況下,禁止在一個集群中創建多個CephFS,因為創建多個CephFS可能會使得MDS或者客戶端服務異常。
推薦閱讀
- Linux系統架構與運維實戰
- BPEL and Java Cookbook
- 高性能Linux服務器構建實戰:系統安全、故障排查、自動化運維與集群架構
- 深入Linux內核架構與底層原理(第2版)
- Windows Server 2019 Administration Fundamentals
- Windows 7應用入門與技巧
- 計算機系統:基于x86+Linux平臺
- Fedora 12 Linux應用基礎
- AWS SysOps Cookbook
- Learn CUDA Programming
- Drupal 7 Cookbook
- Linux網絡操作系統項目教程(RHEL 7.4/CentOS 7.4)(第3版)(微課版)
- iOS 10快速開發:18天零基礎開發一個商業應用
- Mastering Sass
- 完美應用Ubuntu(第4版)