Moosefs分布式文件系統(tǒng)集群講解配置的示例分析

這篇文章給大家介紹Moosefs分布式文件系統(tǒng)集群講解配置的示例分析,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

鄲城網(wǎng)站建設(shè)公司成都創(chuàng)新互聯(lián),鄲城網(wǎng)站設(shè)計制作,有大型網(wǎng)站制作公司豐富經(jīng)驗。已為鄲城超過千家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\外貿(mào)營銷網(wǎng)站建設(shè)要多少錢,請找那個售后服務(wù)好的鄲城做網(wǎng)站的公司定做!

1 管理服務(wù)器(master-server):負(fù)責(zé)各個數(shù)據(jù)存儲服務(wù)器的管理,文件讀寫調(diào)度,文件空間回收以及恢復(fù).多節(jié)點拷貝

2 元數(shù)據(jù)日志服務(wù)器(changelog-server): 負(fù)責(zé)備份master服務(wù)器的變化,(一般情況下可以和管理服務(wù)器放在一起)文件類型為changelog_ml.*.mfs,以便于在master server出問題的時候接替其進(jìn)行工作

3數(shù)據(jù)存儲服務(wù)器(chunk-server):負(fù)責(zé)連接管理服務(wù)器,聽從管理服務(wù)器調(diào)度,提供存儲空間,并為客戶提供數(shù)據(jù)傳輸.

4客戶端(clients): 通過fuse內(nèi)核接口掛接遠(yuǎn)程管理服務(wù)器上所管理的數(shù)據(jù)存儲服務(wù)器,.看起來共享的文件系統(tǒng)和本地unix文件系統(tǒng)使用一樣的效果.

MFS文件系統(tǒng)的讀寫原理:

MFS分布式文件系統(tǒng)搭建:

系統(tǒng)環(huán)境:

RHEL6.4 

selinux is disabled

iptables is flush

一、yum 源定義,用來解決軟件包的依賴性問題

# cat yum.repo  [base]  name=yum baseurl=ftp://192.168.2.234/pub/RHEL6.4  gpgcheck=0 [HA]  name=ha baseurl=ftp://192.168.2.234/pub/RHEL6.4/HighAvailability  gpgcheck=0 [lb]  name=LB baseurl=ftp://192.168.2.234/pub/RHEL6.4/LoadBalancer  gpgcheck=0 [Storage]  name=St baseurl=ftp://192.168.2.234/pub/RHEL6.4/ResilientStorage  gpgcheck=0 [SFS]  name=FS baseurl=ftp://192.168.2.234/pub/RHEL6.4/ScalableFileSystem  gpgcheck=0

二、主機解析準(zhǔn)備

# cat /etc/hosts  192.168.2.88 node1        mfsmaster  192.168.2.89 node2  192.168.2.90 node3  192.168.2.82 node4  192.168.2.85 node5

實驗將用node1作為master-server

node3和node4作為chunk-server

node5作為clients

所有節(jié)點必須有以上準(zhǔn)備

三、安裝準(zhǔn)備

#yum install rpm-build gcc make fuse-devel zlib-devel -y         安裝編譯環(huán)境使用的依賴(其實安裝過程中會提示安裝)

#rpmbuild -tb mfs-1.6.27.tar.gz                              將gz包構(gòu)建成rpm包的方式  注意:包的格式很重要(只支持大的版本)

## ls /root/rpmbuild/RPMS/x86_64/                            生成的rpm包

mfs-cgi-1.6.27-2.x86_64.rpm          mfs-client-1.6.27-2.x86_64.rpm

mfs-cgiserv-1.6.27-2.x86_64.rpm      mfs-master-1.6.27-2.x86_64.rpm

mfs-chunkserver-1.6.27-2.x86_64.rpm  mfs-metalogger-1.6.27-2.x86_64.rpm

1.master-server安裝:

# yum localinstall mfs-cgi-1.6.27-2.x86_64.rpm mfs-master-1.6.27-2.x86_64.rpm mfs-cgiserv-1.6.27-2.x86_64.rpm -y

可以用cgi進(jìn)行頁面監(jiān)控:

master-server:主要文件和目錄

/var/lib/mfs            mfs數(shù)據(jù)目錄

metadata.mfs            mfs啟動文件

/etc/mfs                    主目錄(存儲配置文件)

mfsmaster.cfg            mfs主配置文件(定義相關(guān)參數(shù),用戶、組等設(shè)定)

mfsexports.cfg            mfs被掛接目錄及其權(quán)限控制文件

mfstopology.cfg            定義 MFS 網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的文件

配置文件默認(rèn)不需要修改就可以使用

#chown -R nobody /var/lib/mfs      注意給數(shù)據(jù)目錄以mfs的權(quán)限

# mfsmaster            啟動mfs

#mfsmaster stop            關(guān)閉mfs

#netstat  -antlpe(mfsmaster開啟三個端口:客戶端連接9421端口,監(jiān)聽9422端口;數(shù)據(jù)節(jié)點9420端口)

#/usr/share/mfscgi

#chmod +x  *.cgi            給所有的cgi頁面可執(zhí)行權(quán)限(以便與在web下查看狀態(tài))

