MFS部署


MFS的工做原理圖:vim

wKioL1ZvroaSTD2FAAFxieVKXhA935.png


管理服務器:master 負責各個數據存儲服務器的管理,文件讀寫調度,文件空間回收和恢復,多節點的拷貝
元數據日誌服務器:metalogger 負責備份master服務器的變化日誌文件,類型爲changelog_ml.*.mfs
數據存儲服務器:chunkservers  負責鏈接master,遵從master調度,提供存儲空間,而且爲客戶端提供數據傳輸
客戶機掛載使用:client  經過fuse 內核接口遠程管理服務上管理的數據存儲服務器

 

MFS安裝開始:bash

元數據服務器安裝和配置:master
useradd mfs -s /sbin/nologin
tar zxvf moosefs-2.0.81-1.tar.gz 
cd moosefs-2.0.81
 ./configure  --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs 
  make && make install
  
  cd /usr/local/mfs/etc/mfs
  cp mfsmaster.cfg.dist mfsmaster.cfg
  cp mfsexports.cfg.dist mfsexports.cfg
  cp /usr/local/mfs/var/mfs/metadata.mfs.empty  /usr/local/mfs/var/mfs/metadata.mfs
  這是一個8字節的文件,爲mfs新增項目
  ln -s /usr/local/mfs/sbin/mfsmaster /usr/sbin/
  mfsmaster start


mfsmaster.cfg配置文件:
# WORKING_ USER = mfs      #運行master server 的用戶
# WORKING_ GROUP = mfs     #運行master server 的組
# SYSLOG_IDENT = mfsmaster #master server 在syslog 中的標識,說明是由master serve 產生的
# LOCK_MEMORY = 0          #是否執行mlockall()以免mfsmaster 進程溢出(默認爲0)
# NICE_LEVEL = -19         #運行的優先級(若是能夠默認是-19; 注意: 進程必須是用root 啓動)
# EXPORTS_FILENAME = /usr/local/mfs/etc/mfsexports.cfg #被掛接目錄及其權限控制文件的存放位置
# DATA_PATH = /usr/local/mfs/var/mfs    #數據存放路徑,此目錄下大體有三類文件,changelog,sessions 和stats;
# BACK_LOGS = 50                        #metadata 的改變log 文件數目(默認是50);
# REPLICATIONS_ DELAY_INIT = 300        #延遲複製的時間(默認是300s);
# REPLICATIONS_ DELAY_DISCONNECT = 3600 #chunkserver 斷開的複製延遲(默認是3600);
# MATOML_LISTEN_HOST = *     #metalogger 監聽的IP 地址(默認是*,表明任何IP);
# MATOML_LISTEN_PORT = 9419 #metalogger 監聽的端口地址(默認是9419);
# MATOCS_LISTEN_ HOST = *   #用於chunkserver 鏈接的IP 地址(默認是*,表明任何IP);
# MATOCS_LISTEN_PORT = 9420 #用於chunkserver 鏈接的端口地址(默認是9420);
# MATOCU_LISTEN_HOST = *    #用於客戶端掛接鏈接的IP 地址(默認是*,表明任何IP);
# MATOCU_LISTEN_PORT = 9421 #用於客戶端掛接鏈接的端口地址(默認是9421);
# CHUNKS_LOOP_TIME = 300    #chunks 的迴環頻率(默認是:300 秒);# CHUNKS_DEL_LIMIT = 100
# CHUNKS_WRITE_REP_LIMIT = 1 #在一個循環裏複製到一個chunkserver 的最大chunk 數目(默認是1)
# CHUNKS_READ_REP_LIMIT = 5  #在一個循環裏從一個chunkserver 複製的最大chunk 數目(默認是5)
# REJECT_OLD_ CLIENTS = 0    #彈出低於1.6.0 的客戶端掛接(0 或1,默認是0)
元數據日誌服務器安裝和配置:metalogger
該服務僅須要一個配置文件,這裏咱們只須要從模板文件複製一個,而後稍微加以修改便可
cp mfsmetalogger.cfg.dist mfsmetalogger.cfg
vim mfsmetalogger.cfg
修改成master的地址:
MASTER_HOST = xxx.xxx.xxx.xxx
ln -s /usr/local/mfs/sbin/mfsmetalogger /usr/sbin/
 mfsmetalogger start
