文档章节

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

柳哥
 柳哥
发布于 2015/10/10 16:28
字数 1142
阅读 193
收藏 0

元数据服务器可以是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

上图为检测MFS Master监听端口

检查系统日志

$ sudo tail -f /var/log/messages

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

关闭元数据服务器

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

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


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

© 著作权归作者所有

共有 人打赏支持
上一篇: Gradle之介绍
柳哥
粉丝 207
博文 405
码字总数 347782
作品 0
杭州
技术主管
私信 提问
Linux搭建MFS分布式文件系统

说明: 架构规划 元数据服务器 mfs-master-1 172.16.100.2 备份服务器 mfs-metalogger 172.16.100.4 数据存储服务器 mfs-chunkserver-1 172.16.100.5 数据存储服务器 mfs-chunkserver-2 172....

流年契约
2018/06/28
0
0
分布式网络文件系统--MooseFS

一.介绍 1.简介 MooseFS是一个具备冗余容错功能的分布式网络文件系统,它将数据分别存放在多个物理服务器或单独磁盘或分区上,确保一份数据有多个备份副本。对于访问的客户端或者用户来说,整...

yaohong
2017/11/21
0
0
MooseFS(MFS)安装手记(一)

MooseFS是一种分布式文件系统,MooseFS文件系统结构包括以下四种角色: 1 管理服务器managing server (master) 负责各个数据存储服务器的管理,文件读写调度,文件空间回收以及恢复.多节点拷贝...

China_OS
2012/02/13
0
0
分布式文件系统 MooseFS 1.6.27-5 发布

MooseFS 1.6.27-5 发布,此版本最重要的更新就是限制l chunkserver 的连接断开;修复了网络连接超时的问题;在 metarestore 添加了一个进度百分比;改进了写新 chunks 时选择服务器的算法。 ...

oschina
2014/02/12
1K
1
mooseFS 2.0 发布,网络分布式文件系统

2014年7月1日,分布式文件系统 moosefs 2.0 发布,分为社区版和专业版。 此版本支持在多个规则中运行多个 master 服务器。其中一个规则是 ”leader”,是给 chunkservers 和客户端使用。每个...

purple_grape
2014/09/23
1K
2

没有更多内容

加载失败,请刷新页面

加载更多

一致性hash和虚拟节点

consistent hashing 算法的原理 consistent hashing 是一种 hash 算法,简单的说,在移除 / 添加一个 cache 时,它能够尽可能小的改变已存在key 映射关系,尽可能的满足单调性的要求。 下面就...

群星纪元
31分钟前
2
0
说一下Dubbo 的工作原理?注册中心挂了可以继续通信吗?

面试题 说一下的 dubbo 的工作原理?注册中心挂了可以继续通信吗?说说一次 rpc 请求的流程? 面试官心理分析 MQ、ES、Redis、Dubbo,上来先问你一些思考性的问题、原理,比如 kafka 高可用架...

李红欧巴
42分钟前
19
0
腾讯面试:一条SQL语句执行得很慢的原因有哪些?

说实话,这个问题可以涉及到 MySQL 的很多核心知识,可以扯出一大堆,就像要考你计算机网络的知识时,问你“输入URL回车之后,究竟发生了什么”一样,看看你能说出多少了。 之前腾讯面试的实...

java菜分享
今天
11
0
Java 基本功 之 CAS

本文首发于个人公众号《andyqian》, 期待你的关注! 前言 在Java并发编程中,我们经常使用锁对竞争资源予以并发控制,以解决资源竞争的问题。但无论是使用 Lock 还是 Synchronized,随着锁机...

andyqian
今天
5
0
信号量与条件变量的区别

注意信号量与条件变量的区别 信号量内容可见:http://www.cnblogs.com/charlesblc/p/6142868.html 信号量、共享内存,以及消息队列等System V IPC三剑客主要关注进程间通信; 而条件变量、互...

shzwork
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部