zoukankan      html  css  js  c++  java
  • 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写入结束







     
  • 相关阅读:
    java序列化和反序列化使用总结
    什么是N+1查询?
    Oracle insert /*+ APPEND */原理解析
    Oracle redo与undo
    MongoDB(三)-- 执行JS、界面工具
    几种Bean的复制方法性能比较
    Kafka(三)-- Kafka主要参数
    Kafka(二)-- 安装配置
    Kafka(一)-- 初体验
    Nginx(十二)-- Nginx+keepalived实现高可用
  • 原文地址:https://www.cnblogs.com/brownyangyang/p/9003890.html
Copyright © 2011-2022 走看看