MFS介绍
官网地址:http://www.moosefs.com/
MooseFS是一个具有容错性的网络分布式文件系统。
它把数据分散存放在多个物理服务器上,而呈现给用户的则是一个统一的资源。通用文件系统,不需要修改上层应用就可以使用,通过附加新的计算机或者硬盘可以实现容量的动态扩展,体系架构可伸缩性极强,删除的文件可以根据配置的时间周期进行保留(一个文件系统级别的回收站),高可靠(数据的多个拷贝被存储在不同的计算机上),提供 web 监控接口,提高随机读或写的效率,提高海量小文件的读写效率。但是mfs 把文件系统的结构缓存到 master 的内存中,文件越多,master 的内存消耗越大,8g 对应 2500w 的文件数,2 亿文件就得 64GB 内存。支持特殊文件(块和字符设备、管道以及套接字),符号连接和硬连接。
包括以下四种角色:
角色 | 作用 |
管理服务器 managing server (master) | 负责各个数据存储服务器的管理,文件读写调度,文件空间回收以及恢复.多节点拷贝 |
元数据日志服务器 Metalogger server(Metalogger) | 负责备份 master 服务器的变化日志文件,文件类型为 changelog_ml.*.mfs,以便于在 master server 出问题的时候接替其进行工作 |
数据存储服务器 data servers (chunk servers ) | 听从管理服务器调度,提供存储空间,并为客户提供数据传输.。 真正存储用户数据的服务器。存储文件时,首先把文件分成块,然后这些块在数据服务器 chunkserver之间复 制(复制份数可以手工指定,建议设置副本数为 3)。数据服务器可以是多个,并且数量越多,可使用的“磁盘空间”越大,可靠性也越高。 |
客户机挂载使用 client computers | 挂载进程 mfs 服务器共享出的存储并使用。 通过 fuse 内核接口挂载进程管理服务器上所管理的数据存储服务器共享出的硬盘。 共享的文件系统的用法和 nfs 相似。 使用 MFS 文件系统来存储和访问的主机称为 MFS 的客户端,成功挂接 MFS 文件系统以后,就可以像以前使用 NFS 一样共享这个虚拟性的存储了。 |
实验环境介绍
基本环境表
主机 | 操作系统 | IP地址 | 主要软件 |
Master Server | Centos7.3 | 192.168.137.10 | moosefs.x86_64.0.3.0.101-1 |
Metalogger Server | Centos7.3 | 192.168.137.11 | moosefs.x86_64.0.3.0.101-1 |
Chunk server1 | Centos7.3 | 192.168.137.12 | moosefs.x86_64.0.3.0.101-1 |
Chunk server2 | Centos7.3 | 192.168.137.13 | moosefs.x86_64.0.3.0.101-1 |
Client | Centos7.3 | 192.168.137.14 | moosefs.x86_64.0.3.0.101-1 |
拓扑图
操作步骤
五台虚拟机模拟搭建MFS文件系统
关闭防火墙及selinux
systemctl stop firewalld
setenforce 0
搭建Master Server
安装软件
curl "https://ppa.moosefs.com/RPM-GPG-KEY-MooseFS" > /etc/pki/rpm-gpg/RPM-GPG-KEY-MooseFS //添加键值
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
配置文件解释
cd /etc/mfs/
-rw-r--r--. 1 root root 4057 9月 27 15:18 mfsexports.cfg //输出目录配置文件
-rw-r--r--. 1 root root 4057 7月 20 19:16 mfsexports.cfg.sample
-rw-r--r--. 1 root root 9015 9月 27 15:18 mfsmaster.cfg //Master配置文件
-rw-r--r--. 1 root root 9015 7月 20 19:16 mfsmaster.cfg.sample
-rw-r--r--. 1 root root 1052 9月 27 15:18 mfstopology.cfg //元数据日志
-rw-r--r--. 1 root root 1052 7月 20 19:16 mfstopology.cfg.sample
启动服务
systemctl start moosefs-master
systemctl enable moosefs-master
netstat -ntap | grep mfstcp 0 0 0.0.0.0:9419 0.0.0.0:* LISTEN 6217/mfsmaster
tcp 0 0 0.0.0.0:9420 0.0.0.0:* LISTEN 6217/mfsmaster
tcp 0 0 0.0.0.0:9421 0.0.0.0:* LISTEN 6217/mfsmaster
搭建MetalLogger Server
安装
curl "https://ppa.moosefs.com/RPM-GPG-KEY-MooseFS" > /etc/pki/rpm-gpg/RPM-GPG-KEY-MooseFS //添加键值
curl "http://ppa.moosefs.com/MooseFS-3-el7.repo" > /etc/yum.repos.d/MooseFS.repo //添加适当的库条目
yum install moosefs-metalogger –y
修改配置文件
vim /etc/mfs/mfsmetalogger.cfg
MASTER_HOST = 192.168.137.10 //第52行,去除注释,改地址指向主服务器。
启动服务
systemctl start moosefs-metalogger
systemctl enable moosefs-metalogger
netstat -ntap | grep mfstcp 0 0 192.168.137.11:36766 192.168.137.10:9419 ESTABLISHED 73521/mfsmetalogger
搭建Chunk Server
这两台Chunk Server的搭建步骤是完全相同
安装
curl "https://ppa.moosefs.com/RPM-GPG-KEY-MooseFS" > /etc/pki/rpm-gpg/RPM-GPG-KEY-MooseFS //添加键值
curl "http://ppa.moosefs.com/MooseFS-3-el7.repo" > /etc/yum.repos.d/MooseFS.repo //添加适当的库条目
yum install moosefs-chunkserver –y
修改配置文件
修改一
vim /etc/mfs/mfschunkserver.cfg
MASTER_HOST = 192.168.137.10 //第77行,将地址指向主服务器
修改二
vim /etc/mfs/mfshdd.cfg
/gongxiang //在末行添加共享目录mkdir /gongxiang //创建共享目录
chown -R mfs:mfs /gongxiang //为共享目录授权
启动服务
systemctl start moosefs-chunkserver
systemctl enable moosefs-chunkserver
netstat -ntap | grep mfstcp 0 0 0.0.0.0:9422 0.0.0.0:* LISTEN 71921/mfschunkserve
tcp 0 0 192.168.137.13:59006 192.168.137.10:9420 ESTABLISHED 71921/mfschunkserve
Client的搭建
安装
curl "https://ppa.moosefs.com/RPM-GPG-KEY-MooseFS" > /etc/pki/rpm-gpg/RPM-GPG-KEY-MooseFS //添加键值
curl "http://ppa.moosefs.com/MooseFS-3-el7.repo" > /etc/yum.repos.d/MooseFS.repo //添加适当的库条目
yum install moosefs-client –y
加载fuse模块至内核
modprobe fuse
挂载共享目录
mkdir /opt/mfs //创建挂载点
mfsmount /opt/mfs/ -H 192.168.137.10 //挂载,地址为master地址df –h
文件系统 容量 已用 可用 已用% 挂载点
/dev/sda6 21G 4.1G 17G 20% /
devtmpfs 896M 0 896M 0% /dev
tmpfs 911M 0 911M 0% /dev/shm
tmpfs 911M 11M 900M 2% /run
tmpfs 911M 0 911M 0% /sys/fs/cgroup
/dev/sda2 9.8G 33M 9.8G 1% /opt
/dev/sda3 4.9G 89M 4.8G 2% /home
/dev/sda1 1014M 165M 850M 17% /boot
tmpfs 183M 64K 183M 1% /run/user/1000
tmpfs 183M 0 183M 0% /run/user/0
192.168.137.10:9421 58G 8.1G 50G 14% /opt/mfs
MFS监控
主服务器上开启监控
mfscgiserv
lockfile created and locked
starting simple cgi server (host: any , port: 9425 , rootpath: /usr/share/mfscgi)
访问192.168.137.10:9425 主机地址
填写主服务器地址
界面
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。