Moosefs基本概念

基础知识

      Moosefs概念

  • MooseFS是一个具备冗余容错功能的分布式网络文件系统,它将数据分别存放在多个物理服务器或单独磁盘或分区上,确保一份数据有多个备份副本。对于访问的客户端或者用户来说,整个分布式网络文件系统集群看起来就像一个资源一样。从其对文件操作的情况看,MooseFS就相当于一个类UNIX文件系统。
  • MooseFS各组件间时间相差不能超过1s

      Moosefs基础框架

  • Master(元数据服务器): 负责各个数据存储服务器的管理,文件读写调度,文件空间回收以及恢复.多节点拷贝。单个机器管理整个文件系统,用来存储记录每一个文件的Metadata(记录文件的大小、文件的属性、文件的位置,也包括非规则文件的系统,如目录、sockets、管道和设备)。
  • Metalogger(元数据日志服务器): 负责备份Master服务器的changelog。文件类型为 changelog.*.mfs ,以便在Master出问题时接替其工作
  • Chunk(数据存储服务器): 服从Master Server 的安排,定期向 Master Server 发送自己的状态信息,除此之外,还能向客户提供数据存储空间,能够向客户传输数据。
  • Client(客户端挂载): 通过FUSE内核接口挂载远程管理服务器(master)上所管理的数据存储服务器,使用起来和本地文件系统一样

      Moosefs组件端口列表

组件角色 端口列表 端口描述
mfsmaster 9419 监听metalogger连接
9420 监听chunkserver连接
9421 监听client连接
chunkserver 9422 监听client连接

     

      Moosefs分布式读写

  •   读

            下图中Master Server用三角形表示,Chunk Server用圆形表示,Client 用方形表示。

整个读过程有以下四个步骤:
1. 首先client客户端访问主服务器master,获取文件实体的位置等相关信息。
2. 主服务器master查询缓存记录,把文件实体的位置等相关信息发给client客户端。
3. Client客户端根据拿到的信息去访问对应的存储实体数据的服务器(data servers或者 chunk servers)。
4. 存储实体数据的服务器(data servers或者 chunk servers)把对应的数据返回给Client客户端。



  •   写

图中Master Server用三角形表示,Chunk Server用圆形表示,Client用方形表示。

整个写过程要分为下面八个步骤:
1. Client客户端访问主服务器master,请求写入数据。
2. 主服务器master查询缓存记录,如果是新文件,则会联系后面的数据服务器创建对应的chunk对象准备存放文件。  
3. 数据服务器返回创建对应的chunk对象成功给主服务器
4. 主服务器master把文件实体的位置等相关信息发给client客户端。
5. Client客户端访问对应的数据服务器写数据
6. 数据服务器之间进行数据同步,互相确认成功
7. 数据服务器返回成功写入信息给Client客户端
8. Client客户端回报给主服务器master写入结束

 
 

猜你喜欢

转载自www.cnblogs.com/brownyangyang/p/9003890.html