轉自:http://hnr520.blog.51cto.com/4484939/1837619
本文主要關於moosefs的介紹及各節安裝配置
一、mfs介紹
1.角色
(1)管理服務器managing server (master):管理服務器:負責各個數據存儲服務器的管理,文件讀寫調度,文件空間回收以及恢復,多節點拷貝。
(2)元數據日誌服務器Metalogger server(Metalogger):元數據日誌服務器: 負責備份master服務器的變化日誌文件,文件類型爲changelog_ml.*.mfs,以便於在master server出問題的時候接替其進行工作。
(3)數據存儲服務器data servers (chunkservers):數據存儲服務器:負責連接管理服務器,聽從管理服務器調度,提供存儲空間,併爲客戶提供數據傳輸。
(4)客戶機掛載使用client computers:通過fuse內核接口掛接遠程管理服務器上所管理的數據存儲服務器,.看起來共享的文件系統和本地unix文件系統使用一樣的效果。
2.數據讀取過程:
(1)client當需要一個數據時,首先向master server發起查詢請求;
(1)管理服務器檢索自己的數據,獲取到數據所在的可用數據服務器位置ip|port|chunkid;
(2)管理服務器將數據服務器的地址發送給客戶端;
(3)客戶端向具體的數據服務器發起數據獲取請求;
(4)數據服務器將數據發送給客戶端;
3.數據寫過程
(1)當客戶端有數據寫需求時,首先向管理服務器提供文件元數據信息請求存儲地址(元數據信息如:文件名|大小|份數等);
(2)管理服務器根據寫文件的元數據信息,到數據服務器創建新的數據塊;
(2)數據服務器返回創建成功的消息;
(3)管理服務器將數據服務器的地址返回給客戶端(chunkIP|port|chunkid);
(4)客戶端向數據服務器寫數據;
(7)數據服務器返回給客戶端寫成功的消息;
(8)客戶端將此次寫完成結束信號和一些信息發送到管理服務器來更新文件的長度和最後修改時間
二、軟件安裝
IP地址 | 角色 | 系統 | 備註 |
192.168.115.11 | mfsmaster | Centos7 | |
192.168.115.12 | mfsmetalogger | Centos7 | |
192.168.115.13 | mfschunkserver | Centos7 | |
192.168.115.5 | mfsclient | Centos7 |
軟件包:moosefs-ce-2.0.43-1.tar.gz
1. mfsmaster安裝
創建用戶和組
groupadd mfs useradd -g mfs -s /sbin/nologin mfs
編譯安裝軟件
tar -zxf moosefs-ce-2.0.43-1.tar.gz cd moosefs-ce-2.0.43 ./configure--prefix=/usr/local/mfs --sysconfdir=/usr/local/mfs/etc--localstatedir=/usr/local/mfs/lib --with-default-user=mfs--with-default-group=mfs --disable-mfschunkserver --disable-mfsmount make &&make install
修改/usr/local/mfs/lib/mfs下二進制文件的後綴名
mv /usr/local/mfs/lib/mfs/metadata.mfs.empty /usr/local/mfs/lib/mfs/metadata.mfs
提供配置文件
# cd/usr/local/mfs/etc/mfs # mv mfsmaster.cfg.dist mfsmaster.cfg # mv mfsexports.cfg.dist mfsexports.cfg
mfsmaster.cfg主配置文件可使用默認配置
mfsexports.cfg配置客戶端掛載權限
192.168.115.0/24 / rw,alldirs,maproot=0
修改hosts文件
192.168.115.11 mfsmaster
2. mfsmetalogger安裝
創建用戶和組
groupadd mfs useradd -g mfs -s /sbin/nologin mfs
編譯安裝軟件
tar -zxf moosefs-ce-2.0.43-1.tar.gz cd moosefs-ce-2.0.43 # ./configure--prefix=/usr/local/mfs --sysconfdir=/usr/local/mfs/etc--localstatedir=/usr/local/mfs/lib --with-default-user=mfs --with-default-group=mfs--disable-mfschunkserver --disable-mfsmount make &&make install
修改/usr/local/mfs/lib/mfs下二進制文件的後綴名
# mv /usr/local/mfs/lib/mfs/metadata.mfs.empty
提供配置文件
# cd/usr/local/mfs/etc/mfs # mv mfsmetalogger.cfg.dist mfsmetalogger.cfg
修改配置文件
vi mfsmetalogger.cfg MASTER_HOST =mfsmaster #管理服務器 MASTER_PORT = 9419
修改hosts文件
192.168.115.11 mfsmaster
3. mfschunkserver安裝
創建用戶和組
groupadd mfs useradd -g mfs -s /sbin/nologin mfs
編譯安裝軟件
tar -zxf moosefs-ce-2.0.43-1.tar.gz cd moosefs-ce-2.0.43 # ./configure --prefix=/usr/local/mfs --sysconfdir=/usr/local/mfs/etc --localstatedir=/usr/local/mfs/lib--with-default-user=mfs --with-default-group=mfs --disable-mfsmaster make &&make install
提供配置文件
# cd/usr/local/mfs/etc/mfs # mv mfschunkserver.cfg.dist mfschunkserver.cfg # mv mfshdd.cfg.dist mfshdd.cfg
mfschunkserver.cfg:chunkserver主配置文件,連接mfsmaster
mfshdd.cfg:定義chunkserver數據目錄
修改配置文件
vi mfschunkserver.cfg MASTER_HOST =mfsmaster #管理服務器 MASTER_PORT = 9420 mkdir /data/mfs vi /usr/local/mfs/etc/mfs/mfshdd.cfg 增加:/data/mfs
修改hosts文件
192.168.115.11 mfsmaster
創建數據目錄
mkdir /data/mfs chown –R mfs.mfs /data/mfs
4. mfsclient安裝
編譯安裝軟件
tar -zxf moosefs-ce-2.0.43-1.tar.gz cd moosefs-ce-2.0.43 # ./configure--prefix=/usr/local/mfs --sysconfdir=/usr/local/mfs/etc --localstatedir=/usr/local/mfs/lib --disable-mfsmaster --disable-mfschunkserver --enable-mfsmount make &&make install fuse可能版本太低,更新版本,同時yum -y install fuse-devel
修改hosts文件
192.168.115.11 mfsmaster
三、啓動服務
1.192.168.115.11:mfsmaster
#/usr/local/mfs/sbin/mfsmaster start
說明服務已正常啓動
2.192.168.115.12:mfsmetalogger
#/usr/local/mfs/sbin/mfsmetalogger start
3. 192.168.115.13:mfschunkserver
#/usr/local/mfs/sbin/mfschunkserver start
四、客戶端掛載
192.168.115.5:mfsclient
#/usr/local/mfs/bin/mfsmount /mnt/mfs/ -H mfsmaster
#/usr/local/mfs/bin/mfsmount -m /mnt/mfs_trash/ -H mfsmaster #掛載回收站
回收站可將在mfs上刪除的文件恢復回來,默認保留時長爲一天