通过Yum部署MFS分布式文件系统具体步骤

MFS 是一个具有容错性的网络分布式文件系统, 它把数据分散存放在多个物理服务器上,而呈现给用户的则是一个统一的资源,本篇文章重点讲解一下通过Yum部署MFS分布式文件系统具体步骤。

分布式原理

分布式文件系统是指文件系统管理的物理存储资源不一定直接连接在本地节点上,而是通过计算机网络与节点相连。简单来说,就是把一些分散的(分布在局域网内各个计算机上)共享文件夹,集合到一个文件夹内(虚拟共享文件夹)。对于用户来说,要访问这些共享文件时,只要打开这个虚拟共享文件夹,就可以看到所有链接到虚拟共享文件夹内的共享文件夹,用户感觉不到这些共享文件是分布于各个计算机上的。分布式文件系统的好处是集中访问、简化操作、数据容灾,以及提高文件的存取性能。

MFS原理

MFS是一个具有容错性的网络分布式文件系统,它把数据分散存放在多个物理服务器上,而呈现给用户的则是统一的资源。

MFS文件系统的组成
元数据服务器(Master):在整个体系中负责管理文件系统,维护元数据。
元数据日志服务器(Metalogger):备份Master服务器的变化日志文件,文件类型为changelog_ml.*.mfs。当Master服务器数据丢失或损坏时,可以从日志服务器中取得文件,进行恢复。
数据存储服务器(Chunk Server):真正存储数据的服务器。存储文件时,会把文件分块保存,并在数据服务器间进行复制。数据服务器越多,能使用的“容量”也越大,可靠性越高,性能也就越好。
客户端(Client):可以直接挂载MFS文件系统。
MFS读取数据的处理过程
客户端向元数据服务器发出读请求
元数据服务器把所需数据存放的位置(Chunk Server的IP地址和Chunk编号)告知客户端
客户端向已知的Chunk Server请求发送数据
Chunk Server向客户端发送数据
MFS写入数据的处理过程
客户端向元数据服务器发送写入请求
元数据服务器与Chunk Server进行交互(只有当所需的分块Chunk存在的时候才进行交互),但元数据服务器只在某些服务器创建新的分块chunks,创建成功后由Chunk Servers告知元数据服务器操作成功
元数据服务器告知客户端,可以在哪个Chunk Server的那些chunks写入数据
客户端向指定的Chunk Server写入数据
该Chunk Server与其他Chunk Server进行数据同步,同步成功后Chunk Server告知客户端数据写入成功
客户端告知元数据服务器本次写入完毕

MFS优势

高可用性:没有单点故障也称为无SPOF配置。文件系统的元数据在物理冗余服务器上保存为两个或多个副本。用户数据冗余地分布在系统中的存储服务器上。
低成本的数据安全:MooseFS使用户能够节省大量硬盘空间,保持相同的数据冗余级别。在大多数常见情况下,将节省至少55%的硬盘空间.
可扩展性:存储可以扩展到16字节(~16000千兆字节),这使我们可以存储超过20亿个文件
高性能:旨在支持高性能I/O操作。用户数据可以在许多存储节点上同时读取/写入,从而避免单个中央服务器或单个网络连接瓶颈。

环境准备

使用五台服务器模拟搭建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
启动服务
systemctl start moosefs-master
systemctl enable moosefs-master
netstat -ntap | grep mfs

搭建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 = 172.16.10.21  

//地址指向主服务器

启动服务
systemctl start moosefs-metalogger
systemctl enable moosefs-metalogger
netstat -ntap | grep mfs

搭建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

修改配置文件

修改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

安装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 172.16.10.21

//挂载,地址为master地址

查看挂载

df -h

常用操作介绍

mfsgetgoal命令用来查询文件被复制的份数,利用-r命令可以对整个目录进行递归,goal是指文件被复制的份数。

mfsgetgoal -r /opt/mfs/

mfssetgoal命令同来设置文件被复制的份数,生产环境中Chunk节点数量应至少大于2,文件副本数量小于等于Chunk服务器数量。

mfssetgoal -r 2 /opt/mfs/

MFS监控

Mfscgiserv是一个用Python编写的web服务器,监听端口是9425,可以在Master Server启动监控,用户利用浏览器就可以全面监控所有客户挂载、Chunk Server、Master Server,以及客户端的各种操作等。

主服务器上开启监控

mfscgiserv

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/215973.html<

赞 (0)
管理的头像管理
上一篇2025-04-12 12:17
下一篇 2025-04-12 12:19

相关推荐

  • jsp空间购买和交换数据空间怎么买,有哪些注意事项?

    购买JSP空间时,是否考虑过数据交换空间的性能?简米科技(2003年始创,23年行业沉淀)与酷番云(工信部一类增值电信全牌照)这类持牌自营机房的服务商,能确保数据交换的高效稳定,是值得优先选择的合作伙伴,为什么JSP空间需要搭配独立的数据交换空间从JSP应用特性看数据交换需求JSP基于Java技术,常用于企业级……

    2026-08-11
    0
  • 建网站用香港空间效果怎么样,香港空间稳定吗?

    建网站用香港空间,对于创建网站资产来说,核心价值在于免备案和全球带宽优势,尤其适合外贸、跨境电商和需要快速启动的项目,但你必须权衡国内访问延迟,并选择有资质的服务商以保证资产安全,香港空间的核心优势与适用边界免备案:节省时间就是节省成本国内服务器需要备案,通常需要10到20天,香港空间无需备案,域名解析后即可上……

    2026-08-11
    0
  • Java连接云数据库的方法是什么,如何操作

    Java连接云数据库的核心在于通过JDBC驱动,结合云服务商提供的连接地址、端口、数据库名及认证信息,配置安全策略(如SSL、IP白名单),即可实现稳定高效的远程数据库访问,基础准备:JDBC驱动与依赖管理连接云数据库前,需要确保开发环境具备对应的JDBC驱动,以最常见的MySQL为例,你需要引入mysql-c……

    2026-08-11
    0
  • 建网站公安联网备案必须使用数据码吗,备案流程是什么

    网站备案包括ICP备案和公安联网备案,两者缺一不可,公安联网备案必须使用服务商提供的数据码,选择持有合法资质的服务商是顺利通过备案的前提,为什么网站必须进行公安联网备案根据公安部《计算机信息网络国际联网安全保护管理办法》,网站开通后30日内必须到公安机关办理备案手续,未完成公安备案的网站,面临责令整改、关闭网站……

    2026-08-10
    0
  • 建一个企业网站大概需要多少钱?,怎么收费?

    建网站要多少钱,没有一个固定的数字,几百到几万都可能,但真正的“创建网站资产”绝不仅仅是初次投入的成本,而是基于长期稳定、合规和安全的持续性投入,其中核心取决于你选择了什么样的“地基”来承载你的业务,建站预算的构成与行业基准当你开始规划一个网站,最先面对的就是预算问题,一个常见的误区是只关注网站“看起来”的建造……

    2026-08-10
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注