个人博客迁移 更多内容分享请访问 http://www.wpython.com
主控服务器Master server安装
当我们安装主控服务器时,在配置的过程中(./configure),可以取消安装chunk server (--disabled-mfschunkserver)以及Moosefs客户端(--disabled-mfsmount).Master server具体安装步骤:
1、创建mfs组
# groupadd mfs
2、创建mfs用户
# useradd -g mfs -s /sbin/nologin mfs
3、切换目录
# cd tools/
4、解包归档文件
# tar xzf mfs-1.6.27-1.tar.gz
5、进入安装目录
# cd mfs-1.6.27
6、配置
# ./configure\
--prefix=/data/soft/mfs-1.6.27 \
--sysconfdir=/data/soft/mfs-1.6.27/etc \
--localstatedir=/data/soft/mfs-1.6.27/var/lib \
--with-default-user=mfs \
--with-default-group=mfs \
--disable-mfschunkserver \
--disable-mfsmount
7、编译并安装
# make &&make install
成功安装master以后,系统会在etc/ 目录下自动生成样例配置文件(.dist结尾的文件):
1、切换目录
# cd /data/soft/mfs-1.6.27/etc/mfs/
2、复制样例文件
# cp mfsexports.cfg.distmfsexports.cfg
# cp mfsmaster.cfg.distmfsmaster.cfg
3、首次安装需要数据文件
# cd /data/soft/mfs-1.6.27/var/lib/mfs/
# cp metadata.mfs.emptymetadata.mfs
4、启动master:
# /data/soft/mfs-1.6.27/sbin/mfsmasterstart
5、启动cgi
# /data/soft/mfs-1.6.27/sbin/ mfscgiservstart
6、尝试访问
# http://192.168.1.100:9425
需要注意的问题如果访问抛出错误请升级python版本
tar xzf Python-2.7.4.tar
cd Python-2.7.4
./configure && make && makeinstall
备份服务器Backup server安装
用来安装metalogger的主机,在性能上应该比master强大(至少需要更大的内存)当主控节点down机可以通过本地同步的数据文件和log 来接管master server 安装如下:
1、创建mfs组
# groupadd mfs
2、创建mfs用户
# useradd -g mfs -s /sbin/nologin mfs
3、切换目录
# cd tools/
4、解包归档文件
# tar xzf mfs-1.6.27-1.tar.gz
5、进入安装目录
# cd mfs-1.6.27
6、配置
# ./configure\
--prefix=/data/soft/mfs-1.6.27 \
--sysconfdir=/data/soft/mfs-1.6.27/etc \
--localstatedir=/data/soft/mfs-1.6.27/var/lib \
--with-default-user=mfs \
--with-default-group=mfs \
--disable-mfschunkserver \
--disable-mfsmount
7、编译并安装
make && make install
8、配置文件
# cd /data/soft/mfs-1.6.27/etc/mfs/
# cp mfsmetalogger.cfg.dist mfsmetalogger.cfg
8、添加本地hosts解析
# vi /etc/hosts
#192.168.1.100 mfsmaster
在正式环境中应该制作一个服务启动脚本
存储块服务器 Chunk server安装
1、mfs组
# groupadd mfs
2、创建mfs用户
# useradd -g mfs -s /sbin/nologin mfs
3、切换目录
# cd tools/
4、解包归档文件
# tar xzf mfs-1.6.27-1.tar.gz
5、进入安装目录
# cd mfs-1.6.27
6、配置
./configure\
--prefix=/data/soft/mfs-1.6.27 \
--sysconfdir=/data/soft/mfs-1.6.27/etc \
--localstatedir=/data/soft/mfs-1.6.27/var/lib \
--with-default-user=mfs \
--with-default-group=mfs \
--disable-mfsmaster
7、编译并安装
make && make install
8、host解析
# vi /etc/hosts
192.168.1.100 mfsmaster
9、准备配置文件
# cd /data/soft/mfs-1.6.27/etc/mfs/
# cp mfschunkserver.cfg.distmfschunkserver.cfg
# cp mfshdd.cfg.distmfshdd.cfg
10、mfshdd文件的使用:
在配置文件mfshdd.cfg 是要共享出去的硬盘这里面直接写入本地挂载的路径即可
vi mfshdd.cfg
/data/data1
/mnt/data2
11、在启动chunk server的时候需要保证mfs用户有权限读写挂载的分区
chown mfs:mfs /data/data1
chown mfs:mfs /mnt/data2
12、启动chunk server
/data/soft/mfs-1.6.27/sbin/mfschunkserver start
这时候再通过浏览器http://192.168.1.100:9425访问
客户端 Users’ computers安装
1、建mfs用户和组
# groupadd mfs && useradd -g mfs -s /sbin/nologin mfs
2、装pkgconfig
rpm -Uvh pkgconfig-0.21-2.el5.x86_64.rpm>> /dev/null 2>&1
3、编译utils-linux
tar jxf util-linux-2.20.tar.bz2
cd util-linux-2.20
./configure>> /dev/null 2>&1
make >> /dev/null 2>&1
make install >> /dev/null 2>&1
cd ..
4、编译fuse
tar xzf fuse-2.9.2.tar.gz
cd fuse-2.9.2
./configure --prefix=/usr >> /dev/null 2>&1
make >> /dev/null 2>&1
make install >> /dev/null 2>&1
cd ..
echo "export PKG_CONFIG_PATH=/usr/lib/pkgconfig:$PKG_CONFIG_PATH" >> /etc/profile
echo "/usr/local/lib" >> /etc/ld.so.conf.d/lib.conf
. /etc/profile
/sbin/ldconfig
modprobe fuse
echo "modprobe fuse" >>/etc/rc.local
5、编译mfs_client
tar xzf mfs-1.6.27-1.tar.gz
cd mfs-1.6.27
./configure\
--prefix=/data/soft/mfs-1.6.27 \
--sysconfdir=/data/soft/mfs-1.6.27/etc \
--localstatedir=/data/soft/mfs-1.6.27/var/lib \
--with-default-user=mfs \
--with-default-group=mfs \
--disable-mfschunkserver \
--enable-mfsmount >> /dev/null 2>&1
make >> /dev/null 2>&1
make install >> /dev/null 2>&1
客户端挂载:
# 挂载存储
/data/soft/mfs-1.6.27/bin/mfsmount /mnt -H 192.168.1.100
# 创建垃圾回收站目录
cd /mnt && meta
# 垃圾回收站挂载
/data/soft/mfs-1.6.27/bin/mfsmount –m /mnt/meta –H 192.168.1.100
MooseFs基础用法(client 操作)
# 注意:创建副本数,官方推荐的数量是3个副本数,副本数不能大于chunkserver的数量
# 设置冗余goal设置(-r 是递归整个目录)
/data/soft/mfs-1.6.26/bin/mfssetgoal -r 3/data/mfs
# 查看设置的goal数
/data/soft/mfs-1.6.26/bin/mfsgetgoal/data/mfs
-----------------------------------------------------------------------------------------
# mfscheckfile 用来检查指定文件以多少副本来存储(实际创建的副本数可以用这两条命令检测)
/data/soft/mfs-1.6.26/bin/mfscheckfile/data/mfs/1.txt
# mfsfileinfo 查看文件分别传送到哪些服务器
/data/soft/mfs-1.6.26/bin/mfsfileinfo/data/mfs/1.txt
-----------------------------------------------------------------------------------------------
# 设置垃圾隔离时间(时间以秒计算 600秒等同于10分钟,官方推荐时间)
/data/soft/mfs-1.6.26/bin/mfssettrashtime 600/data/mfs
# 查看垃圾隔离时间
/data/soft/mfs-1.6.26/bin/mfsgettrashtime/data/mfs
-----------------------------------------------------------------------------------------
# 给文件或目录树做快照
/data/soft/mfs-1.6.26/bin/mfsmakesnapshot source ... destination
------------------------------------------------------------------------------------------
# mfsdirinfo查看目录树的内容摘要
/data/soft/mfs-1.6.26/bin/mfsdirinfo
===============================================================================================================
# 常用维护操作
# Mfs的维护
1、Mfs的元数据服务器存在单点故障,在mfs里最重要的也是元数据服务器,它最重要的目录是/data/soft/mfs-1.6.26/var/lib/mfs/
在这个目录下只要保证了changelog*.mfs 和 metadata.mfs 这两个文件的安全即使元数据服务器宕机也可以快速恢复
cd/data/soft/mfs-1.6.26/var/lib/mfs
tar czf mfs_backup.tar.gz*
# Mfs的恢复
2、元数据服务器非正常关掉进程(主机发生崩溃,电源异常断电,进程非正常关闭)下次启动mfsmaster会报如下错误:
can't open metadata file
if this is new instalation then rename /data/soft/mfs-1.6.26/var/lib/mfs/metadata.mfs.empty as /data/soft/mfs-1.6.26/var/lib/mfs/metadata.mfs
init: file system manager failed !!!
error occured during initialization - exiting
解决方法:
# 自动恢复文件系统
/data/soft/mfs-1.6.26/sbin/mfsmetarestore-a
# 手动恢复文件系统
mfsmetarestore-m metadata.mfs.back-o metadata.mfschangelog_ml.*.mfs
# 执行完以上任意一个步骤,就可以试着开启master服务
/data/soft/mfs-1.6.26/sbin/mfsmaster start
# 如果恢复失败那么就可以通过(从恢复备份解决)
tar xzf mfs_backup.tar.gz