CentOS 安装moosefs

安装MFS基本步骤

主机IP地址分配如下

主控服务器Master Server 192.168.88.161

主控服务器 Metalogger Server 192.168.88.162

存储块服务器 Chunk Server 192.168.88.163 AND 192.168.88.164

客户端主机 Clients 192.168.88.165

 

===========================================================

一、         主控服务器Master Server 安装

将mfs-1.6.26.tar.gz上传到/usr/software下。

安装所需组件

[root@MFS-Master ~]# yum install cmake make –y

[root@MFS-Master ~]# yum install gcc gcc-c++ autoconf automake zlib* -y

添加mfs组。

[root@MFS-Master ~]# groupadd mfs

新增系统用户

[root@MFS-Master ~]# useradd -g mfs mfs

切换目录

[root@MFS-Master ~]# cd /usr/software/

解压mfs-1.6.26.tar.gz文件

[root@MFS-Master software]# tar -zxvf mfs-1.6.26.tar.gz

进入安装目录

[root@MFS-Master software]# cd mfs-1.6.26

用户配置

[root@MFS-Master software]# ./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs

编译并安装

[root@MFS-Chunk1 mfs-1.6.26]# make && make install

切换目录

[root@MFS-Master /]# cd /usr/local/mfs/etc/

复制置文件

       [root@MFS-Master etc]# cp mfsmaster.cfg.dist mfsmaster.cfg

       [root@MFS-Master etc]# cp mfsexports.cfg.dist mfsexports.cfg

主配置文件说明

                       

修改DATA_PATH指定的目录要权限为mfs

       [root@MFS-Master etc]# chown -R mfs:mfs /usr/local/mfs/var/mfs

       注意开通监听的端口(先关闭IPTABLES)

               service iptables stop

 

配置mfsexports.cfg文件

[root@MFS-Master etc]# vi mfsexports.cfg

修改红框中的内容为

192.168.88.0/24                 /       rw,alldirs,maproot=0

该文件每一个条目分为三部分:

第一部分:客户端的ip地址

第二部分:被挂接的目录

第三部分:客户端拥有的权

 

地址可以指定的几种表现形式:

*                          所有的ip地址

n.n.n.n               单个ip地址

n.n.n.n/b           IP网络地址/位数掩码

n.n.n.n/m.m.m.m    IP网络地址/子网掩码

f.f.f.f-t.t.t.t                 IP段

 

目录部分需要注意两点:

/        标识MooseFS 根;

.       表示MFSMETA 文件系

 

权限部分:

ro               只读模式共享

rw              的方式共享

alldirs                 许挂载任何指定的子目录

maproot  映射为root,还是指定的用户

password 指定客户端密码

 

复制文件

[root@MFS-Master etc]# cp /usr/local/mfs/var/mfs/metadata.mfs.empty /usr/local/mfs/var/mfs/metadata.mfs

启动服务

[root@MFS-Master etc]# /usr/local/mfs/sbin/mfsmaster start

启动监控服务

为了监控MooseFS 当前运行状态,我们可以运行 CGI 监控服务,这样就可以用浏览器查看整个MFS的动行情况

[root@MFS-Master etc]# /usr/local/mfs/sbin/mfscgiserv

在浏览器地址栏输入 http://192.168.88.161:9425 即可查看master 的运行情况

要经常性的查看系统日志

[root@MFS-Master etc]# tail -f /var/log/messages

主控服务器Master Server 安装完成

二、         备份服务器 Backup Server(metalogger)安装

 

将mfs-1.6.26.tar.gz上传制/usr/software下。

安装所需组件

[root@MFS-Master ~]# yum install cmake make –y

[root@MFS-Master ~]# yum install gcc gcc-c++ autoconf automake zlib* -y

添加mfs组。

[root@MFS-Master ~]# groupadd mfs

新增系统用户

[root@MFS-Master ~]# useradd -g mfs mfs

切换目录

[root@MFS-Master ~]# cd /usr/software/

解压mfs-1.6.26.tar.gz文件

[root@MFS-Master software]# tar -zxvf mfs-1.6.26.tar.gz

进入安装目录

[root@MFS-Master software]# cd mfs-1.6.26

用户配置

[root@MFS-Master software]# ./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs

编译并安装

[root@MFS-Chunk1 mfs-1.6.26]# make && make install

切换目录

[root@MFS-Master /]# cd /usr/local/mfs/etc/

复制置文件

