Linux的企業-分布式文件系統mfs(moosefs)搭建與配置
一、MFS 特性:
1. Free(GPL)
2. 通用文件系統,不需要修改上層應用就可以使用
3. 可以在線擴容,體系架構可伸縮性極強。
4. 部署簡單。
5. 高可用,可設置任意的文件冗余程度(提供比 raid1+0 更高的冗余級別,而絕對不會影響讀或寫的性能,只會加速)
6. 可回收在指定時間內刪除的文件( “ 回收站 ” 提供的是系統級別的服務,不怕誤操作了,提供類似 oralce 的閃回等高級 dbms 的即時回滾特性)
7. 提供 netapp,emc,ibm 等商業存儲的 snapshot 特性。(可以對整個文件甚至在正在寫入的文件創建文件的快照)
8. google filesystem 的一個 c 實現。
10. 提高隨機讀或寫的效率。
11. 提高海量小文件的讀寫效率。
可能的瓶頸:
1. master 本身的性能瓶頸。mfs 系統 master 存在單點故障如何解決?
moosefs+drbd+heartbeat來保證 master 單點問題?不過在使用過程中不可能完全不關機和間歇性的網絡中斷!
2. 體系架構存儲文件總數的可遇見的上限。(mfs 把文件系統的結構緩存到 master 的內存中,文件越多,master 的內存消耗越大,8g 對應 2500w 的文件數,2 億文件就得 64GB 內存 )。
master 服務器 CPU 負載取決於操作的次數,內存的使用取決於文件和文件夾的個數。
二、MFS 文件系統結構:
包含 4 種角色:
管理服務器 managing server (master)
元數據日誌服務器 Metalogger server(Metalogger)
數據存儲服務器 data servers (chunkservers)
客戶機掛載使用 client computers
各種角色作用:
1. 管理服務器:負責各個數據存儲服務器的管理,文件讀寫調度,文件空間回收以及恢復,多節點拷
貝。
2. 元數據日誌服務器: 負責備份 master 服務器的變化日誌文件,文件類型為changelog_ml.*.mfs,以便於在 master server 出問題的時候接替其進行工作。
3. 數據存儲服務器:負責連接管理服務器,聽從管理服務器調度,提供存儲空間,並為客戶提供數據傳輸。
原始的讀/寫速度很明顯是主要取決於所使用的硬盤的性能、網絡的容量和拓撲結構的,使用的硬
盤和網絡的吞吐量越好,整個系統的性能也就會越好。
三.mfs的安裝配置
1.配置環境
redhat6.5
servre1:master 172.25.50.1 mfsmaster
server2:chunk 172.25.50.2
server2:chunk 172.25.50.3
真機client:172.25.50.250
2.將mfs源碼包變為rpm包安裝
安裝rpm-build軟件
創建rpm包時需要的包依賴
3.在server1上安裝mfsmaster
4.使用mfs分布式文件系統需要做好解析
master端 設置為mfsmaster
5.mfsmaster端無需配置,直接啟動
master端三個端口正常啟動,cgi web圖形端口已經打開
6.在客戶端做好解析,網頁訪問
四.server2和server3配置chunk
1.server2安裝chunk
安裝包依賴
2.server2配置解析
3.配置共享點chunk1
權限限制,在啟動chunk server前,需確保用戶mfs有權限讀寫將要被掛載的分區
4.啟動chunk
查看數據
4.server3上的chunk配置和server2一樣,共享點為chunk2
五.客戶端連接
1.安裝mfs 客戶端軟件,配置解析
2.創建掛載點並掛載mfsmount
3. 在/mnt/mfs創建兩個目錄,並設置其文件存儲份數
將目錄dir1的儲存份數設置為1
4.測試
拷貝passwd文件,查看信息:
dir1一份 在server2上
dir2二份 在server2和server3上
瀏覽器查看server2和server3
註:關閉一個chunkserver2(172.25.50.2)後,dir1無法查看,因為只存了一份在sevrer2上,但dir2沒有影響,因為存了2份,chunkserver2重新啟動後,恢復正常。
Linux的企業-分布式文件系統mfs(moosefs)搭建與配置