MFS分布式文件系統架構實戰
MFS文件系統的組成架構:
如圖
元數據服務器(Master):負責管理文件系統,維護元數據;
元數據日誌服務器(c):備份Master服務器的變化日誌文件;
數據存儲服務器( Chunk Server):真正存儲數據的服務器;
客戶端(Client)可像掛載NFS一樣掛載MFS文件系統
案例環境:
第一步:搭建Master server
準備工作:
service firewalld stop
setenforce 0
yum install -y zlib-devel
groupadd mfs
useradd -s /sbin/nologin -g mfs -M mfs
編譯安裝moosefs
cd /opt/moosefs-3.0.100/
./configure \
--prefix=/usr/local/mfs \
--with-default-user=mfs \
--with-default-group=mfs \
--disable-mfschunkserver \
--disable-mfsmount
make && make install
拷貝相關配置模板:
cd /usr/local/mfs/etc/mfs/
cp mfsmaster.cfg.sample mfsmaster.cfg
cp mfsexports.cfg.sample mfsexports.cfg
cd /usr/local/mfs/var/mfs/
cp metadata.mfs.empty metadata.mfs
chown mfs:mfs /usr/local/mfs/var/mfs ---設置權限
/usr/local/mfs/sbin/mfsmaster start ---啟動
netstat -anpt | grep mfs
第二步:搭建MetaLogger server
與上步到編譯安裝處都一樣操作
下面拷貝配置文件模板:
cd /usr/local/mfs/etc/mfs/
cp mfsmaster.cfg.sample mfsmaster.cfg
cp mfsmetalogger.cfg.sample mfsmetalogger.cfg
cd /usr/local/mfs/var/mfs
mv metadata.mfs.empty metadata.mfs
cd /usr/local/mfs/etc/mfs/
vi mfsmetalogger.cfg ---編輯配置文件
/usr/local/mfs/sbin/mfsmaster start ---啟動
netstat -anpt | grep mfs
第三步:搭建chunkserver
與上步到編譯安裝處都一樣操作
cd /usr/local/mfs/etc/mfs/
cp mfschunkserver.cfg.sample mfschunkserver.cfg
cp mfshdd.cfg.sample mfshdd.cfg
vi mfschunkserver.cfg
MASTER_HOST = 192.168.80.181
vi mfshdd.cfg
/data ---把數據存放在這個目錄
mkdir /data
chown -R mfs:mfs /data
/usr/local/mfs/sbin/mfschunkserver start --啟動
netstat -anpt | grep mfs
其他兩臺chunkserver相同配置即可。
第四步:客戶端配置
service firewalld stop
setenforce 0
yum install -y zlib-devel
tar xzvf fuse-2.9.2.tar.gz
cd fuse-2.9.2
./configure
make && make install
vi /etc/profile
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH
source /etc/profile
安裝mfs客戶端
groupadd mfs
useradd -s /sbin/nologin -g mfs -M mfs
tar xf moosefs-3.0.100-1.tar.gz -C /opt/
cd /opt/moosefs-3.0.100/
./configure \
--prefix=/usr/local/mfs \
--with-default-user=mfs \
--with-default-group=mfs \
--disable-mfsmaster \
--disable-mfschunkserver \
--enable-mfsmount
make && make install
編譯安裝完成
mkdir /opt/mfs
modprobe fuse
/usr/local/mfs/bin/mfsmount /opt/mfs -H 192.168.80.181 //master地址
df -hT
優化客戶端
vi /etc/profile
export PATH=/usr/local/mfs/bin:$PATH
source /etc/profile
mfsgetgoal -r /opt/mfs/ //查看備份目錄中文件的拷貝份數
mfssetgoal -r 3 /opt/mfs/ //設置備份目錄中文件的拷貝份數,不要大於chunkserver的總數
mfsgetgoal 文件名 //查看指定文件或目錄的拷貝份數
-----MASTER-server-----啟動監控程序--
/usr/local/mfs/sbin/mfscgiserv
http://192.168.80.181:9425/mfs.cgi?masterhost=www.aa.com //註意主機名
實驗結束!
MFS分布式文件系統架構實戰