欢迎光临
我们一直在努力

MFS - MooseFS 文件存储系统

MFS

MooseFS 文件系统 可以实现RAID 功能;节约成本 实现在线扩展;是一种半分布式文件系统。

一、MFS文件系统的组成:

1、 mfsmaster

  元数据服务器。在整个体系中负责管理管理文件系统,目前MFS只支持一个元数据服务器master,这是一个单点故障,需要一个性能稳定的服务器来充当。希望今后MFS能支持多个master服务器,进一步提高系统的可靠性。

2、 数据存储服务 chunkserver

  存储用户数据的服务器。存储文件时,首先把文件分成块,然后这些块在数据服务器chunkserver之间复制(复制份数可以手工指定,建议设置副本数为3)。数据服务器可以是多个,并且数量越多,可使用的“磁盘空间”越大,可靠性也越高。

3、 MFS客户端

  使用MFS文件系统来存储和访问的主机称为MFS的客户端,成功挂接MFS文件系统以后,就可以像以前使用NFS一样共享这个虚拟性的存储了。元数据服务器安装和配置元数据服务器可以是linux,也可以是unix,你可以根据自己的使用习惯选择操作系统,在我的环境里,我是用freebsd做为MFS元数据的运行平台。GNU源码,在各种类unix平台的安装都基本一致。

二、基础架构  

MFSmaster :10.10.100.101

Metalogger: 10.10.100.102

Metalogger也可以和master在同一台

Chunkserver:10.10.100.103 – 105

Client : IP 

1、yum 安装;设置 yum 源

For EL6 family:

# curl “http://ppa.moosefs.com/MooseFS-3-el6.repo” > /etc/yum.repos.d/MooseFS.repo

MooseFS.repo 需要设置 gpgcheck=0

2、MFSmaster 管理服务器

mfsmaster.cfg  主配置文件

默认开放 9419 9420 9421 9422 端口;

  配置元数据存放位置;

  metadata.mfs 默认的元数据文件 需要放置到设置的DATA_PATH目录;

# cat /etc/mfs/mfsmaster.cfg |grep -v ^$ |grep -v ^#

DATA_PATH = /mfs/data

  mfsexports.cfg 对被挂载目录及其权限配置

mfsexports.cfg 对被挂接目录及其权限进行设置

# cat /etc/mfs/mfsexports.cfg |grep -v ^$ |grep -v ^#

*/rw,alldirs,admin,maproot=0:0

*.rw

  Metalogger — 元数据日志服务器

主配置文件 mfsmetalogger.cfg

  master_host 

# cat /etc/mfs/mfsmetalogger.cfg |grep -v ^$ |grep -v ^#

MASTER_HOST = 10.10.100.101

  配置元数据存放位置;

metadata.mfs 默认的元数据文件 需要放置到设置的DATA_PATH目录;

3、数据存储服务器

# yum install moosefs-chunkserver

  Chunkservers — 数据存储服务器 

  主配置文件 mfschunkserver.cfg

master_host 

master_port

# cat /etc/mfs/mfschunkserver.cfg |grep -v ^$ |grep -v ^#

DATA_PATH = /mfs/data

MASTER_HOST = 10.10.100.101

MASTER_PORT = 9420

  mfshdd.cfg 指定服务器分配给MFS 使用的空间;

  配置MFS 分区 

/mfsdata

chown -R mfs:mfs /mfsdata

# cat /etc/mfs/mfshdd.cfg |grep -v ^$ |grep -v ^#

/mfs/data

  4、port:

9419 元数据日志服务监听端口

9420 chunk server 数据存储服务器连接端地址;

9421 客户端链接挂接链接端口

9422 chunkserver 服务器口 

9425 moosefs-cgiserv  监控客户端的链接状态;

  5、Clients  客户端挂载 需要 fuse 插件;

# yum install moosefs-client

# yum install fuse

# modprobe fuse ( 加载 fuse 模块 )

  fuse 设置 /etc/fstab

and then add one of the following entries to your /etc/fstab:

“classic” entry (works with all MooseFS 3.0 and 2.0 verisons):

mfsmount                /mnt/mfs    fuse       defaults    0 0

or “NFS-like” entry (works with MooseFS 3.0.75+):

mfsmaster.host.name:    /mnt/mfs    moosefs    defaults    0 0

三、

  客户端创建挂载点;

mkdir /mnt/mfs

  挂载 MFS

mfsmount /mnt/mfs -H mfsmasterIP 

  ( 有密码就加个 -p 输入密码 ;注意的是 这只是挂载的是同一个元数据服务器IP ;而不是存储服务器的iP;

四、 mfscgiserv 监控客户端链接状态;查看各项状态和服务。

  http://MFSMASTER:PORT/  默认端口 9425 

五、源码编译

# useradd mfs -s /sbin/nologin

# wget http://ftp5.gwdg.de/pub/linux/archlinux/extra/os/x86_64//fuse2-2.9.7-3-x86_64.pkg.tar.xz

# wget http://ppa.moosefs.com/src/moosefs-3.0.91-1.tar.gz

  1、管理服务 元数据服务 存储服务 针对不同的服务起:

mfsmaster

mfschunkserver

mfsmetalogger 

chown -R mfs:mfs /usr/local/mfs

cd /usr/local/mfs

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

make &&make install

  2、MFS 客户端;

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

# make &&make install

赞(0)
【声明】:本博客不参与任何交易,也非中介,仅记录个人感兴趣的主机测评结果和优惠活动,内容均不作直接、间接、法定、约定的保证。访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。