分布式存储MooseFS的搭建
?
?
mooseFS是一款網(wǎng)絡(luò)分布式文件系統(tǒng)。它把數(shù)據(jù)分散在多臺(tái)服務(wù)器上,但對(duì)于用戶來(lái)講,看到的只是一個(gè)源。MFS也像其他類unix文件系統(tǒng)一樣,包含了層級(jí)結(jié)構(gòu)(目錄樹),存儲(chǔ)著文件屬性(權(quán)限,最后訪問(wèn)和修改時(shí)間),可以創(chuàng)建特殊的文件(塊設(shè)備,字符設(shè)備,管道,套接字),符號(hào)鏈接,硬鏈接。
MooseFS文件系統(tǒng)結(jié)構(gòu)包括以下四種角色:
1?管理服務(wù)器managing?server?(master)
2?元數(shù)據(jù)日志服務(wù)器Metalogger?server(Metalogger)
3數(shù)據(jù)存儲(chǔ)服務(wù)器data?servers?(chunkservers)
4?客戶機(jī)掛載使用client?computers
原理圖:
搭建的環(huán)境介紹
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
這里使用兩臺(tái)chunk?server,master、metalogger和client各一臺(tái)進(jìn)行測(cè)試,當(dāng)然,如果由于服務(wù)器有限,可以把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、配置編譯參數(shù)
#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、啟動(dòng)前準(zhǔn)備
#cd?/usr/local/mfs/var/mfs
#cp?metadata.mfs.empty?metadata.mfs
#echo?"10.96.153.221?mfsmaster"?>>?/etc/hosts
6、啟動(dòng)mfsmaster
#/usr/local/mfs/sbin/mfsmaster?start
7、監(jiān)控服務(wù)
#/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、配置編譯參數(shù)
#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、啟動(dòng)前準(zhǔn)備
#echo?"10.96.153.221?mfsmaster"?>>?/etc/hosts
6、啟動(dòng)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、配置編譯參數(shù)
#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、創(chuàng)建磁盤(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、啟動(dòng)前準(zhǔn)備
#echo?"10.96.153.221?mfsmaster"?>>?/etc/hosts
#chown?-R?mfs:mfs?/mnt/mfs1
7、啟動(dòng)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、配置編譯參數(shù)
#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、啟動(dòng)前準(zhǔn)備
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維護(hù)
5.1、啟動(dòng)MFS集群
1、啟動(dòng)mfsmaster?進(jìn)程
2、啟動(dòng)所有的mfschunkserver?進(jìn)程
3、啟動(dòng)mfsmetalogger?進(jìn)程(如果配置了mfsmetalogger)
4、當(dāng)所有的chunkservers?連接到MooseFS?master?后,任何數(shù)目的客戶端可以利用mfsmount?去掛接被export?的文件系統(tǒng)。(可以通過(guò)檢查master?的日志或是CGI?監(jiān)視器來(lái)查看是否所有的chunkserver被連接)。
5.2、停止MFS集群
1、在所有的客戶端卸載MooseFS?文件系統(tǒng)(用umount?命令或者是其它等效的命令)
2、用mfschunkserver?stop?命令停止chunkserver?進(jìn)程
3、用mfsmetalogger?stop?命令停止metalogger?進(jìn)程
4、用mfsmaster?stop?命令停止master?進(jìn)程
5.3、MFS?chunkservers?的維護(hù)
若每個(gè)文件的goal(目標(biāo))都不小于2,并且沒(méi)有under-goal?文件(這些可以用mfsgetgoal?–r和mfsdirinfo?命令來(lái)檢查),那么一個(gè)單一的chunkserver?在任何時(shí)刻都可能做停止或者是重新啟動(dòng)。以后每當(dāng)需要做停止或者是重新啟動(dòng)另一個(gè)chunkserver?的時(shí)候,要確定之前的chunkserver?被連接,而且要沒(méi)有under-goal?chunks。
5.4、MFS元數(shù)據(jù)備份
用rsync定時(shí)備份/usr/local/app/soft/mfs/var/mfs/metadata.mfs.back
5.5、MFS?Master的恢復(fù)
mfsmetarestore?-a
5.6、從MetaLogger中恢復(fù)Master
mfsmetarestore?-m?metadata.mfs.back?-o?metadata.mfs?changelog_ml.*.mfs
?
轉(zhuǎn)載于:https://blog.51cto.com/dwlinux/1381213
總結(jié)
以上是生活随笔為你收集整理的分布式存储MooseFS的搭建的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 软件测试流程进阶----两年软件测试总结
- 下一篇: Word2016如何实现横竖混排