一、辅助文本:MFS集群构建

1、Master Server Node:

### --- Master Server Node:

tar -zxvf moosefs-3.0.84-1.tar.gz
cd moosefs-3.0.84
useradd mfs -s /sbin/nologin // 创建MFS运行身份
[root@server11 moosefs-3.0.84]# ./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs
[root@server11 moosefs-3.0.84]# make && make install
[root@server11 ~]# chown -R mfs.mfs /usr/local/mfs/sbin/* // 优化配置,使MFS命令便于调用
### --- Master Server Node:

[root@server11 ~]# ln -s /usr/local/mfs/bin/* /usr/local/sbin/
cd /usr/local/mfs/etc/mfs // 启用MFS-Master节点配置文件
cp -a mfsmaster.cfg.sample mfsmaster.cfg
cp mfsexports.cfg.sample mfsexports.cfg // 设置MFS挂载权限
vim mfsexports.cfg
10.10.10.0/24.rw,alldirs,maproot=0
cp /usr/local/mfs/var/mfs/metadata.mfs.empty
/usr/local/mfs/var/mfs/metadata.mfs // 拷贝MFS元数据信息文件(初始)
mfsmaster start // 启动MFS-Master
### --- 注配置文件说明解释:

WORKING_USER = mfs
WORKING_GROUP = mfs
SYSLOG_IDENT = mfsmaster // 在sylog中的表示,说明这是mfsmaster产生的
LOCK_MEMORY = 0 // 是否执行mlockall()以避免mfsmaster内存溢出(默认为0)
NICE_LEVEL = -19 // 运行的优先级(默认-19,注意,这进程必须是root启动)
DATA_PATH = /usr/local/mfs/var/mfs // 数据存放路径,该目录下有三大类文件。
changelog,sessions,stats
EXPORTS_FILENAME = /usr/local/mfs/etc/mfs/mfsexports.cfg // 被挂载目录以及其权限控制文件存放位置
BACK_LOGS = 50 // 元数据的改变日志文件数量(默认是50)
MATOML_LISTEN_HOST = * // 重点//元数据日志服务器监听的IP地址(默认是*,代表任何IP)
MATOML_LISTEN_PORT = 9419 // 重点//元数据日志服务器监听的端口地址,默认是9419
MATOCS_LISTEN_HOST = * // 用于存储服务器(ChunkServer)连接的IP地址
MATOCS_LISTEN_PORT = 9420 // 重点//是存储服务器(ChunkServer)连接的端口地址
REPLICATIONS_DELAY_INIT = 300 // 延迟复制的时间(默认是300)
CHUNKS_LOOP_MIN_TIME = 300 // chunks的回环率
CHUNKS_SOFT_DEL_LIMTT = 10
CHUNKS_WRITE_REP_LIMTT = 2,1,1,4 // 在一个循环里复制到一个CHUNK Server的最大chunks数目
CHUNKS_READ_REP_LIMTT = 10,5,2,5
MATOCL_LISTEN_PORT = 9421 // 重点//访问数据的时候端口号是多少,防火墙中需要放行的端口

2、Metadata Server Node

### --- Metadata Server Node

useradd mfs -s /sbin/nologin // 创建MFS用户,并编译安装MFS软件
./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs
make && make install
cp mfsmetalogger.cfg.sample mfsmetalogger.cfg // 拷贝MFS元数据服务配置文件
vim mfsmetalogger.cfg
META_DOWNLOAD_FREQ = 2 // 设置完整同步间隔为2小时
MASTER_HOST = 10.10.10.11 // 设置MFS-Master服务器IP地址
### --- Metadata Server Node

chmod a+x /usr/local/mfs/sbin/* // 优化MFS服务配置,便于命令调用
ln -s /usr/local/mfs/sbin/* /usr/local/sbin
mfsmetalogger start // 启动MFS-Logger服务
lsof -i :9419
cd /usr/local/mfs/var/mfs

3、Chunk Server Node

### --- Chunk Server Node

useradd mfs -s /sbin/nologin // 创建MFS用户,给MFS运行提供身份
./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs
make && make install
cd /usr/local/mfs/etc/mfs
cp mfschunkserver.cfg.sample mfschunkserver.cfg // 拷贝Chunkserver配置文件
vim mfschunkserver.cfg
MASTER_HOST = mfsmaster // 知道MFS-Master服务器地址
MASTER_PORT = 9420 // 指定MFS-Master服务器端口
HDD_CONF_FILENAME = /usr/local/mfs/etc/mfs/mfshdd.cfg // 指定提供存储的配置文件位置
mkdir /mnt/sdb1 // 创建挂载点目录
### --- Chunk Server Node

vim /usr/local/mfs/etc/mfs/mfshdd.cfg // 修改MFS服务HDD路径
/mnt/sdb1
fdisk /dev/sdb // 分区
partprobe
mkfs.ext4 /dev/sdb1 // 格式化
mount /dev/sdb1 /mnt/sdb1/
chown -R mfs.mfs /mnt/sdb1
mfschunkserver start // 启动MFSChunkserver

4、Client Node

### --- Client Node

yum install -y fuse fuse-devel fuse-libs // 安装Fuse
tar -zxvf moosefs-3.0.84-1.tar.gz
cd moosefs-3.0.84 // 编译安装MFS Client工具
./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs --disable-mfsmaster --disable-mfschunkserver
make && make install
/usr/local/mfs/bin/mfsmount/mnt/mfsclient/ -H 10.10.10.12

5、后期维护操作

### --- 误删除处理,垃圾回收站机制

mfssettrashtime 64800 /mnt/mfs/test1 // 设置保存时间
mkdir /back
chown mfs.mfs /back
mfsmount -m /back -H 10.10.10.11
tree . // 定位删除文件目录
mv 002/00000002\|1.txt /back/trash/undel // 查看恢复文件
### --- 快照功能

mkdir bb
chown mfs.mfs bb/
mfsmakesnapshot 1.txt bb/
cd bb/
ll
### --- 冗余goal设置

mfssetgoal 3 /mnt/mfs/test1
mfssetgoal /mnt/mfs/test1
mfsifileinfo /mnt/mfs/test1
### --- 还原master

mfsmaster -a


Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart

                                                                                                                                                   ——W.S.Landor