MFS分布式存储搭建详解


MFS分布式存储服务MFS的作用: MFS分布式存储的目的是为了解决在NFS的短板,多台服务器通过NFS的方式挂载共享一个服务器的存储空间,使得NFS服务器不堪重负,经常出现超时的现象,而且NFS存在单点故障,尽管可以使用rsync同步数据到另一台服务器上做备份,但对提高系统性能并无帮助。因此解决方案采取MFS分布式文件系统,服务器之间的数据访问不再是一对多的关系,而是多对多的关系。什么是分布式存储: 分布式原理:通过计算机网络和节点相连,简单的说就是把一些分散的共享文件夹集合到一个虚拟文件夹内。对于用户来说,访问这些共享文件夹只是打开了一个虚拟文件夹,用户感受不到这些共享文件夹是分布于各个计算机上的。分布式文件系统的好处是集中访问,简化操作,数据容灾,以及提高文件的存取性能。 MFS原理:1)MFS文件系统的组成。● 元数据服务器(master):在整个体系中负责管理文件系统,维护元数据。● 元数据日志服务器(metaLogger):当MAster服务器数据丢失或者损坏是,可以从日志服务器中取得文件,进行恢复。● 数据存储服务器(chunkserver):真正存储数据的服务器。存储文件时会把文件分块保存。● 客户端:可以像挂载MFS文件系统一样,其操作相同。2)MFS读取数据的处理过程。● 客户端向元数据服务器发出请求。● 元数据服务器把所需数据存放位置告知客户端。●客户端向已知Chunk server请求发送数据。●Chunk Server向客户端发送数据。3)MFS写入数据的出来过程● 客户端向元数据服务器发送写入请求● 元数据服务器与Chunk Server进行交互,会在Chunk Server上创建新分块Chunks并告知元服务器。● 元数据服务器告知客户端,可以在哪个Chunk Server的哪个分块Chunks上写入数据。● 客户端指定Chunk Server写入数据。● 该Chunk Server与其他Chunk Server进行数据同步,同步成功告知客户端写入成功。● 客户端告知元数据服务器本次写入完毕。
实验拓扑如下:本实验使用5台服务器模拟搭建MFS文件系统
实验环境:
一、搭建Master Server服务器
1、解压、安装环境包tar zxfmoosefs-3.0.100-1.tar.gz -C /optyum install gcc gcc-c++ zlib-devel -y2、创建用户、编译cd /opt/moosefs-3.0.100/useradd -s /sbin/nologin mfs #创建mfs管理用户./configure –prefix=/usr/local/mfs #编译–with-default-user=mfs #指定管理用户–with-default-group=mfs #指定管理组–disable-mfschunkserver #禁用节点–disable-mfsmount #禁用客户端挂载make && make install3、复制配置文件cd /usr/local/mfs/etc/mfscp mfsexports.cfg.dist mfsexports.cfgcp mfsmaster.cfg.dist mfsmaster.cfgcp mfstopology.cfg.dist mfstopology.cfgcd /usr/local/mfs/var/mfs/cp metadata.mfs.empty metadata.mfs4、优化、启动服务检测端口
ln -s /usr/local/mfs/sbin/* /usr/local/sbin #将mfs的命令放到系统中识别mfsmaster start #启动mfsmaster[root@localhost mfs]# netstat -ntap | grep mfs #看三个监听端口tcp 0 0 0.0.0.0:9419 0.0.0.0:* LISTEN 42551/mfsmaster tcp 0 0 0.0.0.0:9420 0.0.0.0:* LISTEN 42551/mfsmaster tcp 0 0 0.0.0.0:9421 0.0.0.0:* LISTEN 42551/mfsmaster
二、搭建MetaLogger Server服务器1、解压缩、安装环境包tar zxfmoosefs-3.0.100-1.tar.gz -C /optyum install gcc gcc-c++ zlib-devel -y2、创建用户、编译cd /opt/moosefs-3.0.100/useradd -s /sbin/nologin mfs./configure –prefix=/usr/local/mfs –with-default-user=mfs –with-default-group=mfs –disable-mfschunkserver #禁用节点–disable-mfsmount #禁用客户端挂载make && make install3、复制配置文件并修改
cd /usr/local/mfs/etc/mfs/cp mfsexports.cfg.dist mfsexports.cfgcp mfsmaster.cfg.dist mfsmaster.cfgcp mfsmetalogger.cfg.dist mfsmetalogger.cfgvim mfsmetalogger.cfgMATER_HOST = 192.168.60.141 #找到MATER_HOST模板,ip地址指向mastercd /usr/local/mfs/var/mfs/cp metadata.mfs.empty metadata.mfs4、优化、启动服务检测端口ln -s /usr/local/mfs/sbin/* /usr/local/sbin/ #将mfs的命令放到系统中识别mfsmetalogger start #启动服务[root@localhost mfs]# netstat -ntap | grep mfs #看下状态有没有起来tcp 0 1 192.168.60.136:55894 220.250.64.225:9419 SYN_SENT 42707/mfsmetalogger
三、搭建Chunk节点服务器1、解压、安装环境包
tar zxfmoosefs-3.0.100-1.tar.gz -C /optyum install gcc gcc-c++ zlib-devel -y2、创建用户,编译cd /opt/moosefs-3.0.100/useradd -s /sbin/nologin mfs./configure –prefix=/usr/local/mfs –with-default-user=mfs –with-default-group=mfs –disable-mfsmaster #禁用master模式–disable-mfsmount #禁用用户挂载make && make install
3、复制配置文件并修改cd /usr/local/mfs/etc/mfscp mfschunkserver.cfg.dist mfschunkserver.cfgcp mfshdd.cfg.dist mfshdd.cfgvim mfschunkserver.cfgMASTER_HOST = 192.168.60.141 #找到MASTER_HOST模板,IP地址指向mastervim mfshdd.cfg#etc./data #设置共享目录data,需要创建4、创建共享目录,更改数组属主mkdir /datachown -R mfs.mfs /data/5、优化、启动服务查看端口ln -s /usr/local/mfs/sbin/* /usr/local/sbin/ #将mfs的命令放到系统中识别mfschunkserver start #启动服务[root@localhost mfs]# netstat -ntap | grep mfs #看下状态有没有起来tcp 0 0 0.0.0.0:9422 0.0.0.0:* LISTEN 42714/mfschunkservetcp 0 0 192.168.60.144:41774 192.168.60.141:9420 ESTABLISHED 42714/mfschunkserve两台节点服务器的配置相同,重复操作即可。
四、搭建客户端1、解压、安装环境包tar zxfmoosefs-3.0.100-1.tar.gz -C /opttar zxf fuse-2.9.2.tar.gz -C /opt/yum install gcc gcc-c++ zlib-devel -y2、安装配置fusecd /opt/fuse-2.9.2/./configuer #编译fusemake & make installsed -i ‘$a export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH’ /etc/profilesource /etc/profilecd /opt/moosefs-3.0.100/ #编译mfsuseradd mfs -s /sbin/nologin./configure –prefix=/usr/local/mfs –with-default-user=mfs –with-default-group=mfs –disable-mfsmater #禁用master–disable-mfschunkserver #禁用节点–enable-mfsmount #开启用户挂载make && make install3、挂载mkdir /opt/mfs #创建挂载目录/usr/local/mfs/bin/mfsmount /opt/mfs -H 192.168.60.141 #挂载df -h #查看挂载状态192.168.60.141:9421 33G 0 33G 0% /opt/mfs4、客户端一些简单操作sed -i ‘$a export PATH=/usr/local/mfs/bin:$PATH’ /etc/profile #mfs优化source /etc/profile #刷新环境变量cd /opt/mfsecho “this is test” > test.txtmfsgetgoal -r /opt/mfs #mfsgetg开发云主机域名oal命令用来查询文件被复制的分数mfssetgoal -r 3 /opt/mfs #mfssetgoal命令用来设置文件被复制的份数
五、MFS监控在主服务器上开启监控[root@localhost mfs]# /usr/local/mfs/sbin/mfscgiserv lockfile created and lockedstarting simple cgi server (host: any , port: 9425 , rootpath: /usr/local/mfs/share/mfscgi)
http://192.168.60.141:9425 #用它给你的端口进行访问
六、yum安装MFS扩展MFS也可以用yum进行安装,需要配置yum源https://moosefs.com/download/ 官网各个系统的介绍,这里我介绍一下centos的安装curl “https://ppa.moosefs.com/RPM-GPG-KEY-MooseFS” > /etc/pki/rpm-gpg/RPM-GPG-KEY-MooseFScurl “http://ppa.moosefs.com/MooseFS-3-el7.repo” > /etc/yum.repos.d/MooseFS.repo以上两句话是配置yum仓库master服务器yum安装操作:yum install moosefs-master moosefs-cgi moosefs-cgiserv moosefs-clichunkserver服务器yum安装的操作:yum install moosefs-chunkserverMetaLogger Server服务器yum安装的操作:yum install moosefs-metaloggerclient端yum安装的操作:yum install moosefs-client修改配置文件的操作和手工编译的操作相同

相关推荐: nginx反向代理概述及部署

下文给大家带来nginx反向代理概述及部署,希望能够给大家在实际运用中带来一定的帮助,负载均衡涉及的东西比较多,理论也不多,网上有很多书籍,今天我们就用开发云在行业内累计的经验来做一个解答。反向代理(Reverse Proxy)方式是指以代理云开发云主机域名服…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 04/02 11:00
下一篇 04/02 11:00