设为首页 收藏本站
查看: 1193|回复: 0

[经验分享] MFS文件系统安装、使用详解

[复制链接]
YunVN网友  发表于 2019-2-1 09:48:34 |阅读模式
                                    MooseFS文件系统介绍
MooseFS是一种分布式文件系统,MooseFS文件系统结构包括以下四种角色:
1 、管理服务器managingserver (master)
负责各个数据存储服务器的管理,文件读写调度,文件空间回收以及恢复多节点拷贝
2 、元数据日志服务器MetaloggerserverMetalogger
负责备份master服务器的变化志文件,文件类型为changelog_ml.*.mfs,以便于在masterserver出问题的时候接替其进行工作。
3 、数据存储服务器dataservers (chunkservers)
负责连接管理服务器,听从管理服务器调度,提供存储空间,并为客户提供数据传输。
4 、客户机挂载使用
client通过fuse内核接口挂接远程管理服务器上所管理的数据存储服务器,.看起来共享的文件系统和本地unix文件系统使用一样的效果。

安装:MFS
===============================================================================
小贴士:编译mfs的时候不论你安装的是什么角色可以一样编译不需要开启或关闭指定角色
只是客户端安装时加上--enable-mfsmount即可。这样方便你在服务器上随时调整角色。
===============================================================================
master server:
# yum install -y zlib-devel
# useradd mfs -s /sbin/nologin
# tar zxvf mfs-1.6.27-5.tar.gz
# cd  mfs-1.6.27/
# ./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs
# make && make install

# cd /usr/local/mfs/etc
# cp mfsmaster.cfg.dist mfsmaster.cfg          //主配置文件
# mv mfsexports.cfg.dist mfsexports.cfg              //权限控制文件(MFS客户端挂载时使用)
# cp /usr/local/mfs/var/mfs/metadata.mfs.empty /usr/local/mfs/var/mfs/metadata.mfs
==================================
/usr/local/mfs/etc/mfs/mfsmaster.cfg 主配置文件示例
       EXPORTS_FILENAME= /usr/local/mfs/etc/mfs/mfsexports.cfg  //权限控制文件的存储位置
       DATA_PATH =/usr/local/mfs/var/mfs                  //指定元数据的存储路径
       MATOCS_LISTEN_PORT= 9420                        //Masterto Chunk Server 即使用9420/TCP端口监听Chunk Server端的连接
       MATOML_LISTEN_PORT= 9419                         //Masterto Meta Logger
       MATOCU_LISTEN_PORT= 9421                        //客户端挂载MFS时连接的端口
      
/usr/local/mfs/etc/mfs/mfsexports.cfg
       192.168.2.0/24         /      rw,alldirs,mapall=mfs
==================================
# /usr/local/mfs/sbin/mfsmaster  start
# /usr/local/mfs/sbin/mfscgiserv           //开启http cgi 服务器监控mfs
starting simple cgi server (host: any , port: 9425 , rootpath:/usr/local/mfs/share/mfscgi)
可以通过浏览器访问http://Master_IP:9425


matelogger server:
==================================
# yum install -y zlib-devel
# useradd mfs -s /sbin/nologin
# tar zxvf mfs-1.6.27-5.tar.gz
# cd  mfs-1.6.27/
# ./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs
# make && make install

# cd /usr/local/mfs/etc
# cp mfsmetalogger.cfg.dist mfsmetalogger.cfg
==================================
/usr/local/mfs/etc/mfs/mfsmetalogger.cfg
       MASTER_HOST =192.168.2.101                 //去掉前面的#    //指定Master服务器
       MASTER_PORT =9419
       DATA_PATH =/usr/local/mfs/var/mfs           //Master抓回文件,然后进行存放的路径
       BACK_LOGS = 50                                            //超过50个备份日志则轮转
       META_DOWNLOAD_FREQ= 24                  //元数据备份文件下载的频率,默认24小时
      
==================================
# /usr/local/mfs/sbin/mfsmetalogger start
working directory: /usr/local/mfs/var/mfs
lockfile created and locked
initializing mfsmetalogger modules ...
mfsmetalogger daemon initialized properly

chunk server:
==================================
# yum install -y zlib-devel
# useradd mfs -s /sbin/nologin
# tar zxvf mfs-1.6.27-5.tar.gz
# cd  mfs-1.6.27/
# ./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs
# make && make install

