当前位置: 主页 > 环境部署 > 文件服务器 >

MFS文件系统安装指南

时间:2013-05-25 05:38来源:www.chlinux.net 作者:linux开源技术博客 点击:
一,MFS文件系统概论 MFS是linux下的开源存储系统,是由波兰人开发的。MFS文件系统能够实现RAID的功能,不但能够节约存储成本,而且不逊于专业的存储系统,能够实现在线扩展。MFS是一
欢迎大家分享自己的文档,请点击查阅:分享方法,Linux系统运维
如果你喜欢这文章,可以点击文章结尾处百度分享,分享到你的各种社区收藏,或推荐给朋友……


一,MFS文件系统概论

    MFS是linux下的开源存储系统,是由波兰人开发的。MFS文件系统能够实现RAID的功能,不但能够节约存储成本,而且不逊于专业的存储系统,能够实现在线扩展。MFS是一种半分布式文件系统。

   MFS官网的网络组成及运行原理如下图:

MFS的网络分三部分组成,MASTER SERVER、CHUNK SERVER 和 CLIENT,其中MASTER SERVER只有一个,而CHUNK SERVER 和CLIENT可以有多个。MFS读进程和写进程的工作机制分别如下图:

MFS 读进程工作机制

MFS1.png

MFS的网络分三部分组成,MASTER SERVER、CHUNK SERVER 和 CLIENT,其中MASTER SERVER只有一个,而CHUNK SERVER 和CLIENT可以有多个。MFS读进程和写进程的工作机制分别如下图:

MFS 读进程工作机制

MFSW.png

MFS写进程工作机制

MFSR.png

二、MFS文件系统体系结构

MFS文件系统结构包含4种角色,分别是:

1、管理服务器--MASTER SERVER

2、元数据日志服务器--Metalogger

3、数据存储服务器--CHUNK SERVER

4、客户端

三、MFS的编译与安装实例

安装环境:Centos 6.2 

系统内核:2.6.32-71.el6.x86_64

软件版本:mfs-1.6.15.tar.gz

服务器分配:

S.png

1、主控服务器的安装,在配置过程中(./configure),可以取消安装 chunk server(--disable-mfschunkserver)以及MooseFS客户端(--disable-mfsmount)。安装主控服务器Master的具体步骤如下:

1、添加MFS组和用户:
 
[root@MFS_Master_246 ~]# groupadd mfs 
[root@MFS_Master_246 ~]# useradd -s /sbin/nologin -g mfs -M mfs
 
2、下载软件包并解压安装:
[root@MFS_Master_246 dl]# wget http://ncu.dl.sourceforge.net/project/moosefs/moosefs/1.6.15/mfs-1.6.15.tar.gz 
[root@MFS_Master_246 dl]# tar zxvf  mfs-1.6.15.tar.gz
[root@MFS_Master_246 dl]# cd mfs-1.6.15
[root@MFS_Master_246 mfs-1.6.15]# ./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs 
[root@MFS_Master_246 mfs-1.6.15]# make
[root@MFS_Master_246 mfs-1.6.15]# make install
 
成功安装master后,系统会在/usr/local/mfs/etc 目录自动生成样例配置文件,这些样例配置文件是以.dist后缀命名,这里将借用这些样例文件作为MooseFS主控服务器的目标配置文件:
[root@MFS_Master_246 mfs-1.6.15]# cd /usr/local/mfs/etc/
[root@MFS_Master_246 etc]# cp mfsmaster.cfg.dist mfsmaster.cfg
[root@MFS_Master_246 etc]# cp mfsmetalogger.cfg.dist mfsmetalogger.cfg
[root@MFS_Master_246 etc]# cp mfsexports.cfg.dist mfsexports.cfg
 
要更改这些配置文件中的某些项目的值,则需要打开特定配置文件相关文本行前的注释,然后修改跟随其后的值。因为被注释掉的行,即是MooseFS内置的缺省值。
 
Mfsmaster.cfg配置文件包含主控服务器master相关的设置,在这里我们暂时不打算对其进行修改。
 

