一 MFS介绍:

Distinctive features of MooseFS are:

 

MooseFS优越特性如下:

- higher reliability (data can be stored in several copies on separate computers)

高可用性(数据可以存储在多个机器上的多个副本)

 

- dynamically expanding disk space by attaching new computers/disks

可动态扩展随时新增加机器或者是磁盘

 

- possibility of storing deleted files for a defined period of time ("trash bin" service on a file system level)

可回收在指定时间内删除的文件(“垃圾回收站”是一个系统级别的服务)

 

- possibility of creating snapshot of a file, which means coherent copy of the whole file, even while the file is being written.

可以对整个文件甚至在正在写入的文件创建文件的快照。

 

MFS文件系统结构(包含4种角色): 

1)管理服务器managing server (master) :负责各个数据存储服务器的管理,文件读写调度,文件空间回收以及恢复.多节点拷贝。单个机器管理整个文件系统,用来存储记录每一个文件的Metadata(记录文件的大小、文件的属性、文件的位置,也包括非规则文件的系统,如目录、sockets、管道和设备)

 

2)元数据日志服务器Metalogger server(Metalogger):负责备份master服务器的变化日志文件,文件类型为changelog_ml.*.mfs,以便于在master server出问题的时候接替其进行工作。

 

3)数据存储服务器data servers (chunkservers):负责连接管理服务器,听从管理服务器调度,提供存储空间,并为客户提供数据传输。


4)数据存储服务器data servers (chunkservers)  :负责连接管理服务器,听从管理服务器调度,提供存储空间,并为客户提供数据传输。

 

另外一个角色是:

客户机挂载使用client computers  :通过fuse内核接口挂接远程管理服务器上所管理的数据存储服务器,.看起来共享的文件系统和本地unix文件系统使用一样的效果。



二 测试环境说明

os版本:rhel5.7 64位 ,centos6.6 64位

mfs版本:mfs-1.6.27


mfs master服务器:node4(172.16.41.151)

mfs chunkServer服务器:node3,node2

mfs metalogger(日志)服务器:node1

mfs client服务器:node29


三 软件安装:

mfs master服务器安装(node4):

1)创建mfs用户和组:

useradd mfs -s /sbin/nologin 


2)解压mfs压缩包,然后编译:

./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs

make && make install


chomd -R mfs:mfs /usr/local/mfs


3)master服务器需要以下文件:

mfsmaster.cfg  :主文件

mfsexports.cfg  :mfs挂载权限设置,参考NFS文件系统中的exports.cfg

mfstopology.cfg   :机架感知



具体配置如下:

mfsmaster.cfg文件可以不修改,全部按照默认配置即可!

cp -a mfsmaster.cfg.dist mfsmaster.cfg


mfsexports.cfg文件:

cp -a mfsexports.cfg.dist mfsexports.cfg

172.16.41.0/24      /          rw,alldirs,maproot=0

代表让172.16.41.0网段机器可以挂载mfs的根分区;


启动mfsmaster命令:/usr/local/mfs/sbin/mfsmaster start

关闭:mfsmaster:/usr/local/mfs/sbin/mfsmaster -s


chunkserver 安装与配置

在node3和node2服务器上操作:


1)创建mfs用户和组:

useradd mfs -s /sbin/nologin 


2)解压mfs压缩包,然后编译:

./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs

make && make install


chomd -R mfs:mfs /usr/local/mfs


3)chunkserver配置文件如下:

mfschunkserver.cfg   mfschunkserver配置文件

mfshdd.cfg  mfschunkserver上的分区,必须是独立分区!



mfschunkserver.cfg配置如下:

MASTER_HOST = 172.16.41.154   #mfs master服务器ip或者主机名
 MASTER_PORT = 9420


mfshdd.cfg配置:

[root@node3 mfs]# cat mfshdd.cfg

# mount points of HDD drives

/usr/local/mfsdata



启动chunkserver上的服务: /usr/local/mfs/sbin/mfschunkserver start

停止chunkserver上的服务: /usr/local/mfs/sbin/mfschunkserver -s


日志服务器metalogger 配置与搭建:

1)创建mfs用户和组:

useradd mfs -s /sbin/nologin 


2)解压mfs压缩包,然后编译:

./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs

make && make install


chomd -R mfs:mfs /usr/local/mfs


3)mfsmetalogger.cfg文件配置:

其他参数默认,以下参数视实际情况而定:

# 元数据备份下载请求频率,设置为1小时;
 META_DOWNLOAD_FREQ = 1

# MASTER_RECONNECTION_DELAY = 5

 MASTER_HOST = 172.16.41.154
 MASTER_PORT = 9419


启动metalogger节点服务:

启动日志服务:/usr/local/mfs/sbin/mfsmetalogger start

关闭日志服务:/usr/local/mfs/sbin/mfsmetalogger stop


mfs client安装与配置:

mfs client安装依赖与系统包fuse,你可以源码安装也可以yum方式安装

本环境os版本为centOS 6.6 ,通过yum方式安装的!

yum -y install fuse fuse-devel



1)创建mfs用户和组:

useradd mfs -s /sbin/nologin 


2)解压mfs压缩包,然后编译:

./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs --enable-mfsmount

make && make install



3)创建mfs挂载目录:

mkdir /mnt/mfs


4)mfs client 挂载命令:

/usr/local/mfs/bin/mfsmount /mnt/mfs/ -H 172.16.41.154


查看:

wKiom1S11nfR3mIYAADjTPTLFN0233.jpg


至此,mfs已经配置完成!


四 mfs client常用命令:

分布式文件系统mfs(moosefs)搭建与配置_第1张图片


1)设置mfs文件系统中文件的副本个数,本测试案例,设置2份:

mfssetgoal  -r 2 /mnt/mfs/


查看文件份数:

[root@node29 bin]# mfsgetgoal /mnt/mfs/mfs-1.6.27-5.tar.gz

/mnt/mfs/mfs-1.6.27-5.tar.gz: 2


与设置的文件副本数一致!


2)设置回收站清空时间:

mfsrsettrashtime 600 /mnt/mfs/


ps:600的单位为秒,也就是回收站文件存放时间为10分钟。