梁鹏 2018-08-23
MooseFS是一个容错,高可用,高性能,扩展,网络分布式文件系统。它将数据分布在多个物理商品服务器上,这些服务器对用户可视为一个虚拟磁盘。它符合POSIX并且像任何其他类Unix文件系统一样支持:
分布式文件系统是指文件系统管理的物理存储资源不一定直接连接在本地节点上,而是通过计算机网络与节点相连。简单来说,就是把一些分散的(分布在局域网内各个计算机上)共享文件夹,集合到一个文件夹内(虚拟共享文件夹)。对于用户来说,要访问这些共享文件时,只要打开这个虚拟共享文件夹,就可以看到所有链接到虚拟共享文件夹内的共享文件夹,用户感觉不到这些共享文件是分布于各个计算机上的。分布式文件系统的好处是集中访问、简化操作、数据容灾,以及提高文件的存取性能。
MFS是一个具有容错性的网络分布式文件系统,它把数据分散存放在多个物理服务器上,而呈现给用户的则是统一的资源。
systemctl stop firewalld
setenforce 0
主机 | 操作系统 | IP地址 | 主要软件 |
---|---|---|---|
Master Server | CentOS-7-x86_64 | 172.16.10.21 | 使用yum安装 |
MetalLogger Server | CentOS-7-x86_64 | 172.16.10.26 | |
Chunk Server1 | CentOS-7-x86_64 | 172.16.10.27 | |
Chunk Server2 | CentOS-7-x86_64 | 172.16.10.28 | |
Client | CentOS-7-x86_64 | 172.16.10.29 |
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
systemctl start moosefs-master
systemctl enable moosefs-master
netstat -ntap | grep mfs
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 = 172.16.10.21 //地址指向主服务器
systemctl start moosefs-metalogger
systemctl enable moosefs-metalogger
netstat -ntap | grep mfs
项目中的两台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
修改mfschunkserver.cfg
vim /etc/mfs/mfschunkserver.cfg
MASTER_HOST = 172.16.10.21 //在配置文件中修改,将地址指向主服务器
修改mfshdd.cfg
vim /etc/mfs/mfshdd.cfg
/chen //在末行添加共享目录
chown -R mfs:mfs /chen
systemctl start moosefs-chunkserver
systemctl enable moosefs-chunkserver
netstat -ntap | grep mfs
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
modprobe fuse
mkdir /opt/mfs //创建挂载点
mfsmount /opt/mfs/ -H 172.16.10.21 //挂载,地址为master地址
df -h
mfsgetgoal命令用来查询文件被复制的份数,利用-r命令可以对整个目录进行递归,goal是指文件被复制的份数。
mfsgetgoal -r /opt/mfs/
mfssetgoal命令同来设置文件被复制的份数,生产环境中Chunk节点数量应至少大于2,文件副本数量小于等于Chunk服务器数量。
mfssetgoal -r 2 /opt/mfs/
Mfscgiserv是一个用Python编写的web服务器,监听端口是9425,可以在Master Server启动监控,用户利用浏览器就可以全面监控所有客户挂载、Chunk Server、Master Server,以及客户端的各种操作等。
mfscgiserv