# cd /usr/local/mfs/etc/mfs
# mv mfschunkserver.cfg.dist  mfschunkserver.cfg
# mv mfshdd.cfg.dist mfshdd.cfg
# fdisk /dev/sda                                                 //准备存储(贡献一个分区)
# partx -a /dev/sda                        //让内核刷新分区表 RHEL5还可以使用 #partprobe
# mkfs.ext4 /dev/sda6
# mkdir /mfs/share
# mount /dev/sda6 /mfs/share
# chown -R mfs:mfs /mfs/share
==================================
/usr/local/mfs/etc/mfs/mfschunkserver.cfg
       MASTER_HOST =192.168.2.101

/usr/local/mfs/etc/mfs/mfshdd.cfg
       /mfs/share                              //分区的挂载点
==================================
MFS用户没有权限的启动报错
# /usr/local/mfs/sbin/mfschunkserver  start
working directory: /usr/local/mfs/var/mfs
lockfile created and locked
initializing mfschunkserver modules ...
hdd space manager: can't create lock file '/mfsdir/.lock'(errno:13)
init: hdd space manager failed !!!
error occured during initialization - exiting

Chunk Server正常启动
# /usr/local/mfs/sbin/mfschunkserver  start
working directory: /usr/local/mfs/var/mfs
lockfile created and locked
initializing mfschunkserver modules ...
hdd space manager: scanning folder /mfsdir/ ...
hdd space manager: /mfsdir/: 0 chunks found
hdd space manager: scanning complete
main server module: listen on *:9422
no charts data file - initializing empty charts
mfschunkserver daemon initialized properly


mfs client:
==================================
# yum install -y zlib-devel
# useradd mfs -s /sbin/nologin
# yum -y install fuse*    (user space filesystem extend)
# tar zxvf mfs-1.6.27-5.tar.gz
# cd  mfs-1.6.27/
# ./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs --enable-mfsmount
# make && make install

# /usr/local/mfs/bin/mfsmount -H 192.168.2.101  /mfs/share
mfsmaster accepted connection with parameters:read-write,restricted_ip ; root mapped to root:root


MFS的使用
  
谈到使用我这里是指客户端了:

1、配置环境变量
# vi /etc/profile

PATH=$PATH:/usr/local/mfs/bin/


2、MFS命令
mfssetgoal:可以设置文件保存的份数
用法:mfssetgoal  3  /mnt/share/test1                (对文件)
      mfssetgoal  -r  3  /mnt/share/test_dir/        (对目录递归)

mfsgetgoal:可以查看文件保存的份数
mfssettrashtime:可以设置文件被删除后保存的时间(垃圾箱设置)
用法:mfssettrashtime  0  /mnt/mfs-test/test1
(0代表时间,单位秒,可按要求自行配置,也可对目录进行-r的递归操作)
mfsgettrashtime:可以查看文件被删除后的隔离时间

3、垃圾箱
MFS还有一个挂在点,是用来恢复误删文件的挂载点,需要df命令加上-a的参数查看
用法:mfsmount –H master_ip  /挂载点 –m
示例:mfsmount –H 192.168.1.118  /mnt/metadata –m
之后进入到这个目录 你会发现有trash的目录,trash目录中有一个undel的目录和你删除的文件(被删除的文件由mfs自己定义名字,可以grep删除的原文件名找到它)
#pwd
/mnt/metadata                           //恢复文件的隐藏挂载点,需要手动挂载
#ls
reserved  trash
#ls trash/
undel                                   //此目录用来还原文件使用

#mfsfileinfo /mnt/share/test1/passwd
/mnt/share/test1/passwd:
        chunk 0: 0000000000000055_00000001 /(id:85 ver:1)           //保存了一个chunk
                copy 1: 192.168.1.117:9422                          //一个chunk保存了两份
                copy 2: 192.168.1.118:9422
#mfsgettrashtime /mnt/share/test1/passwd
/mnt/share/test1/passwd:86400                               //保存86400秒后真正删除
#rm  /mnt/share/test1/passwd                                //mfs保存文件的挂在点/mnt/share
#ls |grep passwd
00000002|test1|passwd
此时如果想还原此文件可以执行mv操作
#mv 00000002\|test1\|passwd undel/
#ls
undel
#ls /mnt/share/test1/
passwd
  





运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-670313-1-1.html 上篇帖子: MFS之常用总结 下篇帖子: MooseFS分布式文件系统安装向导已经制作完毕
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表