mfs版本:mfs-1.6.17.tar.gz 官网地址:www.moosefs.org 官网最新版本为v1.6.26 说明:实验过程元数据服务器和元日志服务器在一台机器即Master管理服务器上,在生产环境中建议元数据服务器和元日志服务器分开,这样安全性相对会高 IP部署 ---------------------------------------------------------------------------------------------------------------------- Master(管理服务器):192.168.100.1 ---chunkserver1 192.168.100.10 chunkservers(数据存储服务器)| ---chunkserver2 192.168.100.11 ---client1 192.168.100.20 client客户机| ---client2 192.168.100.21 ---------------------------------------------------------------------------------------------------------------------- Master相关配置 软件安装 #./configure --disable-mfschunkserver--disable-mfsmount --with-default-user=daemon --with-default-group=daemon #make && make install # cp /usr/local/etc/mfsmaster.cfg.dist/usr/local/etc/mfsmaster.cfg //模板默认生效,该文件不需要修改 #cp /usr/local/etc/mfsexports.cfg.dist/usr/local/etc/mfsexports.cfg #vim /usr/local/etc/mfsexports.cfg # cat /usr/local/etc/mfsexports.cfg 192.168.100.0/24 / rw,alldirs,maproot=0 192.168.100.0/24 . rw # cd /usr/local/var/mfs // /usr/local/var/mfs元数据存放目录 #cp metadata.mfs.empty metadata.mfs //启用元数据配置文件 #/usr/local/sbin/mfsmaster start || stop //开启||关闭服务 #usr/local/sbin/mfscgiserv start //开启web监控,mfscgiserv是使用python开发的web服务器,http://Master_IP:9425即可访问 trunkServer相关配置 #./configure --disable-mfsmaster--disable-mfsmount --disable-mfscgi --disable-mfscgiserv --with-default-user=daemon--with-default-group=daemon #make && make install #cp/usr/local/etc/mfschunkserver.cfg.dist /usr/local/etc/mfschunkserver.cfg #vim /usr/local/etc/mfschunkserver.cfg #cat /usr/local/etc/mfschunkserver.cfg WORKING_USER = daemon WORKING_GROUP = daemon SYSLOG_IDENT = mfschunkserver LOCK_MEMORY = 0 NICE_LEVEL = -19 DATA_PATH = /usr/local/var/mfs MASTER_RECONNECTION_DELAY = 5 BIND_HOST = * MASTER_HOST = 192.168.100.1 MASTER_PORT = 9420 MASTER_TIMEOUT = 60 HDD_CONF_FILENAME = /usr/local/etc/mfshdd.cfg HDD_TEST_FREQ = 10 LOCK_FILE = /var/run/mfs/mfschunkserver.lock BACK_LOGS = 50 ◆ MASTER_HOST = 192.168.100.1 元数据服务器的名称或地址,可以是主机名,也可以是ip地址,只要数据存储服务器能访问到元数据服务器就行。 ◆ LOCK_FILE = /var/run/mfs/mfschunkserver.pid 与元数据服务器master的处理完全相同. ◆ CSSERV_LISTEN_PORT = 9422 CSSERV—chunkserver,这个监听端口用于与其它数据存储服务器间的连接,通常是数据复制。 ◆ HDD_CONF_FILENAME = /usr/local/mfs/etc/mfshdd.cfg 分配给MFS使用的磁盘空间配置文件的位置。 #cp /usr/local/etc/mfshdd.cfg.dist/usr/local/ect/mfshdd.cfg #vim /usr/local/ect/mfshdd.cfg #cat /usr/local/ect/mfshdd.cfg /mfs #挂载点 #mkdir /mfs #mount /dev/sdb1 /mfs //这里使用的是独立的磁盘,已经格式化ext4,分区格式化这里不作介绍 //注意:CHUNKSERVER共享出去的磁盘需要大于1G以上,否则会提示空间不足,另外CHUNKSERVER也会占用几百M的空间 #chown daemon:daemon /mfs -R //必须修改权限,否则服务启动不了 #/usr/local/sbin/mfschunkserver start ||stop //可以查看messages日志获得启动和连接信息 client相关配置 #yum install fuse* -y //client通过fuse模块连接Master #./configure --disable-mfsmaster--disable-mfschunkserver --disable-mfscgi --disable-mfscgiserv --with-default-user=daemon--with-default-group=daemon #make && make install #mkdir /mnt/{data,metadata} #mfsmount -H 192.168.100.1 /mnt/data #mfsmount -m -H 10.1.1.10 metadata # /usr/local/bin/mfsdirinfo /mnt/data/ //查看chunk信息 /mnt/data/: inodes: 2 directories: 1 files: 1 chunks: 23 length: 1522139136 size: 1522256896 realsize: 1522256896 #/usr/local/bin/mfsgetgoal -h /mnt/data/ //获取文件备份信息 /mnt/data/:1 //1表示没有备份,只有一个文件 # /usr/local/bin/mfssetgoal -r 2 /mnt/data/ //等段时间之后生效,这样修改之后,文件就实现冗余功能了 # /usr/local/bin/mfsfileinfo 文件名 //可以查看该文件的个数 另外对于客户端需要说明的是类似iscsi或者NFS这些,2个客户端同时挂载使的时,client1写入数据,client2是读不到数据的,而MFS实现client1和client2同步,在client1上写入文件,client2即可获取,实现同时读写 (一)本地测试 1、停止元数据服务 /usr/local/mfs/sbin/mfsmaster 2、备份元数据服务器数据 cd /usr/local/mfs/var; tar czvfmfs.tgz mfs 3、删除目录 mv mfs mfs.bk 或 rm –rf mfs 4、启动元数据服务 ../sbin/mfsmaster start 启动失败,提示不能初始化数据。 5、解包 tar zxvf mfs.tgz 6、执行恢复操作 .. /sbin/mfsmetarestore –a 7、启动元数据服务 ../sbin/mfsmaster start 8、在MFS客户端检查MFS存储的数据是否跟恢复前一致?能否正常访问等等。 (二) 迁移测试 1、 安装新的MFS元数据服务器。 2、 从当前的元数据服器(master)或日志备份服务器(mfsmetalogger)复制备文件 metadata.mfs.back/metadate_ml.mfs.back到新的元服务器目录(metadata.mfs.back需要定时用crontab备份). 3、 从当前的元数据服器(master)或日志备份服务器(mfsmetalogger)复制元数据服务器数据目录(/usr/local/mfs/var/mfs)到这个新的元数据服务器。 4、 停止原先的那个元数据服务器(关闭计算机或停止它的网络服务)。 5、 更改新的元数据服务器的ip为原来那个服务器的ip. 6、 执行数据恢复操作,其命令为:mfsmetarestore -mmetadata.mfs.back -o metadata.mfs changelog_ml.*.mfs 恢复成功后再执行启动新的元数据服务操作。 7、 启动新的元数据服务 /usr/local/mfs/sbin/mfsmasterstart 8、 在MFS客户端检查MFS存储的数据是否跟恢复前一致?能否正常访问等等。 转载请保留固定链接: https://linuxeye.com/configuration/1619.html |