# mfscgiserv -------        -》啟動cgi監(jiān)控

http://192.168.2.88:9425/

查看mfs監(jiān)控信息

2.chunk-server安裝配置(node3 and node4)

#rpm -ivh mfs-chunkserver-1.6.27-2.x86_64.rpm

#cd /etc/mfs/

#cp mfschunkserver.cfg.dist mfschunkserver.cfg

# cp mfshdd.cfg.dist mfshdd.cfg

# vim mfshdd.cfg            存儲文件

 /mnt/chunk            真正存儲的目錄(將客戶端/mnt/mfs的文件存儲)

#mkdir /mnt/chunk

#mkdir /var/lib/mfs

#chown nobody /var/lib/mfs/

#chown nobody /mnt/chunk

# mfschunkserver         啟動mfs服務(wù)器(注意,mfsmaster的解析必須到位)

#l.                                    產(chǎn)生一個隱藏鎖文件

.mfschunkserver.lock

3.clients端的安裝與配置;

# yum localinstall mfs-client-1.6.27-2.x86_64.rpm

#cp mfsmount.cfg.dist mfsmount.cfg

#vim mfsmount.cfg

     修改master和分布式目錄/mnt/mfs

#mkdir /mnt/mfs

#mfsmounts        執(zhí)行客戶端掛載

mfsmaster accepted connection with parameters: read-write,restricted_ip ; root mapped to root:root            掛載成功

# df                查看掛載設(shè)備

mfsmaster:9421         6714624         0   6714624   0% /mnt/mfs

# ll -d /mnt/mfs/            掛載后自動讀寫

drwxrwxrwx 2 root root 0 Jun  8 10:29 /mnt/mfs/

測試:MFS測試:

# mkdir hello{1,2}

# ls

hello1  hello2

# mfsdirinfo hello1/

hello1/:

inodes:                          1

directories:                    1

files:                          0

chunks:                          0

length:                          0

size:                            0

realsize:                        0

# mfssetgoal -r 3 hello1/        設(shè)置備份次數(shù)

hello1/:

inodes with goal changed:               1

inodes with goal not changed:           0

inodes with permission denied:          0

# mfsgetgoal hello1/        查看文件備份數(shù)

hello1/: 3

# mfsgetgoal hello2

hello2: 1

#cp /etc/fstab hello1/

# cp /etc/passwd hello2/

# mfsfileinfo /hello/fstab             查看文件具體信息

fstab:

 chunk 0: 000000000000000B_00000001 / (id:11 ver:1)

     copy 1: 192.168.2.82:9422

     copy 2: 192.168.2.90:9422

# mfscheckfile passwd

測試存儲關(guān)系:

# mfsfileinfo fstab

fstab:

 chunk 0: 000000000000000B_00000001 / (id:11 ver:1)

     copy 1: 192.168.2.90:9422

[root@node5 hello1]# mfsfileinfo ../hello2/passwd

../hello2/passwd:

 chunk 0: 000000000000000C_00000001 / (id:12 ver:1)

     no valid copies !!!

客戶端:誤刪除文件(不小心刪除/mnt/mfs/hello*/passwd)

# mfsmount -m /mnt/test/ -H mfsmaster        恢復(fù)目錄掛載到mfsmaster上

mfsmaster accepted connection with parameters: read-write,restricted_ip

# mount

#cd /mnt/test/

## mfscheckfile passwd

# mv 00000005\|hello2\|passwd undel/

直接恢復(fù)到之前的mfs目錄中

# umount /mnt/meta/

mfschunk-server可以自動檢測客戶端的配置文件:

# mfschunkserver stop

在客戶端重新拷貝文件,

#cp /etc/inittab /mnt/mfs/hello1

#mfsgetgoal hello1/fstab        查看文件份數(shù)

#mfsgetgoal hello1/inittab

# mfsfileinfo inittab             剛開始只有一個chukserver,只能保存一份

開啟chunkserver

#mfschunkserver

# mfsfileinfo inittab             查看文件的備份數(shù),恢復(fù)成chunkserver的數(shù)

inittab:

chunk 0: 0000000000000006_00000001 / (id:6 ver:1)

copy 1: 192.168.2.184:9422

copy 2: 192.168.2.185:9422

注意:

在mfsmaster中,正常運行時,數(shù)據(jù)文件為metadata.mfs.back

當(dāng)主機出現(xiàn)故障,數(shù)據(jù)文件會保存成metadata.mfs

使用非正常關(guān)閉,(kill -9  pid) 數(shù)據(jù)文件將不會恢復(fù)

# mfsmetarestore -a-            非正常啟動后會丟失metadata.mfs文件,必須恢復(fù)一下

然后重新啟動mfsmaster(mfsmaster啟動必須有metadata.mfs文件)

關(guān)于Moosefs分布式文件系統(tǒng)集群講解配置的示例分析就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

文章題目:Moosefs分布式文件系統(tǒng)集群講解配置的示例分析
瀏覽路徑:http://muchs.cn/article4/ijoeoe.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供商城網(wǎng)站、做網(wǎng)站標(biāo)簽優(yōu)化、用戶體驗、ChatGPT、App設(shè)計

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站建設(shè)