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

[经验分享] 试用分布式存储MooseFS

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2014-5-3 21:38:31 | 显示全部楼层 |阅读模式
服务器分布:
wKioL1NiZcyzHZpGAAHKdXySKDA644.jpg


概述:
MooseFS是一种分布式文件系统,MooseFS文件系统结构包括以下四种角色:
1、管理服务器managing server(master)
2、元数据日志服务器Metalogger server(Metalogger)
3、数据存储服务器 dataservers(chunkservers)
4、客户机挂载使用 clientcomputers

角色描述:
1、管理服务器:负责各个数据存储服务器的管理,文件读写调度,文件空间回收以及恢复,多节点拷贝;
2、元数据日志服务器:负责备份master服务器的变化日志文件,文件类型为changelog_ml.*.mfs,以便于在masterserver出问题的时候接替其进行工作;
3、数据存储服务器:负责连接管理服务器,听从管理服务器调度,提供存储空间,并为客户提供数据传输;
4、客户端:通过fuse内核接口挂接远程管理服务器上所管理的数据存储服务器,看起来共享的文件系统和本地UNIX文件系统使用一样的效果。

总体架构图:
wKioL1Nib8bQoBFqAAH3lmiwtKE490.jpg


一、MFS Master节点部署
# /usr/sbin/groupadd mfs
# /usr/sbin/useradd mfs -g mfs -s /sbin/nologin

# tar xvzf mfs-1.6.27-5.gz
# cd mfs-1.6.27
# ./configure --prefix=/usr/local/mfs \
--with-default-user=mfs \
--with-default-group=mfs \
--disable-mfschunkserver \
--disable-mfsmount
# make && make install

# cd /usr/local/mfs/etc/mfs
# cp mfsmaster.cfg.dist mfsmaster.cfg
# cp mfsexports.cfg.dist mfsexports.cfg
# cp mfstopology.cfg.dist mfstopology.cfg

对允许远程挂载的主机进行授权
# vim mfsexports.cfg
10.0.0.0/8             /       rw,alldirs,maproot=0
172.0.0.0/8           /       rw,alldirs,maproot=0

# vim mfsmaster.cfg
DATA_PATH = /data/mfsmetadata

# mkdir -p /data/mfsmetadata
# cp -a /usr/local/mfs/var/mfs/metadata.mfs.empty /data/mfsmetadata/metadata.mfs
# chown -R mfs:mfs /data/mfsmetadata

# vim /etc/hosts
10.185.15.241        mfsmaster
10.185.15.242        mfsmetalogger
10.137.153.224      mfschunkserver1
10.166.147.229      mfschunkserver2
10.185.4.99           mfschunkserver3

# /usr/local/mfs/sbin/mfsmaster start
wKiom1NiZ2KDZK8VAAH04E9dPes759.jpg

# ps aux | grep mfs
wKiom1NiZ5DxHLdzAABOMTgnb2A139.jpg

# netstat –ntlp
wKioL1NiZ47BJg0RAACtBLIqdJ8272.jpg

监控平台,修改默认绑定IP地址和端口:
any   --> 10.185.15.241
9425 --> 80

# vim /usr/local/mfs/sbin/mfscgiserv
wKiom1NiZ-HwtGalAADNe7R8di4880.jpg

# /usr/local/mfs/sbin/mfscgiserv start
wKioL1NiZ_HBGe38AABj-VMx6a0224.jpg

# netstat -ntlp
wKiom1NiaEvy6hHlAACtodIFdBc996.jpg

wKioL1NiaE-gDhMGAAGlquO-6S8329.jpg

二、MFS Metalogger节点部署
# /usr/sbin/groupadd mfs
# /usr/sbin/useradd mfs -g mfs -s /sbin/nologin

# tar xvzf mfs-1.6.27-5.gz
# cd mfs-1.6.27
# ./configure --prefix=/usr/local/mfs \
--with-default-user=mfs \
--with-default-group=mfs \
--disable-mfschunkserver \
--disable-mfsmount
# make && make install

# cd /usr/local/mfs/etc/mfs
# cp mfsmetalogger.cfg.dist mfsmetalogger.cfg

# mkdir -p /data/mfsmetadata
# chown -R mfs:mfs /data/mfsmetadata

# vim mfsmetalogger.cfg
DATA_PATH = /data/mfsmetadata

