MFS文件系统的组成架构:

如图

 MFS文件系统的组成架构搭建_第1张图片

元数据服务器(Master):负责管理文件系统,维护元数据;

元数据日志服务器(c):备份Master服务器的变化日志文件;

数据存储服务器( Chunk Server):真正存储数据的服务器;

客户端(Client)可像挂载NFS一样挂载MFS文件系统

 

案例环境:

主机

操作系统

Ip地址

主要软件

Master Server

CentOs7.4

192.168.80.181

moosefs-3.0.100-1.tar.gz

MetaLogger Server

CentOs7.4

192.168.80.182

moosefs-3.0.100-1.tar.gz

Chunk Server1

CentOs7.4

192.168.80.183

moosefs-3.0.100-1.tar.gz

Chunk Server2

CentOs7.4

192.168.80.184

moosefs-3.0.100-1.tar.gz

Chunk Server3

CentOs7.4

192.168.80.186

moosefs-3.0.100-1.tar.gz

Client

CentOs7.4

192.168.80.185

moosefs-3.0.100-1.tar.gz

fuse-2.9.2.tar.gz

 

第一步:搭建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

MFS文件系统的组成架构搭建_第2张图片

 

第二步:搭建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       ---编辑配置文件

MFS文件系统的组成架构搭建_第3张图片

/usr/local/mfs/sbin/mfsmaster start    ---启动

netstat -anpt | grep mfs

MFS文件系统的组成架构搭建_第4张图片

第三步:搭建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

 blob.png

其他两台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

 blob.png

优化客户端

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=xa  //注意主机名

MFS文件系统的组成架构搭建_第5张图片