三、MFS的安装、部署、配置

测试环境:

IP        

作用          

192.168.0.1

master server

192.168.0.2

metalogger server

192.168.0.3

chunk server

192.168.0.4

chunk server

192.168.0.5

chunk server

192.168.0.6

mfs client

3.1  Master Server

192.168.0.1进行如下操作:

3.1.1 安装:

$useradd mfs -s /sbin/nologin

$wget http://www.moosefs.org/tl_files/mfscode/mfs-1.6.20-2.tar.gz$tar zxvf mfs-1.6.20-2.tar.gz

$cd mfs-1.6.20-2/

$./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs --disable-mfschunkserver --disable-mfsmount

$make

$make install

$cd /usr/local/mfs/etc

$cp mfsmaster.cfg.dist mfsmaster.cfg#主配置文件

$cp mfsexports.cfg.dist mfsexports.cfg #被挂接目录及权限配置

3.1.2 配置:

$vi /usr/local/mfs/etc/mfsmaster.cfg

# WORKING_ USER = mfs#运行master server 的用户

# WORKING_ GROUP = mfs#运行master server 的组

# SYSLOG_IDENT = mfsmaster #master server syslog 中的标识,说明是由master serve 产生的

# LOCK_MEMORY = 0#是否执行mlockall()以避免mfsmaster 进程溢出(默认为0

# NICE_LEVEL = -19#运行的优先级(如果可以默认是-19; 注意进程必须是用root 启动)

# EXPORTS_FILENAME = /usr/local/mfs/etc/mfsexports.cfg #被挂接目录及其权限控制文件的存放位置

# DATA_PATH = /usr/local/mfs/var/mfs#数据存放路径,此目录下大致有三类文件,changelogsessions stats

# BACK_LOGS = 50#metadata 的改变log 文件数目(默认是50);

# REPLICATIONS_ DELAY_INIT = 300#延迟复制的时间(默认是300s;

# REPLICATIONS_ DELAY_DISCONNECT = 3600 #chunkserver 断开的复制延迟(默认是3600);

# MATOML_LISTEN_HOST = *#metalogger 监听的IP 地址(默认是*,代表任何IP)

# MATOML_LISTEN_PORT = 9419 #metalogger 监听的端口地址(默认是9419)

# MATOCS_LISTEN_ HOST = *#用于chunkserver 连接的IP 地址(默认是*,代表任何IP);

# MATOCS_LISTEN_PORT = 9420 #用于chunkserver 连接的端口地址(默认是9420);

# MATOCU_LISTEN_HOST = *#用于客户端挂接连接的IP 地址(默认是*,代表任何IP)

# MATOCU_LISTEN_PORT = 9421 #用于客户端挂接连接的端口地址(默认是9421);

# CHUNKS_LOOP_TIME = 300#chunks 回环频率(默认是:300 秒);# CHUNKS_DEL_LIMIT = 100

# CHUNKS_WRITE_REP_LIMIT = 1 #在一个循环里复制到一个chunkserver 的最大chunk 数目(默认是1

# CHUNKS_READ_REP_LIMIT = 5#在一个循环里从一个chunkserver 复制的最大chunk 数目(默认是5

# REJECT_OLD_ CLIENTS = 0#弹出低于1.6.0 的客户端挂接(1,默认是0

注意:

·凡是用#注释掉的变量均使用其默认值

·修改DATA_PATH指定的目录要权限为mfschown -R mfs:mfs /usr/local/mfs/var/mfs

·mfsexports 访问控制对于那些老客户是没用的

·注意开通监听的端口

$vi /usr/local/mfs/etc/mfsexports.cfg
#
客户端IP允许挂载的目录客户端拥有的权限

192.168.0.0/24/rw,alldirs,maproot=0# /标识MFS的根

192.168.0.0/24.rw# .标识MFSMETA 文件系统

地址可以指定的格式

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 

权限说明:

权限    

说明        

ro

只读模式

rw