metalogger配置文件:
# WORKING_USER = mfs
# WORKING_GROUP = mfs
# SYSLOG_IDENT = mfsmetalogger
# LOCK_MEMORY = 0
# NICE_LEVEL = -19
# DATA_PATH = /usr/local/mfs/var/mfs
# BACK_LOGS = 50
# META_DOWNLOAD_FREQ = 24 元數據備份文件下載請求頻率。默認爲24小時,即每隔一天從元數據服務器(MASTER)下載一個metadata.mfs.back 文件。當元數據服務器關閉或者出故障時,matedata.mfs.back 文件將消失,那麼要恢復整個mfs,則需從metalogger 服務器取得該文件。請特別注意這個文件,它與日誌文件一塊兒,纔可以恢復整個被損壞的分佈式文件系統。
# MASTER_RECONNECTION_DELAY = 5
MASTER_HOST = 192.168.0.1
# MASTER_PORT = 9419
# MASTER_TIMEOUT = 60
# deprecated, to be removed in MooseFS 1.7
# LOCK_FILE = /var/run/mfs/mfsmetalogger.lock


 
數據存儲chunkserver服務器的安裝配置:chunkservers
數據存儲服務器有2個配置服務器須要修改,一個是主配置文件 mfschunkserver.cfg ,另外一個配置文件是 mfshdd.cfg。每一個服務器用來分配給 MFS使用的空間最好是一個單獨的硬盤或者一個raid卷,最低要求是一個分區
cp mfschunkserver.cfg.dist  mfschunkserver.cfg
修改成master的IP地址:
MASTER_HOST = xxx.xxx.xxx.xxx 元數據服務器的名稱或地址
cp mfshdd.cfg.dist mfshdd.cfg
須要以下一行內容就能夠了:
/sdb
#我添加了一個硬盤
mkfs.ext4 /dev/vdc
mkdir sdb
mount /dev/vdc sdb/
chown –R mfs:mfs /sdb
ln -s /usr/local/mfs/sbin/mfschunkserver /usr/sbin/
mfschunkserver start
mfschunkserver.cfg:配置文件
# WORKING_USER = mfs
# WORKING_GROUP = mfs
# DATA_PATH = /usr/local/mfs/var/mfs
# LOCK_FILE = /var/run/mfs/mfschunkserver.pid
# SYSLOG_IDENT = mfschunkserver
# BACK_LOGS = 50
# MASTER_RECONNECTION_DELAY = 30
MASTER_HOST = 192.168.0.1 #元數據服務器的名稱或地址,能夠是主機名,也能夠是ip 地址
# MASTER_PORT = 9420 #爲Matser中 MATOCS_LISTEN_PORT指定的端口
# MASTER_TIMEOUT = 60
# CSSERV_LISTEN_HOST = *
# CSSERV_LISTEN_PORT = 9422 這個監聽端口用於與其它數據存儲服務器間的鏈接,一般是數據複製
# CSSERV_TIMEOUT = 60
# CSTOCS_TIMEOUT = 60
# HDD_CONF_FILENAME = /usr/local/mfs/etc/mfshdd.cfg 分配給MFS 使用的磁盤空間配置文件的位置


MFS客戶端的安裝及配置:client
tar zxvf fuse-2.7.4.tar.gz 
cd fuse-2.7.4
./configure 
 make && make install
 tar zxvf moosefs-2.0.81-1.tar.gz 
cd moosefs-2.0.81
 ./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs --enable-mfsmount 
 make && make install
 
 echo 'export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH' >>/etc/profile
 source /etc/profile
 
 
 mkdir /mnt/mfs
 ln -s /usr/local/mfs/bin/mfsmount /usr/sbin/
 mfsmount /mnt/mfs/ -H xxx.xxx.xxx.xxx
 
  注意,全部的MFS都是掛接同一個元數據服務器master,而不是其餘數據存儲服務器chunkserver
  
  設置文件副本數量,建議以3份爲佳
  設置副本數目
 mfsrsetgoal 3 /mnt/mfs
相關文章
相關標籤/搜索