码迷,mamicode.com
首页 > 其他好文 > 详细

MFS分布式文件系统

时间:2018-07-27 13:15:45      阅读:159      评论:0      收藏:0      [点我收藏+]

标签:smo   config   关闭   数据存储   情况   local   stop   实验   源码   

  • MFS简介
  • MooseFS是一个具有容错性的网络分布式文件系统。它把数据分散存放在多个物理服务器上,而呈现给用户的则是一个统一的资源。

    • MFS文件系统的组成架构

    元数据服务器(Master):负责管理文件系统,维护元数据。

    元数据日志服务器(MetaLogger):当Master服务器数据丢失或损坏时,可以从日志服务器中取得文件,进行恢复。

    数据存储服务器(Chunk Server):真正存储数据的服务器。

    客户端:挂载MFS文件系统。

    • 实验要求:

    Master: 192.168.177.140

    MetaLogger: 192.168.177.135

    Chunk1: 192.168.177.132

    Chunk2: 192.168.177.133

    Client: 192.168.177.134

    搭建Master

    # systemctl stop firewalld.service  //关闭防火墙
    # setenforce 0
    # yum install -y zlib-devel gcc gcc-c++ //安装依赖包
    • 创建用户

      # useradd -s /sbin/nologin mfs  //创建管理的用户
    • 安装源码包
    # tar zxvf mfs-1.6.27-5.tar.gz -C /opt  //解压
    # cd mfs-1.6.27/
    ./configure --prefix=/usr/local/mfs \ 
    --with-default-user=mfs \   //指定用户
    --with-default-group=mfs --disable-mfschunkserver \   //禁用chunk
    --disable-mfsmount          //禁用客户端
    # make && make install
    • 复制文件
    # cd /usr/local/mfs/etc/mfs/   //变成可被识别的配置文件
    # cp mfsexports.cfg.dist mfsexports.cfg
    # cp mfsmaster.cfg.dist mfsmaster.cfg
    # cp mfstopology.cfg.dist mfstopology.cfg
    
    # cd /usr/local/mfs/var/mfs/    //防异常退出
    # cp metadata.mfs.empty metadata.mfs
    • 启动Master
    # /usr/local/mfs/sbin/mfsmaster start //启动

    技术分享图片

    搭建MetaLogger Server

    • 关闭防火墙,安装依赖包
      # systemctl stop firewalld.service
      # setenforce 0
      # yum install -y zlib-devel gcc gcc-c++
    • 创建用户

      # useradd -s /sbin/nologin mfs  //创建管理的用户
    • 安装源码包
    # tar zxvf mfs-1.6.27-5.tar.gz -C /opt  //解压
    # cd mfs-1.6.27/
    ./configure --prefix=/usr/local/mfs \ 
    --with-default-user=mfs \   //指定用户
    --with-default-group=mfs --disable-mfschunkserver \   //禁用chunk
    --disable-mfsmount          //禁用客户端
    # make && make install
    • 复制文件
    # cd /usr/local/mfs/etc/mfs/   //变成可被识别的配置文件
    # cp mfsexports.cfg.dist mfsexports.cfg
    # cp mfsmaster.cfg.dist mfsmaster.cfg
    # cp mfsmetalogger.cfg.dist mfsmetalogger.cfg mfstopology.cfg
    
    # cd /usr/local/mfs/var/mfs/    //防异常退出
    # cp metadata.mfs.empty metadata.mfs
    • 指向Master
      # vim mfsmetalogger.cfg
      MASTER_HOST = 192.168.177.140
    • 启动服务
      /usr/local/mfs/sbin/mfsmetalogger start

      技术分享图片

      搭建Chuck Server

    • 关闭防火墙,安装依赖包
      # systemctl stop firewalld.service
      # setenforce 0
      # yum install -y zlib-devel gcc gcc-c++
    • 创建用户

      # useradd -s /sbin/nologin mfs  //创建管理的用户
    • 安装源码包
    # tar zxvf mfs-1.6.27-5.tar.gz -C /opt  //解压
    # cd mfs-1.6.27/
    ./configure --prefix=/usr/local/mfs \ 
    --with-default-user=mfs \   //指定用户
    --with-default-group=mfs --disable-mfsmaster \   //禁用Master
    --disable-mfsmount          //禁用客户端
    # make && make install
    • 复制文件
    # cd /usr/local/mfs/etc/mfs/   //变成可被识别的配置文件
    # cp mfschunkserver.cfg.dist mfschunkserver.cfg
    # cp mfshdd.cfg.dist mfshdd.cfg
    
    # cd /usr/local/mfs/var/mfs/    //防异常退出
    # cp metadata.mfs.empty metadata.mfs
    • 指向Master
      # vim mfschunkserver.cfg
      MASTER_HOST = 192.168.177.140
    • 将分区挂载到目录下
      # vi mfshdd.cfg
      /data
      # mkdir /data
      # chown -R mfs:mfs /data

      技术分享图片

    • 启动服务
      /usr/local/mfs/sbin/mfsmetalogger start

      技术分享图片
      另一台Chunk Server也是这样

    客户端配置

    • 关闭防火墙,安装依赖包
      # systemctl stop firewalld.service
      # setenforce 0
      # yum install -y zlib-devel gcc gcc-c++
    • 安装FUSE
      # tar xzvf fuse-2.9.2.tar.gz -C /opt
      # cd fuse-2.9.2
      ./configure
      # make && make install

    设置环境变量:

    # vim /etc/profile
    export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH
    # source /etc/profile
    • 安装MFS客户端

    • 创建用户
      ```# useradd -s /sbin/nologin mfs  //创建管理的用户
    • 安装源码包
      ```# tar zxvf mfs-1.6.27-5.tar.gz -C /opt  //解压
      # cd mfs-1.6.27/
      ./configure --prefix=/usr/local/mfs \ 
      --with-default-user=mfs \   //指定用户
      --with-default-group=mfs --disable-mfsmaster --disable-mfschunkserver --enable-mfsmount
      ```# make && make install```
    • 挂载MFS文件系统
      # mkdir /opt/mfs   //创建挂载点
      modprobe fuse          //加载fuse模块到内核//
      /usr/local/mfs/bin/mfsmount /opt/mfs -H 192.168.177.140     //挂载MFS
      df -hT   //查看挂载情况

      技术分享图片
      技术分享图片

    • MFS常用操作
      # vim /etc/profile
      export PATH=/usr/local/mfs/bin:$PATH
      # source /etc/profile
      # mfsgetgoal -r /opt/mfs/   //查询文件被复制的份数

      技术分享图片
      技术分享图片

      MFS监控

    # /usr/local/mfs/sbin/mfscgiserv  //在Master上启动监控程序

    技术分享图片
    技术分享图片

    MFS分布式文件系统

    标签:smo   config   关闭   数据存储   情况   local   stop   实验   源码   

    原文地址:http://blog.51cto.com/13620936/2150940

    (0)
    (0)
       
    举报
    评论 一句话评论(0
    登录后才能评论!
    © 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
    迷上了代码!