读写模式

alldirs

许挂载任何指定的子目录  

maproot

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

password

指定客户端密码

 

3.1.3  操作:

$/usr/local/mfs/sbin/mfsmaster [-vdu] [-t locktimeout] [-c cfgfile] [start|stop|restart|reload] #master服务操作
$/usr/local/mfs/sbin/mfscgiserv#
启动WEBUI 监控服务,访问http://192.168.0.1:9425/

注意:

最好不要kill master,安全停止执行mfsmaster stop,否则下次启动因metadata.mfs.back而出现问题,还需要使用备份来恢复。

文件说明:

$ls -l /usr/local/mfs/var/mfs#此目录见mfsmaster.cfgDATA_PATH配置

metadata.mfs.back#MFS元数据信息,延迟将内存数据写入文件,默认频率1h,默认1d同步一次此文件到metalogger server

changelog.*.mfs#文件操作日志记录,实时记录、同步到metalogger server

sessions.mfs#客户操作状态记录

stats.mfs#

3.1.4 备注:

·用户操作日志见:changelog.*.mfs

·进程产生的日志放到系统日志中:/var/log/messages

·Master可以单独启动,注意开通监听的端口

3.2  Chunk Server

192.168.0.3-192.168.0.5 进行如下操作

3.2.1 安装:

$useradd mfs -s /sbin/nologin

$wget http://www.moosefs.org/tl_files/mfscode/mfs-1.6.20-2.tar.gz

$tar zxvf mfs-1.6.20-2.tar.gz

$cd mfs-1.6.20-2/

$./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs --disable-mfsmaster --disable-mfsmount

$make

$make install

$cd /usr/local/mfs/etc

$cp mfschunkserver.cfg.dist mfschunkserver.cfg #chunk配置文件
$cp mfshdd.cfg.dist mfshdd.cfg#MFS
使用空间配置

3.2.2 配置:

$vi /usr/local/mfs/etc/mfschunkserver.cfg

# WORKING_USER = mfs

# WORKING_GROUP = mfs

# DATA_PATH = /usr/local/mfs/var/mfs

# LOCK_FILE = /var/run/mfs/mfschunkserver.pid

# SYSLOG_IDENT = mfschunkserver

# BACK_LOGS = 50

# MASTER_RECONNECTION_DELAY = 30

MASTER_HOST = 192.168.0.1 #元数据服务器的名称或地址,可以是主机名,也可以是ip 地址

# MASTER_PORT = 9420 #Matser MATOCS_LISTEN_PORT指定的端口

# MASTER_TIMEOUT = 60

# CSSERV_LISTEN_HOST = *

# CSSERV_LISTEN_PORT = 9422 这个监听端口用于与其它数据存储服务器间的连接,通常是数据复制

# CSSERV_TIMEOUT = 60

# CSTOCS_TIMEOUT = 60

# HDD_CONF_FILENAME = /usr/local/mfs/etc/mfshdd.cfg 分配给MFS 使用的磁盘空间配置文件的位置

注意:

·MASTER_HOST 不能为localhost127.0.0.1,做单机测试的童鞋们注意了,要使用对外IP

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

·注意开通监控的端口(这里是9422)

$chown -R mfs:mfs /data#没有这一操作,会出现写权限问题,因进程是用mfs运行的。
$vi
 /usr/local/mfs/etc/mfshdd.cfg

/data

注意:

·在这里/data 是一个给mfs 的分区,但在本机上是一个独立的目录,最好是一个单独的硬盘或者一个raid 卷,最低要求是一个分区。

·不要忘了更改目录的权限,因为mfschunkserver进程是用mfs运行的。

3.2.3 操作

/usr/local/mfs/sbin/mfschunkserver [-vdu] [-t locktimeout] [-c cfgfile] [start|stop|restart|reload]#chunkserver操作命令

3.3 MetaLogger Server

192.168.0.2上执行如下操作:

3.3.1 安装:

Master的安装步骤。