加入收藏 | 设为首页 | 会员中心 | 我要投稿 玉林站长网 (https://www.0775zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 云计算 > 正文

Moosefs分布式文件系统集群解说配置

发布时间:2022-05-11 12:08:31 所属栏目:云计算 来源:互联网
导读:本篇为大家分享一下关于MooseFS的相关知识,以及简单的安装配置介绍。MooseFS是一种分布式文件系统,它通过四个节点服务器来进行整个分布式文件系统的正常运作,包括管理服务器,元数据日志服务器,存储服务器和客户端挂载。本章将通过实验环境为大家介绍整
          本篇为大家分享一下关于MooseFS的相关知识,以及简单的安装配置介绍。MooseFS是一种分布式文件系统,它通过四个节点服务器来进行整个分布式文件系统的正常运作,包括管理服务器,元数据日志服务器,存储服务器和客户端挂载。本章将通过实验环境为大家介绍整个集群的运行原理以及工作方式。如有更多方案或者简介,欢迎多多交流!
       1 管理服务器(master-server):负责各个数据存储服务器的管理,文件读写调度,文件空间回收以及恢复.多节点拷贝
 
       2 元数据日志服务器(changelog-server): 负责备份master服务器的变化,(一般情况下可以和管理服务器放在一起)文件类型为changelog_ml.*.mfs,以便于在master server出问题的时候接替其进行工作
 
      3数据存储服务器(chunk-server):负责连接管理服务器,听从管理服务器调度,提供存储空间,并为客户提供数据传输.
 
       4客户端(clients): 通过fuse内核接口挂接远程管理服务器上所管理的数据存储服务器,.看起来共享的文件系统和本地unix文件系统使用一样的效果.
 
MFS文件系统的读写原理:
 
MFS分布式文件系统搭建:
 
系统环境:
 
                RHEL6.4  
 
                selinux is disabled
 
                iptables is flush
 
一、yum 源定义,用来解决软件包的依赖性问题
 
复制
# cat yum.repo  
[base]  
name=yum
baseurl=ftp://192.168.2.234/pub/RHEL6.4  
gpgcheck=0
[HA]  
name=ha
baseurl=ftp://192.168.2.234/pub/RHEL6.4/HighAvailability  
gpgcheck=0
[lb]  
name=LB
baseurl=ftp://192.168.2.234/pub/RHEL6.4/LoadBalancer  
gpgcheck=0
[Storage]  
name=St
baseurl=ftp://192.168.2.234/pub/RHEL6.4/ResilientStorage  
gpgcheck=0
[SFS]  
name=FS
baseurl=ftp://192.168.2.234/pub/RHEL6.4/ScalableFileSystem  
gpgcheck=0
 
二、主机解析准备
 
复制
# cat /etc/hosts  
192.168.2.88 node1        mfsmaster  
192.168.2.89 node2  
192.168.2.90 node3  
192.168.2.82 node4  
192.168.2.85 node5
1.
2.
3.
4.
5.
6.
实验将用node1作为master-server
 
node3和node4作为chunk-server
 
node5作为clients
 
所有节点必须有以上准备
 
三、安装准备
 
#yum install rpm-build gcc make fuse-devel zlib-devel -y         安装编译环境使用的依赖(其实安装过程中会提示安装)
 
#rpmbuild -tb mfs-1.6.27.tar.gz                              将gz包构建成rpm包的方式  注意:包的格式很重要(只支持大的版本)
 
## ls /root/rpmbuild/RPMS/x86_64/                            生成的rpm包
 
mfs-cgi-1.6.27-2.x86_64.rpm          mfs-client-1.6.27-2.x86_64.rpm
 
mfs-cgiserv-1.6.27-2.x86_64.rpm      mfs-master-1.6.27-2.x86_64.rpm
 
mfs-chunkserver-1.6.27-2.x86_64.rpm  mfs-metalogger-1.6.27-2.x86_64.rpm
 
1.master-server安装:
 
复制
# yum localinstall mfs-cgi-1.6.27-2.x86_64.rpm mfs-master-1.6.27-2.x86_64.rpm mfs-cgiserv-1.6.27-2.x86_64.rpm -y
1.
可以用cgi进行页面监控:
 
master-server:主要文件和目录
 
/var/lib/mfs            mfs数据目录
 
metadata.mfs            mfs启动文件
 
/etc/mfs                    主目录(存储配置文件)
 
mfsmaster.cfg            mfs主配置文件(定义相关参数,用户、组等设定)
 
mfsexports.cfg            mfs被挂接目录及其权限控制文件
 
mfstopology.cfg            定义 MFS 网络拓扑结构的文件
 
配置文件默认不需要修改就可以使用
 
#chown -R nobody /var/lib/mfs      注意给数据目录以mfs的权限
 
# mfsmaster            启动mfs
 
#mfsmaster stop            关闭mfs
 
#netstat  -antlpe(mfsmaster开启三个端口:客户端连接9421端口,监听9422端口;数据节点9420端口)
 
#/usr/share/mfscgi
 
#chmod +x  *.cgi            给所有的cgi页面可执行权限(以便与在web下查看状态)
 
# mfscgiserv -------        -》启动cgi监控
 
http://192.168.2.88:9425/
 
查看mfs监控信息
 
2.chunk-server安装配置(node3 and node4)
 
#rpm -ivh mfs-chunkserver-1.6.27-2.x86_64.rpm
 
#cd /etc/mfs/
 
#cp mfschunkserver.cfg.dist mfschunkserver.cfg
 
# cp mfshdd.cfg.dist mfshdd.cfg
 
# vim mfshdd.cfg            存储文件
 
    /mnt/chunk            真正存储的目录(将客户端/mnt/mfs的文件存储)
 
#mkdir /mnt/chunk
 
#mkdir /var/lib/mfs
 
#chown nobody /var/lib/mfs/
 
#chown nobody /mnt/chunk
 
# mfschunkserver         启动mfs服务器(注意,mfsmaster的解析必须到位)
 
#l.                                    产生一个隐藏锁文件
 
.mfschunkserver.lock
 
3.clients端的安装与配置;
 
# yum localinstall mfs-client-1.6.27-2.x86_64.rpm
 
#cp mfsmount.cfg.dist mfsmount.cfg
 
#vim mfsmount.cfg
 
        修改master和分布式目录/mnt/mfs
 
#mkdir /mnt/mfs
 
#mfsmounts        执行客户端挂载
 
mfsmaster accepted connection with parameters: read-write,restricted_ip ; root mapped to root:root            挂载成功
 
# df                查看挂载设备
 
mfsmaster:9421         6714624         0   6714624   0% /mnt/mfs
 
# ll -d /mnt/mfs/            挂载后自动读写
 
drwxrwxrwx 2 root root 0 Jun  8 10:29 /mnt/mfs/
 
测试:MFS测试:
 
# mkdir hello{1,2}
 
# ls
 
hello1  hello2
 
# mfsdirinfo hello1/
 
hello1/:
 
 inodes:                          1
 
  directories:                    1
 
  files:                          0
 
 chunks:                          0
 
 length:                          0
 
 size:                            0
 
 realsize:                        0
 
# mfssetgoal -r 3 hello1/        设置备份次数
 
hello1/:
 
 inodes with goal changed:               1
 
 inodes with goal not changed:           0
 
 inodes with permission denied:          0
 
# mfsgetgoal hello1/        查看文件备份数
 
hello1/: 3
 
# mfsgetgoal hello2
 
hello2: 1
 
#cp /etc/fstab hello1/
 
# cp /etc/passwd hello2/
 
# mfsfileinfo /hello/fstab             查看文件具体信息
 
fstab:
 
    chunk 0: 000000000000000B_00000001 / (id:11 ver:1)
 
        copy 1: 192.168.2.82:9422
 
        copy 2: 192.168.2.90:9422
 
# mfscheckfile passwd
 
测试存储关系:
 
# mfsfileinfo fstab
 
fstab:
 
    chunk 0: 000000000000000B_00000001 / (id:11 ver:1)
 
        copy 1: 192.168.2.90:9422
 
[root@node5 hello1]# mfsfileinfo ../hello2/passwd
 
../hello2/passwd:
 
    chunk 0: 000000000000000C_00000001 / (id:12 ver:1)
 
        no valid copies !!!
 
客户端:误删除文件(不小心删除/mnt/mfs/hello*/passwd)
 
# mfsmount -m /mnt/test/ -H mfsmaster        恢复目录挂载到mfsmaster上
 
mfsmaster accepted connection with parameters: read-write,restricted_ip
 
# mount
 
#cd /mnt/test/
 
## mfscheckfile passwd
 
# mv 00000005|hello2|passwd undel/
 
直接恢复到之前的mfs目录中
 
# umount /mnt/meta/
 
mfschunk-server可以自动检测客户端的配置文件:
 
# mfschunkserver stop
 
在客户端重新拷贝文件,
 
#cp /etc/inittab /mnt/mfs/hello1
 
#mfsgetgoal hello1/fstab        查看文件份数
 
#mfsgetgoal hello1/inittab
 
# mfsfileinfo inittab             刚开始只有一个chukserver,只能保存一份
 
开启chunkserver
 
#mfschunkserver
 
# mfsfileinfo inittab             查看文件的备份数,恢复成chunkserver的数
 
inittab:
 
chunk 0: 0000000000000006_00000001 / (id:6 ver:1)
 
copy 1: 192.168.2.184:9422
 
copy 2: 192.168.2.185:9422
 
注意:
 
在mfsmaster中,正常运行时,数据文件为metadata.mfs.back
 
当主机出现故障,数据文件会保存成metadata.mfs
 
使用非正常关闭,(kill -9  pid) 数据文件将不会恢复
 
# mfsmetarestore -a-            非正常启动后会丢失metadata.mfs文件,必须恢复一下
 
然后重新启动mfsmaster(mfsmaster启动必须有metadata.mfs文件)

(编辑:玉林站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读