MooseFS安装配置
简介:
(1)、管理服务器:负责各个数据存储服务器的管理,文件读写调度,文件空间回收以及恢复,多节点拷贝;
(2)、元数据日志服务器:负责备份master服务器的变化日志文件,文件类型为changelog_ml.*.mfs,以便于在masterserver出问题的时候接替其进行工作;
(3)、数据存储服务器:负责连接管理服务器,听从管理服务器调度,提供存储空间,并为客户提供数据传输;
(4)、客户端:通过fuse内核接口挂接远程管理服务器上所管理的数据存储服务器,看起来共享的文件系统和本地UNIX文件系统使用一样的效果。
环境配置:
操作系统 角色 主机名 IP
Centos 6.5 管理服务器 master 192.168.253.241
Centos 6.5 元数据日志服务器 backup 192.168.253.242
Centos 6.5 数据存储服务器 data01 192.168.253.243
Centos 6.5 客户端 client 192.168.253.244
1.安装服务
1.1//yum 安装(所有节点安装)
curl "http://ppa.moosefs.com/RPM-GPG-KEY-MooseFS" > /etc/pki/rpm-gpg/RPM-GPG-KEY-MooseFS curl "http://ppa.moosefs.com/MooseFS-stable-el6.repo" > /etc/yum.repos.d/MooseFS.repo
注:实际场景 Master 与 Metalogger 两台机器都应装上服务 Master 和 Metalogger 全部服务 方便宕机切换 不启动服务即可
1.2//Master Server #管理服务器节点安装
yum install -y moosefs-master moosefs-cli moosefs-cgi moosefs-cgiserv
1.3//Metalogger #元数据日志服务器节点安装
yum install -y moosefs-metalogger
1.4//Chunkservers #数据存储服务器节点安装
yum install -y moosefs-chunkserver
1.5//Client #客户端节点安装
yum install -y moosefs-client
2.配置服务
2.1//配置 Master Server
/etc/mfs/mfsmaster.cfg #默认不修改
//允许网段
vi /etc/mfs/mfsexports.cfg 192.168.253.0/24 / rw,alldirs,maproot=0,password=passcode
//metadata
cp /var/lib/mfs/metadata.mfs.empty /var/lib/mfs/metadata.mfs
vi /etc/hosts 192.168.253.241 mfsmaster
//启动master
mfsmaster start
//启动cgi
mfscgiserv start
//加入开机启动
echo '/usr/sbin/mfsmaster start' >>/etc/rc.local echo '/usr/sbin/mfscgiserv start' >>/etc/rc.local
//访问
http://192.168.253.241:9425
2.2//配置 Metalogger
/etc/mfs/mfsmetalogger.cfg #默认不修改
vi /etc/hosts 192.168.253.241 mfsmaster
//启动metalogger
mfsmetalogger start
//加入开机启动
echo '/usr/sbin/mfsmetalogger start' >>/etc/rc.local
2.3//配置 Chunk Servers
/etc/mfs/mfschunkserver.cfg #默认不修改
//挂载硬盘目录(独立硬盘或独立LVM)
mkdir -p /data/mfs mount /dev/xvdb1 /data/mfs/ #假设挂载/dev/xvdb1磁盘
vi /etc/mfs/mfshdd.cfg /data/mfs
//权限
chown -R mfs:mfs /data/mfs
vi /etc/hosts 192.168.253.241 mfsmaster
//启动Chunk
mfschunkserver start
//加入开机启动
echo '/usr/sbin/mfschunkserver start' >>/etc/rc.local
2.4//配置 Client
vi /etc/hosts 192.168.253.241 mfsmaster
//挂载 使用文件系统到usemfs
mkdir -p /data/usemfs mfsmount /data/usemfs -H mfsmaster
//查看
df -h
3.操作说明
3.1使用Client
//配置文件夹副本数
mkdir /data/usemfs/folder3 mfssetgoal -r 3 /data/usemfs/folder3
//拷贝文件
cp ~/jdk-7u71-linux-x64.rpm /data/usemfs/folder3
//查看副本数
mfscheckfile /data/usemfs/folder3/jdk-7u71-linux-x64.rpm
//性能测试
//写
dd if=/dev/zero of=/data/usemfs/folder3/test.txt bs=1024 count=1024
//读
dd if=/data/usemfs/folder3/test.txt of=/dev/zero bs=1024 count=1024
4.主备恢复
//主 模拟宕机停掉
mfsmaster stop mfscgiserv stop
//拷贝master记录
scp /var/lib/mfs/* [email protected]:/var/lib/mfs/ #一般是用rsync同步到日志服务器每分钟
//修改所有 hosts 为 Metalogger Ip
vi /etc/hosts 192.168.253.242 mfsmaster
//备 启动为 Master
mfsmaster start
//备 启动cgi
mfscgiserv start
//备 停掉 metalogger
mfsmetalogger stop
//主 启动 metalogger
mfsmetalogger start
备注:差不多快1年没有写博客了,因为2015年项目太多了,所以比较忙,从今年起开始继续写博客了,把这个习惯持续下去,让更多需要技术的人去学习,MFS这次也遇到了很多问题,也参考了彪哥的文档及群里朋友的意见,然后亲自实验出结果,希望给予需要帮助的人。