分布式存储MooseFS的搭建
?
?
mooseFS是一款網絡分布式文件系統。它把數據分散在多臺服務器上,但對于用戶來講,看到的只是一個源。MFS也像其他類unix文件系統一樣,包含了層級結構(目錄樹),存儲著文件屬性(權限,最后訪問和修改時間),可以創建特殊的文件(塊設備,字符設備,管道,套接字),符號鏈接,硬鏈接。
MooseFS文件系統結構包括以下四種角色:
1?管理服務器managing?server?(master)
2?元數據日志服務器Metalogger?server(Metalogger)
3數據存儲服務器data?servers?(chunkservers)
4?客戶機掛載使用client?computers
原理圖:
搭建的環境介紹
Master?server:?10.96.153.223
Metalogger?server?:?10.96.153.224
chunk?server?:?10.96.153.221?10.96.153.222
client?server?:?10.96.153.225
這里使用兩臺chunk?server,master、metalogger和client各一臺進行測試,當然,如果由于服務器有限,可以把master和metalogger分別放在chunkserver上。
Master?Server安裝
1、下載解壓
#cd?/usr/src
#wget?http://ncu.dl.sourceforge.net/project/moosefs/moosefs/1.6.26/mfs-1.6.26.tar.gz
#tar?xzf?mfs-1.6.26.tar.gz
2、配置編譯參數
#groupadd?mfs
#useradd?-g?mfs?mfs
#cd?mfs-1.6.26/
#./configure?--prefix=/usr/local/mfs?--with-default-user=mfs?--with-default-group=mfs?--disable-mfsmount?--disable-mfschunkserver
3、編譯并安裝
#make
#make?install
4、配置文件
#cd?/usr/local/mfs/etc
#cp?mfsmaster.cfg.dist?mfsmaster.cfg
#cp?mfsexports.cfg.dist?mfsexports.cfg
更改配置文件mfsexports.cfg
10.96.153.0/24?/?rw,alldirs,maproot=0
5、啟動前準備
#cd?/usr/local/mfs/var/mfs
#cp?metadata.mfs.empty?metadata.mfs
#echo?"10.96.153.221?mfsmaster"?>>?/etc/hosts
6、啟動mfsmaster
#/usr/local/mfs/sbin/mfsmaster?start
7、監控服務
#/usr/local/mfs/sbin/mfscgiserv
瀏覽器輸入10.96.153.221:9425
mfsmetalogger搭建
1、下載解壓
#cd?/usr/src
#wget?http://ncu.dl.sourceforge.net/project/moosefs/moosefs/1.6.26/mfs-1.6.26.tar.gz
#tar?xzf?mfs-1.6.26.tar.gz
2、配置編譯參數
#groupadd?mfs
#useradd?-g?mfs?mfs
#cd?mfs-1.6.26/
#./configure?--prefix=/usr/local/mfs?--with-default-user=mfs?--with-default-group=mfs?--disable-mfsmount?--disable-mfschunkserver
3、編譯并安裝
#make
#make?install
4、配置文件
#cd?/usr/local/mfs/etc
#cp?mfsmetalogger.cfg.dist?mfsmetalogger.cfg
5、啟動前準備
#echo?"10.96.153.221?mfsmaster"?>>?/etc/hosts
6、啟動mfsmetalogger
##/usr/local/mfs/sbin/mfsmetalogger?start
Chunk?servers?安裝
1、下載解壓
#cd?/usr/src
#wget?http://ncu.dl.sourceforge.net/project/moosefs/moosefs/1.6.26/mfs-1.6.26.tar.gz
#tar?xzf?mfs-1.6.26.tar.gz
2、配置編譯參數
#groupadd?mfs
#useradd?-g?mfs?mfs
#cd?mfs-1.6.26/
#./configure?--prefix=/usr/local/mfs?--with-default-user=mfs?--with-default-group=mfs?--disable-mfsmount?--disable-mfsmaster
3、編譯并安裝
#make
#make?install
4、創建磁盤(100G)
#dd?if=/dev/zero?of=/mnt/storage/mfschunks1?bs=1024?count=1?seek=$((100*1024*1024-1))?
#mkfs?-t?ext3?/mnt/storage/mfschunks1
#mkdir?-p?/mnt/mfs1?
#mount?-t?ext3?-o?loop?/mnt/storage/mfschunks1?/mnt/mfs1
5、配置文件
#cd?/usr/local/mfs/etc
#cp?mfschunkserver.cfg.dist?mfschunkserver.cfg?
#cp?mfshdd.cfg.dist?mfshdd.cfg
更改配置文件mfshdd.cfg,加入:
/mnt/mfs1
6、啟動前準備
#echo?"10.96.153.221?mfsmaster"?>>?/etc/hosts
#chown?-R?mfs:mfs?/mnt/mfs1
7、啟動chunkserver
##/usr/local/mfs/sbin/mfschunkserver?start
mfsclient安裝
1、下載解壓
#cd?/usr/src
#wget?http://ncu.dl.sourceforge.net/project/moosefs/moosefs/1.6.26/mfs-1.6.26.tar.gz
#tar?xzf?mfs-1.6.26.tar.gz
2、配置編譯參數
#groupadd?mfs
#useradd?-g?mfs?mfs
#cd?mfs-1.6.26/
#./configure?--prefix=/usr/local/mfs?--with-default-user=mfs?--with-default-group=mfs?--disable-mfsmaster--disable-mfschunkserver
3、編譯并安裝
#make
#make?install
4、啟動前準備
mkdir?/mnt/mfs
#echo?"10.96.153.221?mfsmaster"?>>?/etc/hosts
5、開始掛載
#/usr/local/mfs/bin/mfsmount?/mnt/mfs?-H?mfsmaster
6、檢查
df?-h查看輸出
MFS維護
5.1、啟動MFS集群
1、啟動mfsmaster?進程
2、啟動所有的mfschunkserver?進程
3、啟動mfsmetalogger?進程(如果配置了mfsmetalogger)
4、當所有的chunkservers?連接到MooseFS?master?后,任何數目的客戶端可以利用mfsmount?去掛接被export?的文件系統。(可以通過檢查master?的日志或是CGI?監視器來查看是否所有的chunkserver被連接)。
5.2、停止MFS集群
1、在所有的客戶端卸載MooseFS?文件系統(用umount?命令或者是其它等效的命令)
2、用mfschunkserver?stop?命令停止chunkserver?進程
3、用mfsmetalogger?stop?命令停止metalogger?進程
4、用mfsmaster?stop?命令停止master?進程
5.3、MFS?chunkservers?的維護
若每個文件的goal(目標)都不小于2,并且沒有under-goal?文件(這些可以用mfsgetgoal?–r和mfsdirinfo?命令來檢查),那么一個單一的chunkserver?在任何時刻都可能做停止或者是重新啟動。以后每當需要做停止或者是重新啟動另一個chunkserver?的時候,要確定之前的chunkserver?被連接,而且要沒有under-goal?chunks。
5.4、MFS元數據備份
用rsync定時備份/usr/local/app/soft/mfs/var/mfs/metadata.mfs.back
5.5、MFS?Master的恢復
mfsmetarestore?-a
5.6、從MetaLogger中恢復Master
mfsmetarestore?-m?metadata.mfs.back?-o?metadata.mfs?changelog_ml.*.mfs
?
轉載于:https://blog.51cto.com/dwlinux/1381213
總結
以上是生活随笔為你收集整理的分布式存储MooseFS的搭建的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 软件测试流程进阶----两年软件测试总结
- 下一篇: SSH-Struts第四弹:Struts