mfsexports.cfg配置文件指定那些客户端主机可以远程挂接MooseFS文件系统,以及授予挂接客户端什么样的访问权限。例如,我们指定只有192.168.1.X网段的主机可以以读写模式访问MooseFS的整个共享结构资源(/)。在配置文件mfsexports.cfg文件的第一行,先取消注释,然后把星号(*)改成10.10.11.0/8,以便我们可以得到下面的文本行:

10.10.11.0/8                    /       rw,alldirs,maproot=0

二进制文件metadata和文本文件changelog将被保存在目录 /usr/local/mfs/var/mfs 

注:MooseFS master运行以后,metadata.mfs文件大小将发生变化,肯定不是空文件。

修改主机名和修改/etc/hosts文件,以绑定主机名mfsmaster与IP地址10.10.11.246:

[root@MFS_Master_246 mfs]# hostname mfsmaster   #修改主机名后要重新连接终端才会显示新的主机名

10.10.11.246 mfsmaster   #修改/etc/hosts 文件

启动master服务:[root@mfsmaster ~]# /usr/local/mfs/sbin/mfsmaster start

在生产环境中,我们应当设置自动启动脚本,以便操作系统重新启动时,MooseFS master也能自动运行,为了监控MooseFS当前运行状态,我们可以运行CGI监控服务,这样就可以用浏览器查看整个MooseFS的运行情况:

[root@mfsmaster bin]# /usr/local/mfs/sbin/mfscgiserv

在浏览器中输入:http://10.10.11.246:9425 就能看到master的运行情况,效果如下图所示:

1.png

四、备份服务器Backup server(metalogger)安装
用来安装metalogger的主机,在性能上应该比master 强大(至少有更多的内存),一旦主控服务器master失效,只要导入changelogs到元数据文件,备份服务器metalogger将接替发生故障的master,行使管理服务器的职能。备份服务器Metalogger的安装跟主控服务器master类似,安装命令如下:
 
[root@MFS_Backup_247 bin]# groupadd mfs
[root@MFS_Backup_247 bin]# useradd -s /sbin/nologin -g mfs -M mfs
[root@MFS_Backup_247 dl]# wget wget http://ncu.dl.sourceforge.net/project/moosefs/moosefs/1.6.15/mfs-1.6.15.tar.gz
[root@MFS_Backup_247 dl]# tar zxvf mfs-1.6.15.tar.gz
[root@MFS_Backup_247 mfs-1.6.15]# ./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs
[root@MFS_Backup_247 mfs-1.6.15]# make
[root@MFS_Backup_247 mfs-1.6.15]# make install
 
安装完后 配置文件在 /usr/local/mfs/etc/ 目录下面,配置文件只要mfsmetalogger.cfg
 

[root@MFS_Backup_247 mfs-1.6.15]# cd /usr/local/mfs/etc/

[root@MFS_Backup_247 etc]# cp mfsmetalogger.cfg.dist mfsmetalogger.cfg

类似的修改 /etc/hosts 文件,增加下面的行

10.10.11.246 mfsmaster

启动备份服务mfsmetaloger:

[root@MFS_Backup_247 etc]# /usr/local/mfs/sbin/mfsmetalogger start  

五、存储块服务器Chunk servers 安装
在每个Chunk servers主机上执行下面的命令:
 
[root@mfs_chunk bin]# groupadd mfs
[root@mfs_chunk bin]# useradd -s /sbin/nologin -g mfs -M mfs
[root@mfs_chunk bin]# wget http://ncu.dl.sourceforge.net/project/moosefs/moosefs/1.6.15/mfs-1.6.15.tar.gz
[root@mfs_chunk bin]# tar zxvf mfs-1.6.15.tar.gz
[root@mfs_chunk bin]# cd mfs-1.6.15
[root@mfs_chunk mfs-1.6.15]# ./configure --prefix=/usr/local/mfs --with-default-group=mfs --disable-mfsmaster
[root@mfs_chunk mfs-1.6.15]# make
[root@mfs_chunk mfs-1.6.15]# make install
 
安装完成后配置文件在 /usr/local/mfs/etc/ 目录,准备Chunk server服务所需的配置文件:

