MFS文件系統的組成
1、 元數據服務器。在整個體系中負責管理管理文件系統,目前MFS只支持一個元數據服務器master,這是一個單點故障,需要一個性能穩定的服務器來充當。希望今後MFS能支持多個master服務器,進一步提高系統的可靠性。
2、 元數據日誌服務器。備份master服務器的變化日誌文件,文件類型爲changelog_ml.*.mfs。當元數據服務器數據丟失或者損毀,可從日誌服務器取得文件進行恢復。
3、 數據存儲服務器chunkserver。真正存儲用戶數據的服務器。存儲文件時,首先把文件分成塊,然後這些塊在數據服務器chunkserver之間複製(複製份數可以手工指定,建議設置副本數爲3)。數據服務器可以是多個,並且數量越多,可使用的“磁盤空間”越大,可靠性也越高。
4、 客戶端。使用MFS文件系統來存儲和訪問的主機稱爲MFS的客戶端,成功掛接MFS文件系統以後,就可以像以前使用NFS一樣共享這個虛擬性的存儲了。
—————————————————————————————————————————————————————-
原理:MFS_CLIENT掛載——>MFS_MASTER分發——>MFS_CHUNKSERVER
|
V
MFS_CHUNKSERVER
*數據由MFS_CLIENT的mount目錄創建,並交給MFS_MASTER,此時MFS_MASTER只保留數據日誌,並把所有真實數據分發給各個MFS_CHUNKSERVER各一份,如日後某個MFS_CHUNKSERVER發生故障,其他MFS_CHUNKSERVER仍可提供服務,如考慮MFS_MASTER的高可用性,可添加mfsmetalogger用作備份日誌
—————————————————————————————————————————————————————-
配置環境:
mfs_master:192.168.17.1
mfs_chunk:192.168.17.2
mfs_client:192.168.17.3
在/etc/hosts分別加入”192.168.17.1 mfsmaster”
—————————————————————————————————————————————————————-
1.1安裝MooseFS Master
wget http://ncu.dl.sourceforge.net/project/moosefs/moosefs/1.6.11/mfs-1.6.11.tar.gz
tar zxvf mfs-1.6.11.tar.gz
cd mfs-1.6.11
useradd -s /sbin/nologin mfs
./configure –prefix=/opt/mfs –with-default-user=mfs –with-default-group=mfs && make && make install
cd /opt/mfs/etc
主配置文件
cp mfsmaster.cfg.dist mfsmaster.cfg
權限控制文件
cp mf***ports.cfg.dist mf***ports.cfg
cd ../var/mfs
cp metadata.mfs.empty metadata.mfs
修改主配置文件
vim mf***ports.cfg
192.168.17.0/24 . rw
192.168.17.0/24 / rw
注:表示此網段所有主機可讀寫
1.2相關命令
啓動MooseFS Master
/opt/mfs/sbin/mfsmaster start
ps axu |grep mfs
tail -f /var/log/messages
停止Master服務
/opt/mfs/sbin/mfsmaster -s
啓動和停止Web GUI
啓動: /opt/mfs/sbin/mfscgiserv
停止: kill /usr/local/mfs/sbin/mfscgiserv
—————————————————————————————————————————————————————-
2.1安裝Chunk Server
wget http://ncu.dl.sourceforge.net/project/moosefs/moosefs/1.6.11/mfs-1.6.11.tar.gz
tar zxvf mfs-1.6.11.tar.gz
cd mfs-1.6.11
useradd -s /sbin/nologin mfs
./configure –prefix=/opt/mfs –with-default-user=mfs –with-default-group=mfs && make && make install
cd /opt/mfs/etc/
cp mfschunkserver.cfg.dist mfschunkserver.cfg
cp mfshdd.cfg.dist mfshdd.cfg
用於客戶端掛接MooseFS 分佈式文件系統根分區所使用的共享空間位置,可在mfshdd.cfg配置文件中修改
mkdir -p /mnt/hd1
mkdir -p /mnt/hd2
mkdir -p /mnt/hd3
mkdir -p /mnt/hd4
chown -R mfs:mfs /mnt/hd1
chown -R mfs:mfs /mnt/hd2
chown -R mfs:mfs /mnt/hd3
chown -R mfs:mfs /mnt/hd4
2.2相關命令
啓動Chunk Server
/opt/mfs/sbin/mfschunkserver start
ps axu |grep mfs
tail -f /var/log/messages
停止Chunk Server
/opt/mfs/sbin/mfschunkserver stop
—————————————————————————————————————————————————————-
3.1安裝MooseFS Client
yum -y install fuse.x86_64 fuse-devel.x86_64 fuse-libs.x86_64
modprobe fuse
wget http://ncu.dl.sourceforge.net/project/moosefs/moosefs/1.6.11/mfs-1.6.11.tar.gz
tar zxvf mfs-1.6.11.tar.gz
cd mfs-1.6.11
useradd -s /sbin/nologin mfs
./configure –prefix=/opt/mfs –with-default-user=mfs –with-default-group=mfs –enable-mfsmount && make && make install
3.2掛載文件系統
mkdir -p /mnt/mfs
/opt/mfs/bin/mfsmount /mnt/mfs/ -H 192.168.17.1
註釋:掛載mfsmaster-ip
mkdir /mnt/mfsmeta
/opt/mfs/bin/mfsmount -m /mnt/mfsmeta/ -H 192.168.17.1