MFS分布式存儲(chǔ)搭建詳解

                                           MFS分布式存儲(chǔ)服務(wù)

10多年的祿勸網(wǎng)站建設(shè)經(jīng)驗(yàn),針對設(shè)計(jì)、前端、開發(fā)、售后、文案、推廣等六對一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。成都全網(wǎng)營銷的優(yōu)勢是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動(dòng)調(diào)整祿勸建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。創(chuàng)新互聯(lián)公司從事“祿勸網(wǎng)站設(shè)計(jì)”,“祿勸網(wǎng)站推廣”以來,每個(gè)客戶項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。

 MFS的作用:

        MFS分布式存儲(chǔ)的目的是為了解決在NFS的短板,多臺(tái)服務(wù)器通過NFS的方式掛載共享

一個(gè)服務(wù)器的存儲(chǔ)空間,使得NFS服務(wù)器不堪重負(fù),經(jīng)常出現(xiàn)超時(shí)的現(xiàn)象,而且NFS存在單點(diǎn)故障,

盡管可以使用rsync同步數(shù)據(jù)到另一臺(tái)服務(wù)器上做備份,但對提高系統(tǒng)性能并無幫助。因此解決方案

采取MFS分布式文件系統(tǒng),服務(wù)器之間的數(shù)據(jù)訪問不再是一對多的關(guān)系,而是多對多的關(guān)系。

  什么是分布式存儲(chǔ):

       分布式原理:通過計(jì)算機(jī)網(wǎng)絡(luò)和節(jié)點(diǎn)相連,簡單的說就是把一些分散的共享文件夾集合到一個(gè)虛擬文

件夾內(nèi)。對于用戶來說,訪問這些共享文件夾只是打開了一個(gè)虛擬文件夾,用戶感受不到這些共享文件夾是分

布于各個(gè)計(jì)算機(jī)上的。分布式文件系統(tǒng)的好處是集中訪問,簡化操作,數(shù)據(jù)容災(zāi),以及提高文件的存取性能。

   MFS原理:

1)MFS文件系統(tǒng)的組成。

● 元數(shù)據(jù)服務(wù)器(master):在整個(gè)體系中負(fù)責(zé)管理文件系統(tǒng),維護(hù)元數(shù)據(jù)。

● 元數(shù)據(jù)日志服務(wù)器(metaLogger):當(dāng)MAster服務(wù)器數(shù)據(jù)丟失或者損壞是,可以從日志服務(wù)器中取得文件,進(jìn)行恢復(fù)。

● 數(shù)據(jù)存儲(chǔ)服務(wù)器(chunkserver):真正存儲(chǔ)數(shù)據(jù)的服務(wù)器。存儲(chǔ)文件時(shí)會(huì)把文件分塊保存。

● 客戶端:可以像掛載MFS文件系統(tǒng)一樣,其操作相同。

2)MFS讀取數(shù)據(jù)的處理過程。

● 客戶端向元數(shù)據(jù)服務(wù)器發(fā)出請求。

● 元數(shù)據(jù)服務(wù)器把所需數(shù)據(jù)存放位置告知客戶端。

●客戶端向已知Chunk server請求發(fā)送數(shù)據(jù)。

●Chunk Server向客戶端發(fā)送數(shù)據(jù)。

3)MFS寫入數(shù)據(jù)的出來過程

● 客戶端向元數(shù)據(jù)服務(wù)器發(fā)送寫入請求

● 元數(shù)據(jù)服務(wù)器與Chunk Server進(jìn)行交互,會(huì)在Chunk Server上創(chuàng)建新分塊Chunks并告知元服務(wù)器。

● 元數(shù)據(jù)服務(wù)器告知客戶端,可以在哪個(gè)Chunk Server的哪個(gè)分塊Chunks上寫入數(shù)據(jù)。

● 客戶端指定Chunk Server寫入數(shù)據(jù)。

● 該Chunk Server與其他Chunk Server進(jìn)行數(shù)據(jù)同步,同步成功告知客戶端寫入成功。

● 客戶端告知元數(shù)據(jù)服務(wù)器本次寫入完畢。


 實(shí)驗(yàn)拓?fù)淙缦拢?/strong>

本實(shí)驗(yàn)使用5臺(tái)服務(wù)器模擬搭建MFS文件系統(tǒng)

     MFS分布式存儲(chǔ)搭建詳解


 實(shí)驗(yàn)環(huán)境:

角色類型操作系統(tǒng)ip地址主要軟件
Master ServerCentos7192.168.60.141moosefs-3.0.100-1.tar.gz
MetaLogger ServerCentos7192.168.60.136moosefs-3.0.100-1.tar.gz
Chunk Server1Centos7192.168.60.143moosefs-3.0.100-1.tar.gz
Chunk Server2Centos7192.168.60.144moosefs-3.0.100-1.tar.gz
ClientCentos7192.168.60.130fuse-2.9.2.tar.gz 、moosefs-3.0.100-1.tar.gz

一、搭建Master Server服務(wù)器

1、解壓、安裝環(huán)境包

tar zxf moosefs-3.0.100-1.tar.gz -C  /opt

yum  install gcc gcc-c++ zlib-devel -y

2、創(chuàng)建用戶、編譯

cd /opt/moosefs-3.0.100/

useradd -s /sbin/nologin mfs     #創(chuàng)建mfs管理用戶

./configure --prefix=/usr/local/mfs \      #編譯

--with-default-user=mfs \             #指定管理用戶

--with-default-group=mfs \          #指定管理組

--disable-mfschunkserver \        #禁用節(jié)點(diǎn)

--disable-mfsmount                   #禁用客戶端掛載

make && make install

3、復(fù)制配置文件

cd /usr/local/mfs/etc/mfs

cp mfsexports.cfg.dist mfsexports.cfg

cp mfsmaster.cfg.dist mfsmaster.cfg

cp mfstopology.cfg.dist mfstopology.cfg

cd /usr/local/mfs/var/mfs/

cp metadata.mfs.empty metadata.mfs

4、優(yōu)化、啟動(dòng)服務(wù)檢測端口