[root@mfs_chunk mfs-1.6.15]# cd /usr/local/mfs/etc/

[root@mfs_chunk etc]# cp mfschunkserver.cfg.dist mfschunkserver.cfg

[root@mfs_chunk etc]# cp mfshdd.cfg.dist mfshdd.cfg

为了测试这个安装,我们保留mfschunkserver.cfg文件不错任何改动,

在配置文件mfshdd.cfg中,我们给出了用于客户端挂接MooseFS分布式文件系统根分区所使用的共享空间位置。建议在Chunk server上划分单独的空间给MooseFS使用。这样做的好处是便于管理剩余的空间,此处我们假定要使用两个贡献点/mnt/mfschunks1 和/mnt/mfschunks2,为此我们在mfshdd.cfg加入/mnt/mfschunks1 和 /mnt/mfschunks2。

在启动前 创建这两个目录和确保用户mfs有权限读写将要挂接的分区

[root@mfs_chunk etc]# mkdir /mnt/{mfschunks1,mfschunks2}

[root@mfs_chunk etc]# chown mfs.mfs /mnt/mfschunks1/

[root@mfs_chunk etc]# chown mfs.mfs /mnt/mfschunks2/

修改 /etc/hosts文件增加下面的行,

10.10.11.246 mfsmaster

启动 chunk server:

[root@mfs_chunk ~]# /usr/local/mfs/sbin/mfschunkserver start

现在 在通过浏览器访问:http://10.10.11.246:9425 就可以看到这个MooseFS系统的全部信息,

包括主控master和存储服务器chunkserver

六、客户端User' computers安装

为了挂接基于MooseFS 分布式文件,客户端主机必须安装FUSE软件包(FUSE版本号至少2.6,推荐版本号大于2.7的fuse)。如果系统没安装fuse,你必须手动对其进行安装。在所以客户端上执行如下命令:

安装FUSE:
 
[root@MFS_Client_244 dl]# wget http://nchc.dl.sourceforge.net/project/fuse/fuse-2.X/2.9.2/fuse-2.9.2.tar.gz
[root@MFS_Client_244 dl]# tar zxvf fuse-2.9.2.tar.gz
[root@MFS_Client_244 dl]# cd fuse-2.9.2
[root@MFS_Client_244 fuse-2.9.2]# ./configure
[root@MFS_Client_244 fuse-2.9.2]# make
[root@MFS_Client_244 fuse-2.9.2]# make install
 
安装客户端软件mfsmount的步骤:
[root@MFS_Client_244 dl]# wget http://ncu.dl.sourceforge.net/project/moosefs/moosefs/1.6.15/mfs-1.6.15.tar.gz
[root@MFS_Client_244 dl]# tar zxvf mfs-1.6.15.tar.gz
[root@MFS_Client_244 mfs-1.6.15]# groupadd mfs
[root@MFS_Client_244 mfs-1.6.15]# useradd -s /sbin/nologin -g mfs -M mfs
[root@MFS_Client_244 mfs-1.6.15]# ./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs
[root@MFS_Client_244 mfs-1.6.15]# make
[root@MFS_Client_244 mfs-1.6.15]# make install
 
 
修改/etc/hosts,增加如下行:

10.10.11.246 mfsmaster

假定客户端的挂载点是/mnt/mfs,我们将以下面的指令来使用MooseFS分布式共享文件系统:

1、创建挂载点:[root@MFS_Client_244 ~]# mkdir /mnt/mfs

2、开始挂载操作:[root@MFS_Client_244 mfs-1.6.15]# /usr/local/mfs/bin/mfsmount /mnt/mfs/ -H mfsmaster

用df -h | grep mfs 检查分区情况。

注:本实验全部关闭SELinux和防火墙,参考文献:http://www.moosefs.org/tl_files/manpageszip/moosefs-step-by-step-tutorial-v.1.1.pdf 的内容,

转载请注明linux系统运维
http://www.linuxyw.com/linux/bushu/wenjianfuwuqi/20130428/142.html

------分隔线----------------------------
  • 上一篇:没有了
  • 下一篇:没有了
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
验证码: 点击我更换图片
栏目列表
推荐内容
或许对你有用