您的位置:首页 > 其它

MFS文件系统安装指南 推荐

2013-01-24 16:41 351 查看
一,MFS文件系统概论

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

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





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

MFS 读进程工作机制





MFS写进程工作机制





二、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

服务器分配:

角色IP
主控服务器(Master server)10.10.11.246
主控备份服务器(Metalogger server)10.10.11.247
存储块服务器(Chunk server)10.10.11.243
客户端主机(Clients)10.10.11.244
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的运行情况,效果如下图所示:





四、备份服务器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 的内容,更多博文请移步 本人的51cto博客个人博客
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