2009-06-25 18:02:28
参考田逸老师的文章:http://sery.blog.51cto.com/实践过程如下: (一) 安装元数据服务 1、下载GNU源码 wget http://www.moosefs.com/files/mfs-1.5.12.tar.gz 2、解包 tar zxvf mfs-1.5.12.tar.gz 3、切换目录 cd mfs-1.5.12 4、创建用户 useradd mfs -s /sbin/nologin 5、配置 ./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs 6、编译安装 make ; make install 二。 配置元服务器 cd /usr/local/mfs/etc cat mfsmaster.cfg mkdir -p /var/run/mfs chown -R mfs:mfs /var/run/mfs /usr/local/mfs/sbin/mfsmaster start ps -ef | grep mfsmaster | grep -v grep 注意: /usr/local/mfs/sbin/mfsmaster -s 关闭元数据服务器 三.安装数据服务器1、下载GNU源码 wget http://www.moosefs.com/files/mfs-1.5.12.tar.gz 2、解包 tar zxvf mfs-1.5.12.tar.gz 3、切换目录 cd mfs-1.5.12 4、创建用户 useradd mfs -s /sbin/nologin 5、配置 ./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs 6、编译安装 make ; make install配置数据服务器 cd /usr/local/mfs/etc vi mfschunkserver.cfg 修改两处 MASTER_HOST = 192.168.2.88 元数据服务器的IP MASTER_PORT = 9420 元数据服务的端口mkdir -p /var/run/mfs chown -R mfs:mfs /var/run/mfs vi mfshdd.cfg 只写/data因为我的/dev/hdb1挂载到/data上 chown -R mfs:mfs /data /usr/local/mfs/sbin/mfschunkserver start ps -ef | grep mfschunkserver netstat -an | grep 9422 注意: /usr/local/mfs/sbin/mfschunkserver -s 关闭数据服务器其他的数据服务器的安装方法和配置方法如上四.client的配置 1、解包 tar zxvf fuse-2.7.4.tar.gz 2、切换目录 cd fuse-2.7.4. 3、配置 ./configure 4、编译安装 make;make install 5. vi /etc/profile增加export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH source /etc/profile 6.tar zxvf mfs-1.5.12.tar.gz cd mfs-1.5.12 useradd mfs -s /sbin/nologin ./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs --enable-mfsmount make && make install mkdir -p /mnt/mfs /usr/local/mfs/bin/mfsmount -h 192.168.2.88 df -h /usr/local/mfs/bin/mfsrsetgoal 3 /mnt/mfs/ 设置副本数为3 /usr/local/mfs/bin/mfsrsettrashtime 600 /mnt/mfs/ 设置回收时间为600s即10分钟 7.设置自动挂载 在/etc/rc.d/rc.local里加上如下内容: /sbin/kldload /usr/local/modules/fuse.ko /usr/local/mfs/bin/mfsmount -h 192.168.2.88 五.破坏性测试 1.测试数据存储服务器 我用5个服务器组成了MFS的存储平台,其中一个是master,其余四个服务器是chunkserver.先停止一个chunkserver服务, 然后在某个MFS客户端往挂接点的目录(/mnt/mfs)里复制数据或者创建目录/文件、或者读取文件、或者删除文件,观察操作是否能正常进行。 再停止第2个chunkserver,重复执行上述操作;然后再停止第3个服务器,执行类似的文件读些操作。 减少chunkserver试验后,我们再来逐步增加chunkserver服务器,然后对MFS执行读写等相关访问操作,检验其正确性。 通过增减chunkserver服务器的测试,服务的可靠性确实不错,哪怕只剩下最后一个服务器,也能正常提供存储访问服务。 2.测试元数据服务器 元数据服务器最重要的文件在目录 /usr/local/mfs/var/mfs ,MFS每一个数据的变化,都被记录在这个目录的文件里, 我们可以通过备份这个目录的全部文件,来保障整个MFS文件系统的可靠性.在正常情况下,元数据服务器的改变日志文件(changelogs) 实时地、 自动地复制到所有的数据存储服务器,并且以changelog_csback.*.mfs的形式命名。 换句换说,即使元数据服务器报废了,也能再部署一个元数据服务器,然后从数据存储服务器chunkserver取得恢复所需要的文件。 (1).本地测试 1、停止元数据服务 /usr/local/mfs/sbin/mfsmaster 2、备份元数据服务器数据 cd /usr/local/mfs/var; tar czvf mfs.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存储的数据是否跟恢复前一致?能否正常访问等等。 (2). 迁移测试 1、 安装新的MFS元数据服务器。 2、 复制元数据服务器数据目录(/usr/local/mfs/var/mfs)到这个新的元数据服务器。 3、 停止原先的那个元数据服务器(关闭计算机或停止它的网络服务)。 4、 更改新的元数据服务器的ip为原来那个服务器的ip. 5、 启动新的元数据服务 /usr/local/mfs/sbin/mfsmaster start 6、 在MFS客户端检查MFS存储的数据是否跟恢复前一致?能否正常访问等等。 |