部署环境:CentOS release6.2
使用的主机IP地址分配如下:
主控服务器Masterserver:172.16.17.41
主控备份服务器 Metaloggerserver:172.16.17.44
存储块服务器 Chunk server:172.16.17.42and 172.16.17.43
客户端主机(cliens):172.16.17.45
一、主控服务器Masterserver安装
安装:
1.下载源码
# wget
2.解压包
# tar zxvf mfs-1.6.27-5.tar.gz
3.切换目录
#cd mfs-1.6.27
4.添加用户
# useradd mfs –s /sbin/nologin
5.配置
# ./configure --prefix=/usr/local/mfs--with-default-user=mfs --with-default-group=mfs
6.编译安装
# make && make install
成功安装master以后,系统会在/usr/local/mfs/etc目录下自动生成样例配置文件,这些样例文件是以.dist后缀命名的。这里我们将借用这些样例文件作为MooseFS 主控服务器的目标配置文件:
1. 切换目录
# cd /usr/local/mfs/etc
2. 复制样例文件,以得到master所需的配置文件
# cp mfsmaster.cfg.dist mfsmaster.cfg
# cp mfsexports.cfg.dist mfsexports.cfg
如果我们打算更改这些配置文件中的某些项的值,则需要打开特定配置文件相关文本行的注释,然后修改跟随其后的值。因为被注释掉的行,是MooseFS内置的缺省值。
配置文件mfsmaster.cfg包含主控服务器master 相关的设置,在这里我们暂时不打算对其进行修改。
配置文件 mfsexports.cfg 指定那些客户端主机可以远程挂接 MooseFS 文件系统,以及授予挂接客户端什么样的访问权限。
3. 切换目录
# cd /usr/local/mfs/var/mfs
4. 复制文件
首次安装master 时,会在master配置文件中DATA_PATH指定的工作目录下自动生成一个名为metadata.mfs.empty的元数据文件。MooseFS master 运行必须有文件metadata.mfs,(metadata.mfs是MooseFS文件系统的元数据metadata的镜像),这个文件是从metadata.mfs.empty 改名而来:
# cp metadata.mfs.emptymetadata.mfs
启动服务
执行以下命令:
#/usr/local/mfs/sbin/mfsmaster start 出现如下图所示的内容:
为了监控 MooseFS 当前运行状态,我们可以运行CGI 监控服务,这样就可以用浏览器查看整个MooseFS 的运行情况,执行#/usr/local/mfs/sbin/mfscgiserv,运行成功则显示:
现在,我们在浏览器地址栏输入http://master_ip:port(master_ip即为主控服务器的IP地址,port为上图中的端口号),即可查看 master 的运行情况。
关闭master服务:
/usr/local/mfs/sbin/mfsmaster –s
注意:关闭管理服务器,务必使用/usr/local/mfs/sbin/mfsmaster stop 这种方式,如果直接使用kill杀死进程,将导致下次启动时出现找不到相关文件,而不能正常启动服务器。
二、备份服务器Backup server安装
备份服务器metelogger的安装和主控服务器master的安装类似,安装命令如下:
1. 下载源码
# wget
2. 解压包
# tar zxvf mfs-1.6.27-5.tar.gz
3. 切换目录
#cd mfs-1.6.27
4. 添加用户
# useradd mfs –s /sbin/nologin
5. 配置
# ./configure --prefix=/usr/local/mfs--with-default-user=mfs --with-default-group=mfs
6. 编译安装
# make && make install
配置:
1. 切换目录
#cd /usr/local/mfs/etc
2.复制样例文件
#cpmfsmetalogger.cfg.dist mfsmetalogger.cfg
修改/etc/hosts文件:#vim/etc/hosts
增加如下图所示的内容:
备份服务 mfsmetaloger的启动和关闭:
1. 启动命令:/usr/local/mfs/sbin/mfsmetaloggerstart
2. 关闭命令: /usr/local/mfs/sbin/mfsmetalogger stop
三、存储块服务器Chunk server的安装
安装:
1.下载源码
# wget
2.解压包
# tar zxvf mfs-1.6.27-5.tar.gz
3.切换目录
#cd mfs-1.6.27
4.添加用户
# useradd mfs –s /sbin/nologin
5.配置
# ./configure --prefix=/usr/local/mfs--with-default-user=mfs --with-default-group=mfs
6.编译安装
# make && make install
配置:
1.切换目录
# cd /usr/local/mfs/etc
2.复制样例文件,以得到所需的配置文件
#cp mfschunkserver.cfg.distmfschunkserver.cfg
#cp mfshdd.cfg.dist mfshdd.cfg.cfg
为了测试这个安装,我们保留mfschunkserver.cfg 文件不做任何改动。
在配置文件mfshdd.cfg 中,我们给出了用于客户端挂接MooseFS 分布式文件系统根分区使用的共享空间位置。建议在chunk server 上划分单独的空间给MooseFS 使用,这样做好处是便于管理剩余空间。此处我们假定要使用服务器中一个分区/mnt/sdc作为存储目录,为此在mfshdd.cfg 加入下面的文本行:
执行命令:mkdir/mnt/sdc
在启动chunkserver前,需确保用户mfs有权限读写将要被挂接的分区,因为chunkserve运行时要在此创建一个.lock的文件,执行命令:chown –R mfs:mfs /mnt/sdc
注意:如果不执行mkdir/mnt/sdc命令,会提示目录找不到。
修改/etc/hosts文件:#vim/etc/hosts,增加:172.16.17.41 mfsmaster
启动和关闭存储块服务器:
1. 启动命令:# /usr/local/mfs/sbin/mfschunkserver start
2. 关闭命令:# /usr/local/mfs/sbin/mfschunkserver stop
四、客户端安装
为了挂接基于MooseFS 分布式文件,客户端主机必须安装FUSE 软件包(fuse版本号至少2.6,推荐使用版本号大于2.7.2的fuse)。
#rpm –qa |grep fuse,确认fuse和fuse-libs是否已安装,若未安装则进行下面的操作。
1.下载软件包
# wget http://sourceforge.net/projects/fuse/
2.解压缩
# tar zxvf fuse-2.8.5.tar.gz
3.切换目录
# cd fuse-2.8.5
4.配置
# ./configure
5.编译安装
# make &&,ake install
安装客户端程序:
1、为了正确安装MFS,需修改环境变量文件# vim /etc/profile ,追加下面的行:
exportPKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH
然后执行命令source /etc/profile 使修改生效
2.下载源码
# wget
3. 解压缩
# tar zxvf mfs-1.6.27-5.tar.gz
4. 切换目录
# cd mfs-1.6.27
5.添加用户
#useraddmfs –s /sbin/nologin
6.配置
#./configure--prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs--enable-mfsmount
7.编译和安装
# make &&make install
修改/etc/hosts文件:#vim/etc/hosts,增加:172.16.17.41 mfsmaster
挂载MFS文件系统:
1. 创建挂接点:
# cd /mnt/
# mkdir mfs
2. 加载fuse模块到内核
# modprobe fuse
(可先执行# lsmod|grep fuse,若查询结果中存在fuse,则直接进行步骤3)
3. 开始挂接操作:
#/usr/local/mfs/bin/mfsmount/mnt/mfs –H mfsmaster
4. 通过查看磁盘使用情况来检查是否被挂接成功
# df –h | grep mfs
为了安全停止MooseFS 集群,建议执行如下的步骤:
停止chunk server 进程: /usr/sbin/mfschunkserver -s
停止 metalogger 进程: /usr/sbin/mfsmetalogger -s
在所有客户端用Unmount 命令先卸载文件系统(本例将是: umount /mnt/mfs)
停止主控 master server 进程: /usr/sbin/mfsmaster –s