本文主要关于Moosefs存储空间扩容及元数据恢复说明,Moosefs安装配置参考以下链接
http://hnr520.blog.51cto.com/4484939/1837619
一、原有集群,一台master、一台metalogger、两台chunkserver
1.分布情况
IP地址 | 角色 | 系统 | 备注 |
192.168.115.12 | mfsmaster | Centos7 | node2.hnr.com |
192.168.115.31 | mfsmetalogger | Centos6 | |
192.168.115.11 | mfschunkserver | Centos7 | node1.hnr.com |
192.168.115.13 | mfschunkserver | Centos7 | node3.hnr.com |
192.168.115.11 | mfsclient | Centos7 | node1.hnr.com |
2.挂载使用并设置副本数为2
#/usr/local/mfs/bin/mfsmount -H 192.168.115.12 /mnt/test/ #/usr/local/mfs/bin/mfssetgoal -r 2 /mnt/test/
3.准备数据
复制5个150M文件到mfs上
#for i in {1..5};do cp server.log /mnt/test/server.log.$i;done
4.磁盘空间使用情况
chunkserver1
chunkserver2
5.查看这个5个文件的副本数
#for i in `ls /mnt/test/`;do /usr/local/mfs/bin/mfsfileinfo /mnt/test/$i;done
二、增加chunkserver节点,扩容存储空间
1.新加入chunkserver节点
IP地址 | 角色 | 系统 | 备注 |
192.168.115.12 | mfschunkserver | Centos7 | |
192.168.115.31 | mfschunkserver | Centos6 |
2.软件安装好,修改连接master地址即可,启动服务即可加入集群中
加入两个chunkserver节点,可以看到数据进行重新平衡,每个chunk复制一份到新加的两个节点其中一个,待相应的chunk都复制到新加的节点,在删除一个原有的chunk
3.重新平衡后的效果
三、元数据损坏恢复
1.什么是元数据损坏
元数据损坏是指由于各种原因导致master上的metadata.mfs数据文件不可用。
一旦元数据损坏,所有的存储在moosefs上的文件都不可使用。
2.模拟元数据损坏
停止master节点并删除metadata.mfs及changelog.0.mfs(变更日志文件)。
# /usr/local/mfs/sbin/mfsmasterstop # cd/usr/local/mfs/lib/mfs # rm -rf *
重新启动master将报错
#/usr/local/mfs/sbin/mfsmaster start
3.Master元数据恢复
从metalogger上将最新一份metadata_ml.mfs.back及changelog_ml.0.mfs复制到master的数据目录下,并注意文件属主属组为mfs。
# scp changelog_ml.0.mfs metadata_ml.mfs.back192.168.115.12:/usr/local/mfs/lib/mfs
在master节点数据目录修改复制过来的文件属性
# chown mfs.mfs *
启动master服务
此时需要以-a方式启动
# /usr/local/mfs/sbin/mfsmaster -a
到此,master服务已经正常启动
4.验证文件是否可用
经过验证,存储上的原有文件均正常。
本文出自 “linux之路” 博客,请务必保留此出处http://hnr520.blog.51cto.com/4484939/1837629
原文地址:http://hnr520.blog.51cto.com/4484939/1837629