MFS是一個(gè)具有容錯(cuò)性的網(wǎng)絡(luò)分布式文件系統(tǒng),它把數(shù)據(jù)分散存放在多個(gè)物理服務(wù)器上,而呈現(xiàn)給用戶的則是一個(gè)統(tǒng)一整合的資源。
MFS是一個(gè)具有容錯(cuò)功能的,高可用,可擴(kuò)展的海量級(jí)分布式文件系統(tǒng);
MFS把數(shù)據(jù)分散在多臺(tái)服務(wù)器上,單用戶看到的只是一個(gè)源;
數(shù)據(jù)訪問不再是一對(duì)多的關(guān)系,而是多對(duì)多,相較NFS性能大幅度提升;
包含了層級(jí)結(jié)構(gòu)和文件屬性,可以創(chuàng)建特殊的文件(塊設(shè)備,字符設(shè)備,管道,套接字),符號(hào)鏈接和硬鏈接。
分布式文件系統(tǒng)(distributed file
system)是指文件系統(tǒng)管理的物質(zhì)存儲(chǔ)資源不一定直接連接在本地節(jié)點(diǎn)上,而是通過計(jì)算機(jī)網(wǎng)絡(luò)與節(jié)點(diǎn)相連。簡(jiǎn)單說就是把一些分布在局域網(wǎng)內(nèi)各個(gè)計(jì)算機(jī)上的共享文件夾,集合到一個(gè)虛擬共享文件夾內(nèi),客戶端訪問只需要打開這個(gè)虛擬共享文件夾,就可以看到所有鏈接到虛擬共享文件夾內(nèi)的共享文件,用戶感覺不到這些共享文件是分散于各個(gè)計(jì)算機(jī)上的。
分布式文件系統(tǒng)的優(yōu)點(diǎn):集中訪問、簡(jiǎn)化操作、數(shù)據(jù)容災(zāi)、提高了文件的存儲(chǔ)性能。
MFS文件系統(tǒng)的組成:
元數(shù)據(jù)服務(wù)器(Master):在整個(gè)體系中負(fù)責(zé)管理文件系統(tǒng),維護(hù)元數(shù)據(jù)。
元數(shù)據(jù)日志服務(wù)器(MetaLogger):備份Master服務(wù)器的變化日志文件,文件類型為changelog_ml.*.mfs
當(dāng)Master服務(wù)器數(shù)據(jù)丟失或者損壞時(shí),可以從日志服務(wù)器中取得進(jìn)行恢復(fù)。
數(shù)據(jù)存儲(chǔ)服務(wù)器(Chunk server):真正存儲(chǔ)數(shù)據(jù)的服務(wù)器。將文件分塊保存,并相互進(jìn)行復(fù)制。
客戶端(Client):可以像掛載NFS一樣掛載MFS文件系統(tǒng),其操作是相同的。
客戶端向元數(shù)據(jù)服務(wù)器發(fā)出讀請(qǐng)求;
Chunk server向客戶端發(fā)送數(shù)據(jù)。
客戶端向元數(shù)據(jù)服務(wù)器發(fā)送寫入請(qǐng)求。
主機(jī)
IP地址
安裝軟件包
操作系統(tǒng)
Master Server
192.168.30.55
mfs-1.6.27-5.tar.gz
CentOS7
MetaLogger Server
192.168.30.10
mfs-1.6.27-5.tar.gz
CentOS7
Chunk Server1
192.168.30.4
mfs-1.6.27-5.tar.gz
CentOS7
Chunk Server2
192.168.30.5
mfs-1.6.27-5.tar.gz
CentOS7
Client
192.168.30.6
mfs-1.6.27-5.tar.gz,fuse-2.9.2.tar.gz
CentOS7
systemctl stop firewalld.service
setenforce 0
yum install -y zlib-devel gcc gcc-c++
useradd mfs -s /sbin/nologin
tar zxvf mfs-1.6.27-5.tar.gz #解壓源碼包
cd mfs-1.6。27/
./configure \
--prefix=/usr/local/mfs \ #指定安裝路徑
--with-default-user=mfs \ #指定運(yùn)行用戶,組為mfs
--with-default-group=mfs \
--disable-mfschunkserver \ #關(guān)閉節(jié)點(diǎn)功能
--disable-mfsmount #關(guān)閉掛載
make && make install
在Master上需要用到的配置文件有兩個(gè):mfsmaster.cfg(主配置文件)和mfsexports.cfg(被掛載目錄及權(quán)限配置文件)
cd /usr/local/mfs/etc/mfs/
cp mfsexports.cfg.dist mfsexports.cfg
cp mfsmaster.cfg.dist mfsmaster.cfg
cp mfsmetalogger.cfg.dist mfsmetalogger.cfg
cd /usr/local/mfs/var/mfs/
cp metadata.mfs.empty metadata.mfs
不需要對(duì)配置文件做任何修改就可以開始工作
/usr/local/mfs/sbin/mfsmaster start
ps aux | grep mfs停止Master Server的命令
/usr/local/mfs/sbin/mfsmaster -s
yum install -y zlib-devel gcc gcc-c++
useradd mfs -s /sbin/nologin
tar zxvf mfs-1.6.27-5.tar.gz #解壓源碼包
cd mfs-1.6。27/
./configure \
--prefix=/usr/local/mfs \ #指定安裝路徑
--with-default-user=mfs \ #指定運(yùn)行用戶,組為mfs
--with-default-group=mfs \
--disable-mfschunkserver \ #關(guān)閉節(jié)點(diǎn)功能
--disable-mfsmount #關(guān)閉掛載
make && make install
cd /usr/local/mfs/etc/mfs/
cp mfsmetalogger.cfg.dist mfsmetalogger.cfg
vi mfsmetalogger.cfg
..............
MASTER_HOST = 192.168.30.55
..................
/usr/local/mfs/sbin/mfsmetalogger start
yum install -y zlib-devel gcc gcc-c++
useradd mfs -s /sbin/nologin
tar zxvf mfs-1.6.27-5.tar.gz #解壓源碼包
cd mfs-1.6。27/
./configure \
--prefix=/usr/local/mfs \ #指定安裝路徑
--with-default-user=mfs \ #指定運(yùn)行用戶,組為mfs
--with-default-group=mfs \
--disable-mfsmaster \ #關(guān)閉master功能
--disable-mfsmount #關(guān)閉掛載
make && make install
cd /usr/local/mfs/etc/mfs/
cp mfschunkserver.cfg.dist mfschunkserver.cfg
cp mfshdd.cfg.dist mfshdd.cfg
vi mfschunkserver.cfg
MASTER_HOST = 192.168.30.55
實(shí)際生產(chǎn)環(huán)境需要單獨(dú)提供磁盤陣列作為專門的MFS存儲(chǔ)目錄,這里只是進(jìn)行實(shí)驗(yàn),所以使用一個(gè)單獨(dú)的目錄代替
vi mfshdd.cfg
/data
mkdir / data
chown -R mfs:mfs /data
/usr/local/mfs/sbin/mfschunkserver start
ps aux | grep mfs
yum install -y zlib-devel gcc gcc-c++
useradd mfs -s /sbin/nologin
tar xzvf fuse-2.9.2.tar.gz
cd fuse-2.9.2
./configure
make && make install
echo "export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH" >>/etc/profile
source /etc/profile
tar zxvf mfs-1.6.27-5.tar.gz #解壓源碼包
cd mfs-1.6。27/
./configure \
--prefix=/usr/local/mfs \ #指定安裝路徑
--with-default-user=mfs \ #指定運(yùn)行用戶,組為mfs
--with-default-group=mfs \
--disable-mfsmaster \ #關(guān)閉master功能
--disable-mfschunkserver \ #關(guān)閉節(jié)點(diǎn)功能
--enable-mfsmount #關(guān)閉掛載
make && make install
mkdir /opt/mfs //創(chuàng)建掛載點(diǎn)
modprobe fuse //加載fuse模塊到內(nèi)核//
/usr/local/mfs/bin/mfsmount /opt/mfs -H 192.168.30.55 掛載MFS
df -hT 查看掛載情況
如果要卸載,使用umount /opt/mfs即可。
echo "export PATH=/usr/local/mfs/bin:$PATH" >>/etc/profile
source /etc/profile
MFS在客戶端安裝完畢后,會(huì)生成/usr/local/mfs/bin目錄,在這個(gè)目錄下有很多命令,
mfsgetgoal -r /opt/mfs
mfssetgoal -r 2 /opt/mfs/
echo abc123 >/opt/mfs/test1
/usr/local/mfs/sbin/mfscgiserv
通過瀏覽器訪問http://192.168.30.55:9425
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。