分布式文件系统Moosefs

简介: MooseFS是一个具备冗余容错功能的分布式网络文件系统,它将数据分别存放在多个物理服务器或单独磁盘或分区上,确保一份数据有多个备份副本。对于访问的客户端或者用户来说,整个分布式网络文件系统集群看起来就像一个资源一样。

环境准备
操作系统为:centos linux 6.x
mfs: version: 2.0.88-1

服务器信息:

服务器角色 Ip地址 备注
Metaserver Master 10.168.250.18 主元数据服务器(VIP:10.168.250.33)
Metaserver Slave 10.168.250.19 备元数据服务器
Chunkserver 10.168.250.20 数据存储服务器
Chunkserver 10.168.250.21 数据存储服务器
Moosefs client 10.168.250.22 客户机挂载服务器,测试使用
Moosefs-master安装配置
安装社区版本 Master Server
在10.168.250.18和10.168.250.19上安装Master Server
两台机器上都根据以下方式配置好yum源
1.curl "http://ppa.moosefs.com/RPM-GPG-KEY-MooseFS" > /etc/pki/rpm-gpg/RPM-GPG-KEY-MooseFS

如下图:

2.curl "http://ppa.moosefs.com/MooseFS-2-el6.repo" > /etc/yum.repos.d/MooseFS.repo

如下图:

安装Moosefs-Master
1.yum install moosefs-master moosefs-cli moosefs-cgi moosefs-cgiserv

如下图:

2.修改配置文件:mfsmaster.cfg

Master默认配置文件目录:/etc/mfs
对于要修改的文件,先执行:cp mfsmaster.cfg.dist mfsmaster.cfg

将文件mfsmaster.cfg中的MATOCS_LISTEN_HOST的ip修改为:10.168.250.18。
MATOCS_LISTEN_HOST:用于 chunkserver连接的 IP 地址(默认是*,代表任何IP);
建议修改为chunkserver需要连接的ip地址。

3.修改主机名和IP配置文件:hosts

该文件目录:/etc/hosts

vi /etc/hosts

10.168.250.18 hadoop18.test.com 【注意:后续会修改为VIP】
10.168.250.19 hadoop19.test.com
10.168.250.20 hadoop20.test.com
10.168.250.21 hadoop21.test.com
10.168.250.22 hadoop22.test.com

该文件的IP和网址域名可根据实际情况进行配置

【注意:以上步骤需要在18和19上都进行操作】

4.master启动 和停止

启动命令有两种方式:一、/usr/sbin/mfsmaster start 二、service moosefs-master start

用/usr/sbin/mfsmaster start启动如下图:

检查mfs服务:ps –aux | grep mfs,如下图:

检查mfs监听端口:netstat ntlp,如下图:
master有两种停止命令:/usr/sbin/mfsmaster stop;
service moosefs-master stop

5.监控平台启动和停止

启动命令有两种方式:一、/usr/sbin/mfscgiserv start 二、service moosefs-cgiserv start

用/usr/sbin/mfscgiserv start启动如下图:

检查监控平台监听端口:netstat ntlp,如下图红框处:

master有两种停止命令:/usr/sbin/mfscgiserv stop;
service moosefs-mfscgiserv stop

访问http: //10.168.250.18:9425 ,如下图 【注意:后续以VIP的方式进行访问】

Chunk-server安装配置
在10.168.250.20和10.168.250.21上安装chunk-server
两台机器上都根据以下方式配置好yum源【注意:此步骤与master安装一致】

1.curl "http://ppa.moosefs.com/RPM-GPG-KEY-MooseFS" > /etc/pki/rpm-gpg/RPM-GPG-KEY-MooseFS

如下图:

2.curl "http://ppa.moosefs.com/MooseFS-2-el6.repo" > /etc/yum.repos.d/MooseFS.repo

如下图:

安装chunk-server
1.yum install moosefs-chunkserver
如下图:

2.创建数据存储目录

1)创建mfs属组和用户

/usr/sbin/groupadd mfs
/usr/sbin/useradd mfs -g mfs -s /sbin/nologin

2)创建数据存储目录

mkdir -p /data/mfschunk
chown -R mfs:mfs /data/mfschunk

3.修改配置文件:mfschunkserver.cfg、mfshdd.cfg

