个人博客迁移   更多内容分享请访问 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

8host解析

# 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

10mfshdd文件的使用:

在配置文件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的维护

1Mfs的元数据服务器存在单点故障,在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