MFS分布式文件系统(实例!!!)
发表于:2025-02-04 作者:千家信息网编辑
千家信息网最后更新 2025年02月04日,MFS分布式文件系统mfs工作原理分布式原理分布式文件系统就是把一些分散在多台计算机上的共享文件夹,集合到一个共享文件夹内,用户要访问这些文件夹的时候,只要打开一个文件夹,就可以的看到所有链接到此文件
千家信息网最后更新 2025年02月04日MFS分布式文件系统(实例!!!)
MFS分布式文件系统
mfs工作原理
分布式原理
分布式文件系统就是把一些分散在多台计算机上的共享文件夹,集合到一个共享文件夹内,用户要访问这些文件夹的时候,只要打开一个文件夹,就可以的看到所有链接到此文件夹内的共享文件夹。
MFS原理
MFS是一个具有容错性的网络分布式文件系统,它把数据分散存放在多个物理服务器上,而呈现给用户的则是一个统一的资源。
MFS的组成
- 元数据服务器(Master):在整个体系中负责管理文件系统,维护元数据,目前不支持高可用。
- 元数据日志服务器(MetaLogger):备份Master服务器的变化日志文件,当master服务器损坏,可以从日志服务器中取得文件恢复。
- 数据存储服务器(Chunk Server):真正存储数据的服务器,服务器越多,容量就越大,可靠性越高,性能越好。
- 客户端(Client): 可以像挂载NFS一样 挂载MFS文件系统
MFS读数据的处理过程
- 客户端向元数据服务器发出读请求
- 元数据服务器把所需数据存放的位置(Chunk Server的IP地址和Chunk编号)告知客户端
- 客户端向已知的Chunk Server请求发送数据
- Chunk Server向客户端发送数据
### 写入的过程
- 客户端向元数据服务器发送写入请求
- 元数据服务器与Chunk Server进行交互,但元数据服务器只在某些服务器创建新的分块Chunks,创建成功后由hunk Servers告知元数据服务器操作成功
- 元数据服务器告知客户端,可以在哪个Chunk Server的哪些Chunks写入数据
- 客户端向指定的Chunk Server写入数据
- 该Chunk Server与其他Chunk Server进行数据同步,同步成功后Chunk Server告知客户端数据写入成功
- 客户端告知元数据服务器本次写入完毕
#### 实验环境:|服务器节点名称|IP地址||--|--||master|192.168.45.133||masterlogger|192.168.45.130||chunk1|192.168.45.136||chunk2|192.168.45.134||client|192.168.45.135|
第一步:部署master服务器
#关闭防火墙[root@localhost ~]# systemctl stop firewalld.service [root@localhost ~]# setenforce 0#安装组件[root@localhost ~]# yum install zlib-devel gcc gcc-c++ -y#挂载mfs必要软件包[root@localhost ~]# mount.cifs //192.168.100.3/lzp /mntPassword for root@//192.168.100.3/lzp: [root@localhost ~]# cd /mnt/mfs#解压安装包[root@localhost mfs]# tar zxvf mfs-1.6.27-5.tar.gz -C /opt[root@localhost mfs]# cd /opt/mfs-1.6.27/[root@localhost mfs-1.6.27]# useradd -s /sbin/nologin mfs[root@localhost mfs-1.6.27]# ./configure \--prefix=/usr/local/mfs \ //指定安装目录--with-default-user=mfs \ //指定程序运行用户 --with-default-group=mfs \ //指定程序运行组--disable-mfschunkserver \ //禁用Chunk功能--disable-mfsmount //禁用mfsmount功能[root@localhost mfs-1.6.27]# make && make install#复制文件,配置mfs文件[root@localhost mfs-1.6.27]# cd /usr/local/mfs/etc/mfs/[root@localhost mfs]# cp mfsmaster.cfg.dist mfsmaster.cfg#权限[root@localhost mfs]# cp mfsexports.cfg.dist mfsexports.cfg#日志[root@localhost mfs]# cp mfsmetalogger.cfg.dist mfsmetalogger.cfg[root@localhost mfs]# cd /usr/local/mfs/var/mfs/[root@localhost mfs]# cp metadata.mfs.empty metadata.mfs#修改权限并启动[root@localhost mfs]# chown -R mfs.mfs /usr/local/mfs[root@localhost mfs]# /usr/local/mfs/sbin/mfsmaster start#查看mfs端口是否开启[root@localhost mfs]# ps -ef | grep mfs#启动监控,在所有全部搭建好之后再启动[root@localhost mfs]# /usr/local/mfs/sbin/mfscgiserv#查看服务端口状态[root@localhost mfs]# ps -ef | grep mfs
第二步:部署masterlogger日志节点
#关闭防火墙[root@localhost ~]# systemctl stop firewalld.service [root@localhost ~]# setenforce 0#安装必要组件[root@localhost ~]# yum install zlib-devel gcc gcc-c++ -y#创建用户[root@localhost ~]# useradd mfs -s /sbin/nologin #挂载软件包[root@localhost ~]# mount.cifs //192.168.100.3/lzp /mnt[root@localhost ~]# cd /mnt/mfs#解压安装包[root@localhost mfs]# tar zxvf mfs-1.6.27-5.tar.gz -C /opt[root@localhost mfs]# cd /opt/mfs-1.6.27/[root@localhost mfs-1.6.27]# ./configure \--prefix=/usr/local/mfs \--with-default-user=mfs \--with-default-group=mfs \--disable-mfschunkserver \--disable-mfsmount[root@localhost mfs-1.6.27]# make && make install[root@localhost mfs-1.6.27]# cd /usr/local/mfs/etc/mfs/[root@localhost mfs]# cp mfsmetalogger.cfg.dist mfsmetalogger.cfg[root@localhost mfs]# vim mfsmetalogger.cfg#在第15行开启功能,然后地址指向master服务器地址 MASTER_HOST = 192.168.45.133#修改权限并启动[root@localhost mfs]# chown -R mfs.mfs /usr/local/mfs/[root@localhost mfs]# /usr/local/mfs/sbin/mfsmetalogger start#查看端口开启情况[root@localhost mfs]# ps -ef | grep mfs
第三步:部署存储节点chunk1
root@localhost ~]# yum install zlib-devel gcc gcc-c++ -y[root@localhost ~]# useradd -s /sbin/nologin mfs[root@localhost ~]# mount.cifs //192.168.100.3/lzp /mnt[root@localhost ~]# cd /mnt/mfs#解压安装包[root@localhost mfs]# tar zxvf mfs-1.6.27-5.tar.gz -C /opt[root@localhost mfs]# cd /opt/mfs-1.6.27/[root@localhost mfs-1.6.27]# ./configure \--prefix=/usr/local/mfs \--with-default-user=mfs \--with-default-group=mfs \--disable-mfsmaster \--disable-mfsmount[root@localhost mfs-1.6.27]# make && make install[root@localhost mfs-1.6.27]# cd /usr/local/mfs/etc//mfs/[root@localhost mfs]# cp mfschunkserver.cfg.dist mfschunkserver.cfg[root@localhost mfs]# cp mfshdd.cfg.dist mfshdd.cfg#修改,在第12行,开启,并将地址指向master地址[root@localhost mfs]# vim mfschunkserver.cfg MASTER_HOST = 192.168.45.133 #设置挂载目录[root@localhost mfs]# vim mfshdd.cfg/data[root@localhost mfs]# mkdir /data[root@localhost mfs]# chown -R mfs:mfs /data[root@localhost mfs]# /usr/local/mfs/sbin/mfschunkserver start#查看端口开启情况[root@localhost mfs]# ps -ef | grep mfs
第四步:部署存储节点chunk2
[root@localhost ~]# yum install zlib-devel gcc gcc-c++ -y[root@localhost ~]# useradd -s /sbin/nologin mfs[root@localhost ~]# mount.cifs //192.168.100.3/lzp /mnt[root@localhost ~]# cd /mnt/mfs#解压安装包[root@localhost mfs]# tar zxvf mfs-1.6.27-5.tar.gz -C /opt[root@localhost mfs]# cd /opt/mfs-1.6.27/#编译安装[root@localhost mfs-1.6.27]# ./configure \--prefix=/usr/local/mfs \--with-default-user=mfs \--with-default-group=mfs \--disable-mfsmaster \--disable-mfsmount[root@localhost mfs-1.6.27]# make && make install#复制并修改[root@localhost mfs-1.6.27]# cd /usr/local/mfs/etc//mfs/[root@localhost mfs]# cp mfschunkserver.cfg.dist mfschunkserver.cfg[root@localhost mfs]# cp mfshdd.cfg.dist mfshdd.cfg[root@localhost mfs]# vim mfschunkserver.cfg MASTER_HOST = 192.168.45.133[root@localhost mfs]# vim mfshdd.cfg/data[root@localhost mfs]# mkdir /data[root@localhost mfs]# chown -R mfs:mfs /data[root@localhost mfs]# /usr/local/mfs/sbin/mfschunkserver start#查看端口开启情况[root@localhost mfs]# ps -ef | grep mfs
第五步:配置客户端
# 关闭防火墙[root@manager ~]# systemctl stop firewalld.service [root@manager ~]# setenforce 0#安装必要组件[root@manager ~]# yum install gcc gcc-c++ zlib-devel -y#挂载软件包[root@manager ~]# mount.cifs //192.168.100.3/lzp /mnt[root@manager ~]# cd /mnt/mfs/#解压软件包[root@manager mfs]# tar zxvf fuse-2.9.2.tar.gz -C /opt#编译安装[root@manager mfs]# cd /opt/fuse-2.9.2/[root@manager fuse-2.9.2]# ./configure[root@manager fuse-2.9.2]# make && make install#修改系统文件[root@manager fuse-2.9.2]# vim /etc/profileexport PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH#重新加载[root@manager fuse-2.9.2]# source /etc/profile#创建用户[root@manager fuse-2.9.2]# useradd -s /sbin/nologin mfs#解压安装包[root@manager fuse-2.9.2]# cd /mnt/mfs/[root@manager mfs]# tar zxvf mfs-1.6.27-5.tar.gz -C /opt#编译安装[root@manager mfs]# cd /opt/mfs-1.6.27/[root@manager mfs-1.6.27]# ./configure \--prefix=/usr/local/mfs \--with-default-user=mfs \--with-default-group=mfs \--disable-mfsmaster \--disable-mfschunkserver \--enable-mfsmount[root@manager mfs-1.6.27]# make && make install#创建挂载点[root@manager mfs-1.6.27]# mkdir /opt/mfs[root@manager mfs-1.6.27]# modprobe fuse#挂载[root@manager mfs-1.6.27]# /usr/local//mfs/bin/mfsmount /opt/mfs -H 192.168.45.133# 优化客户端[root@manager mfs-1.6.27]# vim /etc/profileexport PATH=/usr/local/mfs/bin:$PATH[root@manager mfs-1.6.27]# source /etc/profile# 备份[root@manager mfs-1.6.27]# mfsgetgoal -r /opt/mfs/#查看挂载信息[root@manager mfs-1.6.27]# df -hT
查看分布式格局
使用浏览器访问http://192.168.45.133:9425
谢谢阅读!!!
数据
服务
服务器
文件
客户
客户端
系统
地址
文件夹
分布式
日志
用户
端口
成功
节点
软件
软件包
存储
必要
功能
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
阿里云域名怎么解析服务器端口
数据库 转图片
橙子建站几点关闭服务器
河北集团党性体检软件开发
网络技术培训讲话
大连市网络安全教育
广州聆听网络技术有限公司
x数据库
请求失败网络异常或服务器
钉钉服务器怎么换
宜昌市公众号软件开发制造
网络安全常识小短文
如何在数据库查找名单
hp服务器 硬盘红灯
松江区网络营销软件开发问答知识
玩加赛事 数据库
软件开发公司趋势
对危害网络安全的行为向举报
龙岩移动应用软件开发
帆软连接gbase数据库
uu加速器游戏服务器到路由器
唐山软件开发优缺点
access 数据库访问
服务器和网站安全的关系
丰台区先进软件开发口碑推荐
网络技术专业团队
数据库事务 一致性
c 连接数据库增加数据文件
北京超频服务器供应商家
多线程如何访问数据库