chunk-server默认配置文件目录:/etc/mfs
对于要修改的文件,先执行:cp mfschunkserver.cfg.dist mfschunkserver.cfg;
cp mfshdd.cfg.dist mfshdd.cfg;

将文件mfschunkserver.cfg中的MASTER_HOST的ip修改为:10.168.250.18;
在mfshdd.cfg文件中添加目录:/data/mfschunk

4.修改主机名和IP配置文件:hosts

该文件目录:/etc/hosts

vi /etc/hosts

10.168.250.18 hadoop18.test.com 【注意:后续会修改为VIP】
10.168.250.19 hadoop19.test.com
10.168.250.20 hadoop20.test.com
10.168.250.21 hadoop21.test.com
10.168.250.22 hadoop22.test.com

该文件的IP和网址域名可根据实际情况进行配置

【注意:以上步骤需要在18和19上都进行操作】
5.chunk-server启动和停止

启动命令有两种方式:一、/usr/sbin/mfschunkserver start 二、service moosefs-chunkserver start

用/usr/sbin/mfschunkserver start启动如下图:

检查mfs监听端口:netstat ntlp,如下图红框出:
chunkserver有两种停止命令:/usr/sbin/mfschunkserver stop;
service moosefs-cgiserv stop

两台chunkserver启动后,通过监控平台看到的信息如下图:
图1:

图2:

Moosefs-client安装配置
在10.168.250.22上安装Moosefs-client
在10.168.250.22上都根据以下方式配置好yum源【注意:此步骤与master安装一致】

1.curl "http://ppa.moosefs.com/RPM-GPG-KEY-MooseFS" > /etc/pki/rpm-gpg/RPM-GPG-KEY-MooseFS

如下图:

2.curl "http://ppa.moosefs.com/MooseFS-2-el6.repo" > /etc/yum.repos.d/MooseFS.repo

如下图:

安装moosefs-client
1.yum install moosefs-client
如下图:

2.创建数据存储目录和回收站目录

1)创建mfs属组和用户

/usr/sbin/groupadd mfs
/usr/sbin/useradd mfs -g mfs -s /sbin/nologin

(是否需要)

2)创建数据存储目录

mkdir -p /data/mfsdata
mkdir -p /data/mfstrash
chown -R mfs:mfs /data/mfsdata(是否需要)

3.将/data/mfsdata、/data/mfstrash挂载到主moosefs-master(10.168.250.18)上

1)将/data/mfsdata挂载到主moosefs-master(10.168.250.18)上

/usr/bin/mfsmount /data/mfsdata -H 10.168.250.18

2)检查挂载情况,如下图红框处

通过监控平台查看moosefs-client挂载情况,如下图:

【注意:/data/mfstrash的挂载步骤与/data/mfsdata一致】

测试

1.在22上设置文件副本数

/usr/bin/mfsrsetgoal 2 /data/mfsdata
因为chunkserver只用两台,所以副本数为2。副本数以chunkserver个数为准。

2.在22上的/data/mfsdata编写文件

echo 'mytest' > /data/mfsdata/testfile

在/data/mfsdata目录下,生成testfile文件

3.检查文件传输情况

/usr/bin/mfsfileinfo /data/mfsdata/testfile

如下图:

文件被保存到20和21上。

4.检查20和21上文件保存情况

在/data/mfschunk下,执行命令:ls –lrt,如下图红框处

因为我是在15:21分,在22上执行的echo 'mytest' > /data/mfsdata/testfile命令,所以在21和22上显示的时间为15:21分。

相关文章
|
5月前
|
存储 缓存 Linux
GlusterFs分布式文件系统
GlusterFs分布式文件系统
98 8
|
存储 网络协议 开发工具
九爷带你部署Mfs分布式文件系统
Mfs分布式文件系统 前言:前面我们学习过NFS,以及虚拟化课程的时候我们学习过openfiler,这两个都是属于存储服务器。但是他们有着共同的缺点,就是性能不好,因为都是通过共享方式共享一个存储空间,使得服务器不堪重负,会出现超时的问题,而且存在着单点故障问题,尽管可以用rsync同步数据到另外一台服务器上做备份,但性能方便没有任何提升。
790 0
|
Linux 测试技术 存储