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
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-mfschunkserver \
--disable-mfsmount
make && make install
拷贝相关配置模板:
cd /usr/local/mfs/etc/mfs/
cp mfsmaster.cfg.sample mfsmaster.cfg
cp mfsexports.cfg.sample mfsexports.cfg
cp mfstopology.cfg.sample mfstopology.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 mfsexports.cfg.sample mfsexports.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 //注意主机名
实验结束!
来源:51CTO
作者:姚一凡
链接:https://blog.51cto.com/13490688/2092672