# vim /etc/hosts
10.185.15.241   mfsmaster

# /usr/local/mfs/sbin/mfsmetalogger start
wKiom1NiaLfBfHF_AADigtpRBwU374.jpg

# netstat -nt | grep :9419
wKioL1NiaLnhKMZtAAA3G5SZDTU232.jpg

三、MFS chunkservers节点部署
# /usr/sbin/groupadd mfs
# /usr/sbin/useradd mfs -g mfs -s /sbin/nologin

# tar xvzf mfs-1.6.27-5.gz
# cd mfs-1.6.27
# ./configure --prefix=/usr/local/mfs \
--with-default-user=mfs \
--with-default-group=mfs \
--disable-mfsmaster \
--disable-mfsmount
# make && make install

# cd /usr/local/mfs/etc/mfs
# cp mfschunkserver.cfg.dist mfschunkserver.cfg
# cp mfshdd.cfg.dist mfshdd.cfg

# vim /etc/hosts
10.185.15.241   mfsmaster

# mkdir -p /data/mfsmetadata
# chown -R mfs:mfs /data/mfsmetadata

# vim mfschunkserver.cfg
DATA_PATH = /data/mfsmetadata

# mkdir -p /data/mfschunk
# chown -R mfs:mfs /data/mfschunk

可以添加多个路径(后续可能会增加多个磁盘)
# vim mfshdd.cfg
/data/mfschunk

# /usr/local/mfs/sbin/mfschunkserver start
wKiom1NiaR2gA-gYAADuvC3EFLk991.jpg

# netstat -ntlp
wKioL1NiaSGCLv3DAACCIeGN7VM788.jpg

四、MFS client节点部署
# /usr/sbin/groupadd mfs
# /usr/sbin/useradd mfs -g mfs -s /sbin/nologin

# tar xvzf fuse-2.9.2.tar.gz
# cd fuse-2.9.2
# ./configure --prefix=/usr/local
# make && make install

运行以下export命令,否则挂载moosefs系统会失败
# vim /etc/profile
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH
# source /etc/profile

# tar xvzf mfs-1.6.27-5.gz
# cd mfs-1.6.27
# ./configure --prefix=/usr/local/mfs \
--with-default-user=mfs \
--with-default-group=mfs \
--enable-mfsmount
# make && make install

# vim /etc/hosts
10.185.15.241   mfsmaster

# mkdir -p /data/mfsdata
# /usr/local/mfs/bin/mfsmount /data/mfsdata -H mfsmaster
wKioL1NiaUyTXMXMAAD__uwce8s583.jpg

设置文件副本数
# /usr/local/mfs/bin/mfsrsetgoal 3 /data/mfsdata
# echo 'mytest'  > /data/mfsdata/testfile
# /usr/local/mfs/bin/mfsfileinfo /data/mfsdata/testfile
wKiom1NiaZ-Q-LLCAAC7gqyphjo819.jpg

设置删除文件后空间回收时间
# /usr/local/mfs/bin/mfsrsettrashtime 600 /data/mfsdata

取消本地挂载
# umount -l  /data/mfsdata

一些效果图:
wKioL1Niaa6we9QtAADRDyPL0iw624.jpg

wKioL1Niac7TgnNzAADALbwa1R4176.jpg

五、一点建议
1、安全停止MooseFS集群,建议如下步骤
umount -l /data/mfsdata                                                     # 客户端卸载MooseFS文件系统
/usr/local/mfs/sbin/mfschunkserver stop                              # 停止chunkserver进程
/usr/local/mfs/sbin/mfsmetalogger stop                                # 停止metalogger进程
/usr/local/mfs/sbin/mfsmaster stop                                      # 停止主控master server进程

2、安全启动MooseFS集群,建议如下步骤
/usr/local/mfs/sbin/mfsmaster start                                      # 启动主控master server进程
/usr/local/mfs/sbin/mfschunkserver start                              # 启动chunkserver进程
/usr/local/mfs/sbin/mfsmetalogger start                                # 启动metalogger进程
/usr/local/mfs/bin/mfsmount /data/mfsdata -H mfsmaster       # 客户端挂载MooseFS文件系统


运维网声明 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-18586-1-1.html 上篇帖子: redhat5.8+mfs(提供软件包文档) 下篇帖子: Moosefs分布式文件系统集群讲解配置
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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