MFS文件系统安装指南

简介:

 一,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组和用户:


 
 
  1. [root@MFS_Master_246 ~]# groupadd mfs 
  2. [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 检查分区情况。



本文转自1594cqb 51CTO博客,原文链接:http://blog.51cto.com/wolfchen/1125731,如需转载请自行联系原作者


相关文章
|
2月前
|
Kubernetes 容器
基于Ubuntu-22.04安装K8s-v1.28.2实验(三)数据卷挂载NFS(网络文件系统)
基于Ubuntu-22.04安装K8s-v1.28.2实验(三)数据卷挂载NFS(网络文件系统)
140 0
|
7月前
|
域名解析 Unix Linux
AIX上如何正确挂载Linux 的nfs共享目录分享篇
AIX上如何正确挂载Linux 的nfs共享目录分享篇
283 1
|
存储 安全 Unix
Linux文件服务NFS共享存储服务
本篇文章介绍一下NFS共享存储服务实验的步骤以及SSH远程服务的使用。
343 2
|
Ubuntu 安全
Ubuntu 20.04 搭建NFS文件系统
Ubuntu 20.04 搭建NFS文件系统
391 0
|
网络协议 Unix Linux
Linux7 挂载 nfs 远程目录
NFS(Network File System)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源。
|
Linux 网络安全 数据安全/隐私保护
使用SSHFS文件系统远程挂载目录
使用SSHFS文件系统远程挂载目录
使用SSHFS文件系统远程挂载目录
|
存储 Linux 块存储
Linux 远程挂载 Ceph RBD 磁盘
block storage RBD 是 Ceph 的块存储方案,最近需要在一台 Linux 服务器上挂载 Ceph 镜像,做法和 Kubernetes 挂 RBD 很像,但部分操作由于 Kubernetes 在镜像中已经固化了,所以将这次完全自己控制的步骤记录下来,加深对 Ceph 挂载的理解。
2781 0
Linux 远程挂载 Ceph RBD 磁盘
|
Linux 网络安全 开发工具
|
Ubuntu Linux 数据安全/隐私保护
Linux基础命令---exportfs管理挂载的nfs文件系统
exportfs exportfs主要用于管理当前NFS服务器的文件系统。 此命令的适用范围:RedHat、RHEL、Ubuntu、CentOS、Fedora。 1、语法 /usr/sbin/exportfs [-avi] [-o options,.
1478 0