目录
官方网站
Download current version of MooseFS | MooseFS Distributed File Systemhttps://moosefs.com/download/
1、配置MFS-master端
以server2为MFS集群的master端,server3/4作为集群的server端,server5作为集群的client端。
安装MFS:
在server2上(注意更改软件源的校验) # curl "http://ppa.moosefs.com/MooseFS-3-el7.repo" > /etc/yum.repos.d/MooseFS.repo # yum install moosefs-master moosefs-cgi moosefs-cgiserv moosefs-cli -y
配置MFS:
由于server2是mfs的master,所以一定要有mfsmaster的解析
# vim /etc/hosts 172.25.254.2 server2 mfsmaster
启动server2的<moosefs-master>和<moosefs-cgiserv.service>服务
# systemctl enable --now moosefs-master tcp 0 0 0.0.0.0:9419 0.0.0.0:* LISTEN 3628/mfsmaster //9419是元数据日志服务器连的 tcp 0 0 0.0.0.0:9420 0.0.0.0:* LISTEN 3628/mfsmaster //9420是mfs集群的其他server端连的 tcp 0 0 0.0.0.0:9421 0.0.0.0:* LISTEN 3628/mfsmaster //9421是client端连的 # systemctl enable --now moosefs-cgiserv.service tcp 0 0 0.0.0.0:9425 0.0.0.0:* LISTEN 3660/python2 ///9425端口是sgi连的
在浏览器访问server2<172.25.254.2:9425>:
2、配置MFS-Chunkservers端
在MFS-server端(server3/4):
安装MFS:
在server3/4上(注意更改软件源的校验) # curl "http://ppa.moosefs.com/MooseFS-3-el7.repo" > /etc/yum.repos.d/MooseFS.repo # yum install moosefs-chunkserver -y
配置MFS的共享目录:
# mkdir /mnt/chunk1 //创建共享文件夹 # chown mfs.mfs /mnt/chunk1 //更改文件夹所有人和所有组 # vim /etc/mfs/mfshdd.cfg //编辑配置文件,在最后添加存储目录 35 /mnt/chunk1
由于server2是mfs的master,所以一定要有指向mfsmaster的解析,
# vim /etc/hosts 172.25.254.2 server2 mfsmaster
启动mfs-server端服务<moosefs-chunkserver>:
# systemctl enable --now moosefs-chunkserver
在浏览器测试:
添加完成后可以看到server3/4两个节点的共享存储信息
3、配置MFS-client端
安装并配置client客户端(server5):
在server5上安装(注意取消软件源校验)
# curl "http://ppa.moosefs.com/MooseFS-3-el7.repo" > /etc/yum.repos.d/MooseFS.repo
# yum install -y moosefs-client //安装mfs客户端
# vim /etc/hosts //设置mfsmaster的解析
172.25.254.2 server2 mfsmaster
# vim /etc/mfs/mfsmount.cfg //编辑客户端配置文件,添加共享目录(这个目录默认没有,需要自己创建)
16 /mnt/mfs
# mkdir /mnt/mfs //创建共享目录
# mfsmount //自动挂载共享目录
# df //查看挂载信息
mfsmaster:9421 35622912 2863424 32759488 9% /mnt/mfs
在client端测试mfs:
# cd /mnt/mfs
# mkdir dir1
# mkdir dir2
# cp /etc/passwd dir1/
# cp /etc/fstab dir2/
# mfsgetgoal dir1/ //查看文件的副本数(有几个server节点就有及各副本数)
dir1/: 2
# mfssetgoal -r 1 dir1/ //更改u文件的副本数为1
# mfsgetgoal dir1/
dir1/: 1
# mfsfileinfo dir1/passwd //查看副本信息
dir1/passwd:
chunk 0: 0000000000000001_00000001 / (id:1 ver:1)
copy 1: 172.25.254.3:9422 (status:VALID)
# mfsfileinfo dir2/fstab
dir2/fstab:
chunk 0: 0000000000000002_00000001 / (id:2 ver:1)
copy 1: 172.25.254.3:9422 (status:VALID)
copy 2: 172.25.254.4:9422 (status:VALID)
官方文档:
常用命令:
查看文件的回收时间,秒,(也就是在回收站的时间)
# mfsgettrashtime ./dir1/passwd
./dir1/passwd: 86400
4、文件标签的使用
(1)设置及更改文件标签
通过存储类可以直接控制数据所在的节点。
在chunk服务器上, 设置mfschunk服务器的标签
[root@server3 ~]# vim /etc/mfs/mfschunkserver.cfg
84 LABELS = A //添加标签为A
[root@server4 ~]# vim /etc/mfs/mfschunkserver.cfg
84 LABELS = B H //添加多个标签为B和H
#添加完成后重新载入配置
[root@server3 ~]# systemctl reload moosefs-chunkserver.service
在mfs客户端上
[root@server5 mfs]# mfsscadmin create A,B class_ab //创建标签类
[root@server5 mfs]# mfssetsclass -r class_ab ./dir2/fstab //将此文件放在带有此标签的chunk节点
[root@server5 mfs]# mfsgetsclass ./dir2/fstab //查询文件标签
./dir2/fstab: 'class_ac'
[root@server5 mfs]# mfsxchgsclass -r class_ac class_ab fstab //更改文件标签
#创建标签类
[root@server5 mfs]# mfsscadmin create AS,BH class_3 //表示在A的固态盘和B的机械盘
[root@server5 mfs]# mfsscadmin create -C 2AS -K AS , BS -A AH , BH -d 30 //表示(-c)在A节点的固态盘上创建2份,(-K)并分别保存在AS和BS中,(-d)30天后(-A)打包到AH和BH
(2)标签类型:
注意:有几个逗号就表示有几个副本,‘AB’表示两个节点共同存储一个副本,‘A+B’表示副本存储在节点A或节点B上
5、mfs集群热备份/高可用
未完待续