MFS分佈式文件系統

  • 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 //啓動

MFS分佈式文件系統

搭建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

    MFS分佈式文件系統

    搭建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

    MFS分佈式文件系統

  • 啓動服務
    /usr/local/mfs/sbin/mfsmetalogger start

    MFS分佈式文件系統
    另一臺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分佈式文件系統
    MFS分佈式文件系統

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

    MFS分佈式文件系統
    MFS分佈式文件系統

    MFS監控

# /usr/local/mfs/sbin/mfscgiserv  //在Master上啓動監控程序

MFS分佈式文件系統
MFS分佈式文件系統

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章