MooseFS是一個容錯,高可用,高性能,擴展,網絡分佈式文件系統。它將數據分佈在多個物理商品服務器上,這些服務器對用戶可視爲一個虛擬磁盤。它符合POSIX而且像任何其餘類Unix文件系統同樣支持:python
- 分層結構:文件和文件夾,
- 文件屬性,
- 特殊文件:管道,插座,塊和字符設備,
- 符號和硬連接,
- 安全屬性和ACL。
它適用於須要標準文件系統的全部應用程序。
分佈式文件系統是指文件系統管理的物理存儲資源不必定直接鏈接在本地節點上,而是經過計算機網絡與節點相連。簡單來講,就是把一些分散的(分佈在局域網內各個計算機上)共享文件夾,集合到一個文件夾內(虛擬共享文件夾)。對於用戶來講,要訪問這些共享文件時,只要打開這個虛擬共享文件夾,就能夠看到全部連接到虛擬共享文件夾內的共享文件夾,用戶感受不到這些共享文件是分佈於各個計算機上的。分佈式文件系統的好處是集中訪問、簡化操做、數據容災,以及提升文件的存取性能。linux
MFS是一個具備容錯性的網絡分佈式文件系統,它把數據分散存放在多個物理服務器上,而呈現給用戶的則是統一的資源。web
systemctl stop firewalld setenforce 0
主機 | 操做系統 | IP地址 | 主要軟件 |
---|---|---|---|
Master Server | CentOS-7-x86_64 | 172.16.10.21 | 使用yum安裝 |
MetalLogger Server | CentOS-7-x86_64 | 172.16.10.26 | |
Chunk Server1 | CentOS-7-x86_64 | 172.16.10.27 | |
Chunk Server2 | CentOS-7-x86_64 | 172.16.10.28 | |
Client | CentOS-7-x86_64 | 172.16.10.29 |
curl "https://ppa.moosefs.com/RPM-GPG-KEY-MooseFS" > /etc/pki/rpm-gpg/RPM-GPG-KEY-MooseFS //添加鍵值 curl "http://ppa.moosefs.com/MooseFS-3-el7.repo" > /etc/yum.repos.d/MooseFS.repo //添加適當的庫條目 yum install moosefs-master moosefs-cgi moosefs-cgiserv moosefs-cli -y
systemctl start moosefs-master systemctl enable moosefs-master netstat -ntap | grep mfs
curl "https://ppa.moosefs.com/RPM-GPG-KEY-MooseFS" > /etc/pki/rpm-gpg/RPM-GPG-KEY-MooseFS //添加鍵值 curl "http://ppa.moosefs.com/MooseFS-3-el7.repo" > /etc/yum.repos.d/MooseFS.repo //添加適當的庫條目 yum install moosefs-metalogger -y
vim /etc/mfs/mfsmetalogger.cfg MASTER_HOST = 172.16.10.21 //地址指向主服務器
systemctl start moosefs-metalogger systemctl enable moosefs-metalogger netstat -ntap | grep mfs
項目中的兩臺Chunk Server的搭建步驟是徹底相同vim
curl "https://ppa.moosefs.com/RPM-GPG-KEY-MooseFS" > /etc/pki/rpm-gpg/RPM-GPG-KEY-MooseFS //添加鍵值 curl "http://ppa.moosefs.com/MooseFS-3-el7.repo" > /etc/yum.repos.d/MooseFS.repo //添加適當的庫條目 yum install moosefs-chunkserver -y
vim /etc/mfs/mfschunkserver.cfg MASTER_HOST = 172.16.10.21 //在配置文件中修改,將地址指向主服務器
vim /etc/mfs/mfshdd.cfg /chen //在末行添加共享目錄
chown -R mfs:mfs /chen
systemctl start moosefs-chunkserver systemctl enable moosefs-chunkserver netstat -ntap | grep mfs
curl "https://ppa.moosefs.com/RPM-GPG-KEY-MooseFS" > /etc/pki/rpm-gpg/RPM-GPG-KEY-MooseFS //添加鍵值 curl "http://ppa.moosefs.com/MooseFS-3-el7.repo" > /etc/yum.repos.d/MooseFS.repo //添加適當的庫條目 yum install moosefs-client -y
modprobe fuse
mkdir /opt/mfs //建立掛載點 mfsmount /opt/mfs/ -H 172.16.10.21 //掛載,地址爲master地址
df -h
mfsgetgoal命令用來查詢文件被複制的份數,利用-r命令能夠對整個目錄進行遞歸,goal是指文件被複制的份數。瀏覽器
mfsgetgoal -r /opt/mfs/
mfssetgoal命令同來設置文件被複制的份數,生產環境中Chunk節點數量應至少大於2,文件副本數量小於等於Chunk服務器數量。安全
mfssetgoal -r 2 /opt/mfs/
Mfscgiserv是一個用python編寫的web服務器,監聽端口是9425,能夠在Master Server啓動監控,用戶利用瀏覽器就能夠全面監控全部客戶掛載、Chunk Server、Master Server,以及客戶端的各類操做等。服務器
mfscgiserv