[root@MFS-Metalogger etc]# cp mfsmetalogger.cfg.dist mfsmetalogger.cfg

修改配置文件

[root@MFS-Metalogger etc]# vi mfsmetalogger.cfg

在配置文件中添加一行 MASTER_HOST = 192.168.88.161(主控服务器的IP)

再将 MASTER_PORT = 9419 这行的注释打开

 

(注:

MASTER_HOST 不能为localhost或127.0.0.1,要使用对外IP。

MASTER_PORT必须为元数据服务器配置中MATOCS_LISTEN_PORT指定的端口,且IP必须被master允许。)

启动服务

[root@MFS-Metalogger mfs]# /usr/local/mfs/sbin/mfsmetalogger start

(注:需要将主控服务器打开)

是否启动成功可查看http://192.168.88.161:9425

 

备份服务器 Backup Server(metalogger)安装完成

三、         存储服务器 Chunk Server 安装

将mfs-1.6.26.tar.gz上传制/usr/software下。

安装所需组件

[root@MFS-Master ~]# yum install cmake make –y

[root@MFS-Master ~]# yum install gcc gcc-c++ autoconf automake zlib* -y

添加mfs组。

[root@MFS-Master ~]# groupadd mfs

新增系统用户

[root@MFS-Master ~]# useradd -g mfs mfs

切换目录

[root@MFS-Master ~]# cd /usr/software/

解压mfs-1.6.26.tar.gz文件

[root@MFS-Master software]# tar -zxvf mfs-1.6.26.tar.gz

进入安装目录

[root@MFS-Master software]# cd mfs-1.6.26

用户配置

[root@MFS-Master software]# ./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs

编译并安装

[root@MFS-Chunk1 mfs-1.6.26]# make && make install

切换目录

[root@MFS-Chunk1 mfs-1.6.26]# cd /usr/local/mfs/etc/

复制配置文件

[root@MFS-Chunk1 etc]# cp mfschunkserver.cfg.dist mfschunkserver.cfg

[root@MFS-Chunk1 etc]# cp mfshdd.cfg.dist mfshdd.cfg

修改配置文件

[root@MFS-Chunk1 etc]# vi mfschunkserver.cfg

在配置文件中添加一行 MASTER_HOST = 192.168.88.161(主控服务器的IP)

再将 MASTER_PORT = 9420 这行的注释打开

 

 

[root@MFS-Chunk1 etc]# vi mfshdd.cfg

 

(注:需要在根目录下创建一个data的目录 mkdir data)

修改权限

需要让mfs用户拥有写目录的权限

[root@MFS-Chunk1 etc]# cd /

[root@mysql_master /]# mkdir data

[root@MFS-Chunk1 /]# chown -R mfs:mfs /data

启动服务

[root@MFS-Chunk1 /]# /usr/local/mfs/sbin/mfschunkserver start

(注:需要将主控服务器打开)

是否启动成功可查看http://192.168.88.161:9425

 

第二个存储服务器的安装和配置相同

 

 

四、         客户端安装

将fuse-2.9.2.tar.gz上传制/usr/software下

将mfs-1.6.26.tar.gz上传制/usr/software下

FUSE安装

[root@mysql1 ~]# cd /usr/software/

解压文件

[root@mysql1 software]# tar -zxvf fuse-2.9.2.tar.gz

切换目录

[root@mysql1 software]# cd fuse-2.9.2

配置 一下

[root@mysql1 fuse-2.9.2]# ./configure

编译安装

[root@mysql1 fuse-2.9.2]#

修改环境变量

[root@mysql1 fuse-2.9.2]# echo 'export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH' >>/etc/profile

[root@mysql1 fuse-2.9.2]# source /etc/profile

[root@mysql1 fuse-2.9.2]# modprobe fuse

MFSMount安装

添加mfs组。

[root@MFS-Master ~]# groupadd mfs

新增系统用户

[root@MFS-Master ~]# useradd -g mfs mfs

进入目录

[root@MFS-Master ~]# cd /usr/software/

解压mfs-1.6.26.tar.gz文件

[root@MFS-Master software]# tar -zxvf mfs-1.6.26.tar.gz

进入安装目录

[root@MFS-Master software]# cd mfs-1.6.26

用户配置

[root@MFS-Master software]# ./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs

编译并安装

[root@MFS-Chunk1 mfs-1.6.26]# make && make install

创建挂接点

[root@mysql1 bin]# cd /

[root@mysql1 /]# mkdir /mnt/mfs

