MFS分佈式文件系統安裝配置

一、地址規劃

     主控服務器MasterServer:192.168.11.100            安裝Master角色

     元數據日誌服務器MetaLoggerServer:192.168.11.103          安裝metalogger角色

     存儲服務器Chunk Server:192.168.11.102  192.168.11.110        安裝chunkserver角色

     客戶端Client:192.168.11.111               安裝mfsmount角色和fuse掛載工具

     所有節點均配置hosts文件,以便解析mfsmaster

#vi /etc/hosts
192.168.11.100  mfsmaster


二、安裝配置mater管理數據服務(192.168.11.100)

     1、下載

wget http://sourceforge.net/projects/moosefs/files/moosefs-packages/2.0.60/moosefs-packages-2.0.60-centos.tar.gz

     2、創建用戶

useradd mfs -s /sbin/nologin  

     3、安裝

#tar -zxvf moosefs-packages-2.0.60-centos.tar.gz -C src/
#./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs --disable-mfschunkserver --disable-mfsmount
#make && make install

     4、mfs配置文件目錄

wKioL1lllA3DyaY9AAAobDI-wRQ077.png


     5、生成配置文件

#cp /usr/local/mfs/etc/mfs/mfsmaster.cfg.dist /usr/local/mfs/etc/mfs/mfsmaster.cfg     #主配置文件
#cp /usr/local/mfs/etc/mfs/mfsexports.cfg.dist /usr/local/mfs/etc/mfs/mfsexports.cfg    #掛載目錄和權限配置文件
#cp /usr/local/mfs/etc/mfs/mfstopology.cfg.dist /usr/local/mfs/etc/mfs/mfstopology.cfg   #允許chunkserver加入集羣配置
#cp /usr/local/mfs/var/mfs/metadata.mfs.empty /usr/local/mfs/var/mfs/metadata.mfs   #mfs數據文件


     5.1、配置文件詳解(配置文件默認使用#註釋,如不修改註釋的即爲默認配置)

         5.1.1、 配置文件位於安裝目錄/usr/local/mfs/etc,需要的配置文件有兩個:mfsmaster.cfg 和mfsexports.cfg,mfsmaster.cfg 是主配置文件,mfsexports.cfg 是被掛接目錄及權限設置。

          mfsmaster.cfg爲主配置文件

wKioL1lllBzwwyOMAAH4P-FijN4286.png

需要注意的是,凡是用#註釋掉的變量均使用其默認值。以上是對master server 的mfsmaster.cfg 配置文件的解釋,對於這個文件不需要做任何修改就可以工作。

         5.1.2、 mfsexports.cfg 是被掛接目錄及權限配置文件

wKiom1lllDHSQGE2AABH78UW12I484.png

     注:配置文件共有三個部分。

          第一部分:客戶端IP地址

          第二部分:被掛載的目錄

          第三部分:客戶端擁有的權限

     地址可以被指定爲以下幾種形式

*                           所有的ip 地址
n.n.n.n                  單個ip 地址
n.n.n.n/b IP           網絡地址/位數掩碼
n.n.n.n/m.m.m.m   IP網絡地址/子網掩碼
f.f.f.f-t.t.t.t             IP段

     目錄需注意的地方:

/                         表示MooseFS 根;
.                          表示MFSMETA 文件系統

     權限部分:

ro                 只讀模式共享
rw                 讀寫的方式共享
alldirs            許掛載任何指定的子目錄
maproot        映射爲root,還是指定的用戶
password       指定客戶端密碼


     5.2、啓動master server

/usr/local/mfs/sbin/mfsmater start

      注:可能會遇到以下錯誤

          5.2.1、mfstopology.cfg不存在。此配置文件是後期版本加入的。cp /usr/local/mfs/etc/mfs/mfstopology.cfg.dist /usr/local/mfs/etc/mfs/mfstopology.cfg即可解決

     wKioL1lllETRpXKcAAA1MTmq_vQ893.png

          2.2.2、metadata.cfg不存在,不能創建數據文件,解決方法:cp /usr/local/mfs/var/mfs/metadata.mfs.empty /usr/local/mfs/var/mfs/metadata.mfs

     wKiom1lllFaw06sgAAAr4HkGAN0467.png

     啓動成功後會有如下提示

wKiom1lllGjTj-2fAABYodxF90A712.png

     啓動完成後在/usr/local/mfs/var/mfs目錄下,之前cp的metadata.mfs配置文件會變成metadata.mfs.back。直到停止服務

     停止master服務命令

/usr/local/mfs/sbin/mfsmaster stop

     2.2.3、爲了監控 MooseFS 當前運行狀態,我們可以運行 CGI 監控服務,這樣就可以用瀏覽器查看整個

     MooseFS 的運行情況:

# //usr/local/mfs/sbin/mfscgiserv

wKiom1lllJeRYd5fAACm1rd1zcA392.png

二、安裝配置元數據日誌服務(192.168.11.103)

     1、創建用戶

useradd mfs -s /sbin/nologin

     2、編譯安裝

#tar -zxvf moosefs-packages-2.0.60-centos.tar.gz -C src/
#./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs --disable-mfschunkserver --disable-mfsmount
#make && make install

     3、生成配置文件

cp mfsmetalogger.cfg.dist mfsmetalogger.cfg

     4、編輯配置文件

 vim mfsmetalogger.cfg
###############################################
# RUNTIME OPTIONS                             #
###############################################
# WORKING_USER = mfs
# WORKING_GROUP = mfs
# SYSLOG_IDENT = mfsmetalogger
# LOCK_MEMORY = 0
# NICE_LEVEL = -19
# FILE_UMASK = 027
# DATA_PATH = /usr/local/mfs/var/mfs
# BACK_LOGS = 50
# BACK_META_KEEP_PREVIOUS = 3
# META_DOWNLOAD_FREQ = 24
###############################################
# MASTER CONNECTION OPTIONS                   #
###############################################
# MASTER_RECONNECTION_DELAY = 5
MASTER_HOST = 192.168.11.100        #如修改爲IP則取消#,如爲默認需添加hosts文件
# MASTER_PORT = 9419
# MASTER_TIMEOUT = 10

     5、啓動mfsmetaloger服務

/usr/local/mfs/sbin/mfsmetalogger start
可能會遇到下面的錯誤
wKioL1lllK3QjoTeAAA3cjzUdGI605.png    原因:元數據日誌服務器會向master服務器發出mfsmaster的請求。因此需要配置hosts文件
    vi /etc/hosts
    192.168.11.100  mfsmaster
再次啓動
wKioL1lllNDheEHYAAAc6cmDL6Q356.png


三、安裝配置chunkserver數據存儲服務器(192.168.11.102  192.168.11.110)

        1、創建用戶

useradd mfs -s /sbin/nologin

     2、編譯安裝

#tar -zxvf moosefs-packages-2.0.60-centos.tar.gz -C src/
#./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs  --with-default-group=mfs --disable-mfsmaster
#make && make install

     配置文件位於安裝目錄/usr/local/mfs/etc ,需要的配置文件有兩個: mfschunkserver.cfg 和mfshdd.cfg,mfschunkserver.cf 是主配置文件,mfshdd.cfg 是服務器用來分配給MFS使用的空間,最好是一個單獨的硬盤或者一個raid 卷,最低要求是一個分區。

     3、生成配置文件

# cp /usr/local/mfs/etc/mfs/mfschunkserver.cfg.dist /usr/local/mfs/etc/mfs/mfschunkserver.cfg
# cp /usr/local/mfs/etc/mfs/mfshdd.cfg.dist /usr/local/mfs/etc/mfs/mfshdd.cfg

     4、編輯mfschunkserver.cfg配置文件

[root@mail etc]# vi mfschunkserver.cfg

# WORKING_USER = mfs
# WORKING_GROUP = mfs
# DATA_PATH = /usr/local/mfs/var/mfs
# LOCK_FILE = /var/run/mfs/mfschunkserver.pid
# SYSLOG_IDENT = mfschunkserver
# BACK_LOGS = 50
# MASTER_RECONNECTION_DELAY = 30
MASTER_HOST = mfsmaster 元數據服務器的名稱或地址,可以是主機名,也可以是ip 地址
MASTER_PORT = 9420
# MASTER_TIMEOUT = 60
# CSSERV_LISTEN_HOST = *
# CSSERV_LISTEN_PORT = 9422 這個監聽端口用於與其它數據存儲服務器間的連接,通常是數據複製
# CSSERV_TIMEOUT = 60
# CSTOCS_TIMEOUT = 60
# HDD_CONF_FILENAME = /usr/local/mfs/etc/mfshdd.cfg 分配給MFS 使用的磁盤空間配置文件的位置

     注:需要添加hosts條目  192.168.11.100  mfsmaster

     5、創建共享目錄,並修改共享配置文件

#mkdir /home/data
#vim /usr/local/mfs/etc/mfs/mfshdd.cfg
    /home/data

     注:這裏的/home/data是給mfs指定的分區,在本機上可以是一個獨立的磁盤掛載目錄。

          需要修改屬主爲mfs

          chown -R mfs:mfs /home/data

     6、啓動mfschunkserver

          啓動時可能會遇到下面的錯誤

wKiom1lllODDKsceAAAZgFZ0Xh8082.png

          原因:乜有對mfs工作目錄寫入的權限

          解決辦法:chown -R mfs:mfs /usr/local/mfs/var/mfs。再次啓動

wKiom1lllPGjRgkkAAA-JxePgFg281.png

     7、停止mfschunkserver

/usr/local/mfs/sbin/mfschunkserver stop



四、客戶端配置(192.168.11.111)

     由於MFS依賴與fuse,所以需要先安裝fuse

     1、下載fuse

#wget http://sourceforge.net/projects/fuse/files/fuse-2.X/2.9.3/fuse-2.9.3.tar.gz

     2、安裝

./configure && make && make install

     3、導入環境變量

#echo 'export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH' >>/etc/profile
#source /etc/profile

     4、安裝mfs

       4.1、創建用戶

useradd mfs -s /sbin/nologin

     4.2、編譯安裝

#tar -zxvf moosefs-packages-2.0.60-centos.tar.gz -C src/
#./configure --prefix=/usr/local/mfs --sysconfdir=/etc --localstatedir=/var/lib --with-default-user=mfs --with-default-group=mfs --disable-mfsmaster --disable-mfschunkserver
#make && make install

     4.3、掛載文件系統

#mkdir /mnt/mfs   #創建掛載點
#/usr/local/mfs/bin/mfsmount /mnt/mfs -H mfsmaster或/usr/local/mfs/bin/mfsmount /mnt/mfs -H 192.168.11.100    #掛載

     4.4、查看掛載信息

wKioL1lllQ_Rzyi3AAAOXtPPIeQ109.png

wKiom1lllRCA_orVAAAK2CEW2hs927.png


五、驗證

     5.2、驗證是否可正常讀寫

cp /etc/hosts /mnt/mfs

     5.3、mfs是通過副本保存文件的。可以指定文件保存的副本數量。

/usr/local/mfs/bin/mfsrsetgoal 3 /mnt/mfs/     #設置保存副本數量爲3份

     5.4、查看設置是否成功

/usr/local/mfs/bin/mfsgetgoal /mnt/mfs/hosts

spacer.gifwKioL1lllTLAcPiTAAALbZidBf8033.png

     5.5、實際的拷貝份數和拷貝到chunkserver節點可以通過mfscheckfile 和mfsfile info 命令來證實

/usr/local/mfs/bin/mfscheckfile /mnt/mfs/hosts

/usr/local/mfs/bin/mfsfileinfo /mnt/mfs/hosts

wKioL1lllVqgPRMHAAAmd8TedgQ283.png

spacer.gif我只有兩臺chunkserver。可以看到,實際拷貝了兩份,存放在兩個chunkserver節點上

     注意:空文件不會拷貝。

     5.6、設置刪除文件後空間回收時間。
     默認回收時間爲7天(604800秒)

# /usr/local/mfs/bin/mfssettrashtime 600 /mnt/mfs
# /usr/local/mfs/bin/mfsgettrashtime 600 /mnt/mfs


六、破壞性測試

     6.1、實驗環境爲兩臺chunkserver,先停止一臺chunkserver。看數據存儲是否正確

wKiom1lllW2AmRN3AAAVkkq_sLI294.png




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章