ln -s /usr/local/mfs/sbin/* /usr/local/sbin         #將mfs的命令放到系統(tǒng)中識別

mfsmaster start           #啟動(dòng)mfsmaster

[root@localhost mfs]# netstat -ntap | grep mfs            #看三個(gè)監(jiān)聽端口

tcp        0      0 0.0.0.0:9419            0.0.0.0:*               LISTEN      42551/mfsmaster     

tcp        0      0 0.0.0.0:9420            0.0.0.0:*               LISTEN      42551/mfsmaster     

tcp        0      0 0.0.0.0:9421            0.0.0.0:*               LISTEN      42551/mfsmaster     

二、搭建MetaLogger Server服務(wù)器

1、解壓縮、安裝環(huán)境包

tar zxf moosefs-3.0.100-1.tar.gz -C  /opt

yum  install gcc gcc-c++ zlib-devel -y

2、創(chuàng)建用戶、編譯

cd /opt/moosefs-3.0.100/

useradd -s /sbin/nologin mfs

./configure --prefix=/usr/local/mfs \

--with-default-user=mfs \

--with-default-group=mfs \

--disable-mfschunkserver \             #禁用節(jié)點(diǎn)

--disable-mfsmount                        #禁用客戶端掛載

make && make install

3、復(fù)制配置文件并修改

cd /usr/local/mfs/etc/mfs/

cp mfsexports.cfg.dist mfsexports.cfg

cp mfsmaster.cfg.dist mfsmaster.cfg

cp mfsmetalogger.cfg.dist mfsmetalogger.cfg

vim mfsmetalogger.cfg

MATER_HOST = 192.168.60.141           #找到MATER_HOST模板,ip地址指向master

cd /usr/local/mfs/var/mfs/

cp metadata.mfs.empty metadata.mfs

4、優(yōu)化、啟動(dòng)服務(wù)檢測端口

ln -s /usr/local/mfs/sbin/* /usr/local/sbin/            #將mfs的命令放到系統(tǒng)中識別

mfsmetalogger start          #啟動(dòng)服務(wù)

[root@localhost mfs]# netstat -ntap | grep mfs         #看下狀態(tài)有沒有起來

tcp        0      1 192.168.60.136:55894    220.250.64.225:9419     SYN_SENT    42707/mfsmetalogger 


三、搭建Chunk節(jié)點(diǎn)服務(wù)器

1、解壓、安裝環(huán)境包

tar zxf moosefs-3.0.100-1.tar.gz -C  /opt

yum  install gcc gcc-c++ zlib-devel -y

2、創(chuàng)建用戶,編譯

cd /opt/moosefs-3.0.100/

useradd -s /sbin/nologin mfs

./configure --prefix=/usr/local/mfs \

--with-default-user=mfs \

--with-default-group=mfs \

--disable-mfsmaster \                 #禁用master模式

--disable-mfsmount                   #禁用用戶掛載

make && make install

3、復(fù)制配置文件并修改

cd /usr/local/mfs/etc/mfs

cp mfschunkserver.cfg.dist mfschunkserver.cfg

cp mfshdd.cfg.dist mfshdd.cfg

vim mfschunkserver.cfg

MASTER_HOST = 192.168.60.141     #找到MASTER_HOST模板,IP地址指向master

vim mfshdd.cfg

#etc.

/data               #設(shè)置共享目錄data,需要?jiǎng)?chuàng)建

4、創(chuàng)建共享目錄,更改數(shù)組屬主

mkdir /data

chown -R mfs.mfs /data/

5、優(yōu)化、啟動(dòng)服務(wù)查看端口

ln -s /usr/local/mfs/sbin/* /usr/local/sbin/   #將mfs的命令放到系統(tǒng)中識別

mfschunkserver start        #啟動(dòng)服務(wù)

[root@localhost mfs]# netstat -ntap | grep mfs           #看下狀態(tài)有沒有起來

tcp        0      0 0.0.0.0:9422            0.0.0.0:*               LISTEN      42714/mfschunkserve 

tcp        0      0 192.168.60.144:41774    192.168.60.141:9420     ESTABLISHED 42714/mfschunkserve 

兩臺(tái)節(jié)點(diǎn)服務(wù)器的配置相同,重復(fù)操作即可。

四、搭建客戶端

1、解壓、安裝環(huán)境包

tar zxf moosefs-3.0.100-1.tar.gz -C  /opt

tar zxf fuse-2.9.2.tar.gz -C /opt/

yum  install gcc gcc-c++ zlib-devel -y

2、安裝配置fuse

cd /opt/fuse-2.9.2/

./configuer               #編譯fuse

make & make install

sed -i '$a export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH' /etc/profile  

source /etc/profile

cd /opt/moosefs-3.0.100/        #編譯mfs

useradd mfs -s /sbin/nologin

./configure --prefix=/usr/local/mfs \

--with-default-user=mfs \

--with-default-group=mfs \

--disable-mfsmater \                 #禁用master

--disable-mfschunkserver \      #禁用節(jié)點(diǎn)

--enable-mfsmount                  #開啟用戶掛載

make && make install

3、掛載

mkdir /opt/mfs    #創(chuàng)建掛載目錄

/usr/local/mfs/bin/mfsmount /opt/mfs -H 192.168.60.141   #掛載

df -h                    #查看掛載狀態(tài)

192.168.60.141:9421        33G     0   33G    0% /opt/mfs

4、客戶端一些簡單操作

sed -i '$a export PATH=/usr/local/mfs/bin:$PATH' /etc/profile      #mfs優(yōu)化

source /etc/profile      #刷新環(huán)境變量

cd /opt/mfs

echo "this is test" > test.txt

mfsgetgoal -r /opt/mfs     #mfsgetgoal命令用來查詢文件被復(fù)制的分?jǐn)?shù)

mfssetgoal -r 3 /opt/mfs  #mfssetgoal命令用來設(shè)置文件被復(fù)制的份數(shù)


五、MFS監(jiān)控

在主服務(wù)器上開啟監(jiān)控

[root@localhost mfs]# /usr/local/mfs/sbin/mfscgiserv          

lockfile created and locked

starting simple cgi server (host: any , port: 9425 , rootpath: /usr/local/mfs/share/mfscgi)

http://192.168.60.141:9425     #用它給你的端口進(jìn)行訪問

六、yum安裝MFS擴(kuò)展

MFS也可以用yum進(jìn)行安裝,需要配置yum源

https://moosefs.com/download/   官網(wǎng)各個(gè)系統(tǒng)的介紹,這里我介紹一下centos的安裝

curl "https://ppa.moosefs.com/RPM-GPG-KEY-MooseFS" > /etc/pki/rpm-gpg/RPM-GPG-KEY-MooseFS

curl "http://ppa.moosefs.com/MooseFS-3-el7.repo" > /etc/yum.repos.d/MooseFS.repo

以上兩句話是配置yum倉庫

master服務(wù)器yum安裝操作:

yum install moosefs-master moosefs-cgi moosefs-cgiserv moosefs-cli

chunkserver服務(wù)器yum安裝的操作:

yum install moosefs-chunkserver

MetaLogger Server服務(wù)器yum安裝的操作:

yum install moosefs-metalogger

client端yum安裝的操作:

yum install moosefs-client

修改配置文件的操作和手工編譯的操作相同

名稱欄目:MFS分布式存儲(chǔ)搭建詳解
當(dāng)前鏈接:http://muchs.cn/article48/pipdhp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計(jì)、App設(shè)計(jì)、軟件開發(fā)、云服務(wù)器、定制開發(fā)

廣告

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