[root@mysql1 /]# cd /usr/local/mfs/bin/

[root@mysql1 bin]# /usr/local/mfs/bin/mfsmount /mnt/mfs -H 192.168.88.161

(注:所有的MFS都是挂接同一个元数据服务器master,而不是其他数据存储服务器chunkserver)

挂接垃圾箱

[root@mysql1 bin]# cd /

[root@mysql1 /]# mkdir /mnt/mfsmeta

[root@mysql1 /]# cd /usr/local/mfs/bin/

[root@mysql1 bin]# /usr/local/mfs/bin/mfsmount -m /mnt/mfsmeta -H 192.168.88.161

设置文件副本数量

[root@mysql1 bin]# /usr/local/mfs/bin/mfssetgoal 2 /mnt/mfs

(注:设置该数值时,不要超过ChunkServer的数量)

相关命令

启动master服务

/usr/local/mfs/sbin/mfsmaster start

停止master服务

/usr/local/mfs/sbin/mfsmaster stop

(注:一定要安全停止master server是非常必要的,最好不要用kill。利用mfsmaster –s来安全停止master serve)

启动和停止web gui

启动: /usr/local/mfs/sbin/mfscgiserv

停止: kill /usr/local/mfs/sbin/mfscgiserv

启动chunkvserver服务

 /usr/local/mfs/sbin/mfschunkserver start

停止chunksever服务

 /usr/local/mfs/sbin/mfschunkserver stop

启动metalogger服务

/usr/local/mfs/sbin/mfsmetalogger start

停止metalogger服务

/usr/local/mfs/sbin/mfsmetalogger stop

设置副本 的份数,推荐3份

/usr/local/mfs/bin/mfssetgoal -r 3 /mnt/mfs

(注:如果之前设置为副本为2,用 –r 修改副本数为3,会将之前副本为2的文件再增加一个副本)

查看挂载的目录有设置了几个副 本

[root@Client /]# /usr/local/mfs/bin/mfsgetgoal /mnt/mfs/

查看一个文件有几个CHUNK,有几个COPY

[root@mysql1 mfs]# /usr/local/mfs/bin/mfsfileinfo test10.rar

 

查看目录下所有信息

[root@mysql1 mfs]# /usr/local/mfs/bin/mfsdirinfo /mnt/mfs

 

设置垃圾箱删除文件时间

[root@mysql1 mfs]# /usr/local/mfs/bin/mfssettrashtime 3600 /mnt/mfs/

挂接垃圾箱

[root@mysql1 bin]# /usr/local/mfs/bin/mfsmount -m /mnt/mfsmeta -H 192.168.88.161

[root@mysql1 bin]# ls /mnt/ mfsmeta /trash

 

恢复被删除的文件

被删除的文件名由一个八位十六进制数和被删文件的文件名组成

[root@mysql1 trash]# cd /mnt/ mfsmeta /trash/

 

只要将要恢复的文件移动到undel文件夹中,文件就恢复了

[root@mysql1 trash]# mv '0000002B|test3.rar' undel

 

恢复数据

第一种方式:通过备份Master的/usr/local/mfs/var/mfs文件夹下的文件进行恢复

1、          先备份Master Server的/usr/local/mfs/var/mfs文件夹下的文件(可以通过crontab来完成)

2、          将好使的Master Server的/usr/local/mfs/var/mfs下的文件删除

3、          将备份的文件重新拷贝到/usr/local/mfs/var/mfs文件夹下

4、          将metadata.mfs.back文件改为metadata.mfs

5、          [root@Master etc]# chown -R mfs:mfs /usr/local/mfs/var/mfs

6、          [root@Master etc]# reboot

7、          重启后启动服务/usr/local/mfs/sbin/mfsmaster start,恢复成功。

 

第二种方式:通过Backup Server进行恢复

1、          重新安装一个Master Server

2、          到Backup Server的/usr/local/mfs/var/mfs/目录下找到metadata_ml.mfs.back文件和最后一个日志文件,我最后一个日志文件是changelog_ml.21.mfs

3、          将这两个文件复制到Master Server的/usr/local/mfs/etc/目录下

4、          执行/usr/local/mfs/sbin/mfsmetarestore -m metadata_ml.mfs.back -o /usr/local/mfs/var/mfs/metadata.mfs changelog_ml.21.mfs

重启后启动服务,恢复成功。

posted @ 2012-12-26 17:30  缤纷世界  阅读(1582)  评论(0编辑  收藏  举报