hitl 发表于 2019-2-1 09:55:03

分布式文件系统MooseFs部署(一)


    MooseFS是一种分布式文件系统,MooseFS文件系统结构包括以下四种角色: 1 管理服务器managing server (master)
   负责各个数据存储服务器的管理,文件读写调度,文件空间回收以及恢复.多节点拷贝
2 元数据日志服务器Metalogger server(Metalogger)
   负责备份master服务器的变化日志文件,文件类型为changelog_ml.*.mfs,以便于在master server出问题的时候接替其进行工作
3 数据存储服务器data servers (chunkservers)
   负责连接管理服务器,听从管理服务器调度,提供存储空间,并为客户提供数据传输.
4 客户机挂载使用client computers(需要FUSE支持)
   通过fuse内核接口挂接远程管理服务器上所管理的数据存储服务器,.看起来共享的文件系统和本地unix文件系统使用一样的效果.

MooseFs数据读取过程如下图:

http://blog.运维网.com/attachment/201204/180057754.jpg

MooseFs数据写入过程如下图:


http://blog.运维网.com/attachment/201204/180225718.jpg
环境如下:
Master:192.168.1.10
Metalogger: 192.168.3.140
Chunkserver: 192.168.3.161/192.168.3.162
Client: 192.168.3.163
MFS: mfs-1.6.20-2.tar.gzfuse-2.7.6
OS: linux centos5.4

Master Server安装
创建用户
Useradd-M –s /sbin/nologin mfs
解压软件
Tar zxf 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-mfsmount \                         #不编译客户端
--disable-mfschunkserver                      #不编译数据存储端
Make && make install

MasterServer配置
Masterserver的配置文件在/usr/local/mfs/etc下,分别是mfsmaster.cfg和mfsexports.cfg
安装完成后2个配置文件默认都以dist结尾,所以只需要将2个配置文件改名:
Cd /usr/local/mfs/etc
Cp mfsmaster.cfg.dist mfsmaster.cfg
Cp mfsexports.cfg.dist mfsexport.cfg
默认配置文件里面的配置是注释掉的,但是实际他们是生效的,如要修改配置直接把#去掉修改分别查看2个配置文件:

# vi mfsmaster.cfg
# WORKING_USER = mfs
#运行master的用户
# WORKING_GROUP = mfs
#运行master的组
# SYSLOG_IDENT = mfsmaster
#masterserver在syslog中的标示,表示是由master产生
# LOCK_MEMORY = 0
#是否执行mlockall,以避免master进程溢出
# NICE_LEVEL = -19
#进程优先级,默认是-19时必须以root启动
# EXPORTS_FILENAME = /usr/local/mfs/etc/mfsexports.cfg
#被挂载目录配置文件的位置
# DATA_PATH = /usr/local/mfs/var/mfs
#数据存放路径,有sessions,stats,metadata,changelog等日志
# BACK_LOGS = 50
#metadata更改的log文件数目
# REPLICATIONS_DELAY_INIT = 300
#延迟复制时间
# REPLICATIONS_DELAY_DISCONNECT = 3600
#chunkserver断开的复制延迟
# MATOML_LISTEN_HOST = *
# MATOML_LISTEN_PORT = 9419
#metalog监听的ip地址和端口
# MATOCS_LISTEN_HOST = *
# MATOCS_LISTEN_PORT = 9420
#用于chunkserver连接的ip地址和端口
# MATOCU_LISTEN_HOST = *
# MATOCU_LISTEN_PORT = 9421
#用于客户端挂载的ip地址和端口
# CHUNKS_LOOP_TIME = 300
#chunk的回环频率
# CHUNKS_DEL_LIMIT = 100
#chunk在loop中被删除的最大延迟时间
# CHUNKS_WRITE_REP_LIMIT = 1
# CHUNKS_READ_REP_LIMIT = 5
# REJECT_OLD_CLIENTS = 0
# deprecated, to be removed in MooseFS 1.7
# LOCK_FILE = /var/run/mfs/mfsmaster.lock


# vi mfsexports.cfg
192.168.0.0/16               /               rw,alldirs,maproot=mfs
#配置挂载目录权限
#允许的客户端IP            目录            读写权限,所有子目录,映射的用户

最后还需要复制一个文件
Cp/usr/local/mfs/var/mfs/metadata.mfs.empty   /usr/local/mfs/var/mfs/metadata.mfs

现在可以启动mater服务器
cd /usr/local/mfs/sbin/
./mfsmasterstart
查看mfsmaster状态
# netstat -tupln|grep mfsmaster
tcp   0   0 0.0.0.0:9419      0.0.0.0:*            LISTEN      31631/mfsmaster   
tcp   0   0 0.0.0.0:9420      0.0.0.0:*            LISTEN      31631/mfsmaster   
tcp   0   0 0.0.0.0:9421      0.0.0.0:*            LISTEN      31631/mfsmaster   
另外可以tail –f var/log/message可以查看master的一些日志
注意:在关闭master server不要使用kill命令,使用./mfsmasterstop关闭,否则会造成无法启动,但可以用mfsmetastore修复。














页: [1]
查看完整版本: 分布式文件系统MooseFs部署(一)