MooseFS之元数据服务器的安装和配置

元数据服务器可以是Linux,也可以是UNIX,你可以根据自己的使用需要选择操作系统。

安装元数据服务

MooseFS可以通过Linux发行版的包管理器进行安装,也可以通过源代码来安装。用包管理器安装的版本比较旧(见:https://moosefs.com/download/centosfedorarhel.html  ),建议用最新源代码来安装。

首先,下载最新源代码:

$ curl -O http://ppa.moosefs.com/src/moosefs-3.0.51-1.tar.gz

解包:

$ tar xzvf moosefs-3.0.51-1.tar.gz

切换目录:

$ cd moosefs-3.0.51/

创建用户:

$ sudo useradd mfs -s /sbin/nologin

配置:

$ sudo ./configure --prefix=/usr/local/mfs 
        --with-default-user=mfs --with-default-group=mfs

编译安装:

$ sudo make && sudo make install

配置元数据服务

元数据服务器的配置文件被放置于安装目录/usr/local/mfs/etc/mfs。注意,这里只有配置的模板文件,如:mfsmaster.cfg.sample。为了使mfs master正常工作,需要两个配置文件:mfsmaster.cfgmfsexports.cfg。前者为主配置文件,后者为权限控制文件(MFS客户端挂接时使用)。

1. 主配置文件mfsmaster.cfg,可以直接从模板文件mfsmaster.cfg.sample中拷贝而来。打开这个配置文件/usr/local/mfs/etc/mfsmaster.cfg,看看都有哪些内容:

# 这些#号都是注释
# WORKING_USER = mfs
# WORKING_GROUP = mfs
# SYSLOG_IDENT = mfsmaster
# LOCK_MEMORY = 0
# NICE_LEVEL = -19
# FILE_UMASK = 027
# DATA_PATH = /usr/local/mfs/var/mfs
# EXPORTS_FILENAME = /usr/local/mfs/etc/mfs/mfsexports.cfg
# TOPOLOGY_FILENAME = /usr/local/mfs/etc/mfs/mfstopology.cfg
# BACK_LOGS = 50
# BACK_META_KEEP_PREVIOUS = 1
# CHANGELOG_PRESERVE_SECONDS = 1800
# MISSING_LOG_CAPACITY = 100000
# MATOML_LISTEN_HOST = *
# MATOML_LISTEN_PORT = 9419
# MATOCS_LISTEN_HOST = *
# MATOCS_LISTEN_PORT = 9420
# MATOCS_TIMEOUT = 10
# REPLICATIONS_DELAY_INIT = 300
# CHUNKS_LOOP_MAX_CPS = 100000
# CHUNKS_LOOP_MIN_TIME = 300
# CHUNKS_SOFT_DEL_LIMIT = 10
# CHUNKS_HARD_DEL_LIMIT = 25
# CHUNKS_WRITE_REP_LIMIT = 2,1,1,4
# CHUNKS_READ_REP_LIMIT = 10,5,2,5
# CS_HEAVY_LOAD_THRESHOLD = 100
# CS_HEAVY_LOAD_RATIO_THRESHOLD = 5.0
# CS_HEAVY_LOAD_GRACE_PERIOD = 900
# ACCEPTABLE_PERCENTAGE_DIFFERENCE = 1.0
# PRIORITY_QUEUES_LENGTH = 1000000
# MATOCL_LISTEN_HOST = *
# MATOCL_LISTEN_PORT = 9421
# SESSION_SUSTAIN_TIME = 86400
# QUOTA_DEFAULT_GRACE_PERIOD = 604800

尽管每行都被注释掉了,但它们却是配置文件的默认值,要改变这些值,需要取消注释,然后明确指定其取值。接下来说明一下其中一些项目的含义。

  • EXPORTS_FILENAME=/usr/local/mfs/etc/mfs/mfsexports.cfg:权限控制文件的存放位置。

  • DATA_PATH=/usr/local/mfs/var/mfs:数据存放路径,指元数据的存放路径。

  • MATOCS_LISTEN_PORT=9420:MATOCS,Master to Chunk Server,即元数据服务器使用9420这个监听端口来接受数据存储服务器Chunk Server端的连接。

  • MATOML_LISTEN_PORT=9419:MATOML,Master to Meta Logger,用于备份元数据服务器的变化日志。

  • MATOCU_LISTEN_PORT=9421:元数据服务器在9421端口监听,用以接受客户端对MFS进行远程挂接(客户端以mfsmount挂接MFS)。

其他部分可以看配置文件中的注释描述就不难理解了。还有几个与时间相关的数值,其单位是。目前,这个配置文件,不必做修改就能工作。

2. 配置文件/usr/local/mfs/etc/mfsexports.cfg,也可以直接从模板mfsexports.cfg.example模板文件复制而来。这个文件的内容,十分类似NFS服务器的exports文件。实际配置时,可参照这个文件的默认行来修改以满足自己的应用需求。例:

# Allow everything but "meta".
*                       /       rw,alldirs,admin,maproot=0:0

# Allow "meta".
*                       .       rw

3. 复制文件:

$ sudo cp /usr/local/mfs/var/mfs/metadata.mfs.empty  /usr/local/mfs/var/mfs/metadata.mfs

这是一个8字节的文件。

启动元数据服务器Master

元数据服务器可以单独启动,即使没有任何数据存储服务器(Chunk Server)也是能正常工作的。因此当我们安装配置完MFS后,即可启动它。执行命令 /usr/local/mfs/sbin/mfsmaster  start,如果没有意外,元数据服务器就应该作为一个守护进程运行起来。现在我们可以通过3个方面来检查一下MFS Master的运行状况。

检查进程

$ sudo ps aux | grep mfsmaster | grep -v grep

上图为检查MFS Master进程运行情况

检查网络状态

$ netstat -an

MooseFS之元数据服务器的安装和配置_第1张图片

上图为检测MFS Master监听端口

检查系统日志

$ sudo tail -f /var/log/messages

MooseFS之元数据服务器的安装和配置_第2张图片

MFS的日志会直接写入系统日志。当我们增加数据存储服务器或数据存储服务器出现故障时,都能在系统日志找到这些记录。注意,这个日志跟元数据变化日志不是一回事情。

关闭元数据服务器

关闭元数据服务器务必使用/usr/local/mfs/sbin/mfsmaster stop。如果直接使用kill杀死进程,将导致下次启动时出现找不到相关文件,而不能正常启动服务器。一定要谨慎!当然,如果发生了这样的事情,还是可以通过mfsmetastore来恢复的。

$ sudo /usr/local/mfs/sbin/mfsmaster stop


最后注意:把要开放的端口都开放!!!!元数据服务器需要大内存!!

你可能感兴趣的:(MooseFS之元数据服务器的安装和配置)