部署MFS分布式文件系统

mfs介绍

mooseFS(moose 驼鹿)是一款网络分布式文件系统。它把数据分散在多台服务器上,但对于用户来讲,看到的只是一个源。MFS也像其他类unix文件系统一样,包含了层级结构(目录树),存储着文件属性(权限,最后访问和修改时间),可以创建特殊的文件(块设备,字符设备,管道,套接字),符号链接,硬链接。
MooseFS[MFS]是一个具有容错性的网络分布式文件系统。它把数据分散存放在多个物理服务器上,而呈现给用户的则是一个统一的资源。

mfs特征

1:层析结构(目录树)
2:存储文件属性(权限,访问和修改时间)
3:支持特殊文件(块设备,字符设备,管道)
4:支持符号链接,软硬链接
5:对文件系统访问可以通过IP地址或者密码进行访问限制 
6:高可靠(数据的多个备份存储在不同的计算机上)
7:通过附加新的计算机或者硬盘可以实现容量的动态拓展
8:删除文件可以根据一个可配置的时间周期进行保留
9:不受访问和写入影响的文件连贯快照

内部运行机制

1:客户端请求访问存储,请求发送到了MFS Master
2:MFS Master根据我们的请求,查询所需要的文件分布在那些服务器上
3:客户端直接和存储服务器进行数据存储和读写

在这里插入图片描述
端口关系图
在这里插入图片描述
端口号:
9420 : MFS master和MFS chunck通信端口
9421 : MFS master和MFS Client端通信端口
9419 : MFS master和MFS metalogger端通信端口
9422 : MFS chunck 和MFS Client端通信端口
9425 : MFS master web界面监听端口,查看整体运行状态

部署mfs

1,准备三台虚拟机
2安装moosefs-master

yum install -y rpm-build gcc gcc-c++ fuse-devel zlib-devel     ##安装依赖环境
useradd -s /sbin/nologin mfs  ##创建用户

上传安装包

在这里插入图片描述
预编译安装

 unzip moosefs-master.zip && cd moosefs-master
 ./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs
 make -j 4 && make install   #编译安装

3,查看生成的配置文件
在这里插入图片描述

cp mfsmaster.cfg.sample mfsmaster.cfg         # Master配置文件
 cp mfsexports.cfg.sample mfsexports.cfg         #输出目录配置文件
cp mfsmetalogger.cfg.sample mfsmetalogger.cfg           #元数据日志
cd /usr/local/mfs/var/mfs/
 cp metadata.mfs.empty metadata.mfs

在这里插入图片描述

mfs]# chown -R mfs:mfs /usr/local/mfs/      ##添加权限
 mfs]# /usr/local/mfs/sbin/mfsmaster start         ##启动服务

在这里插入图片描述

 mfs]# netstat -antup | grep 94*         ##查看端口

在这里插入图片描述
4,添加开机自启

 echo "/usr/local/mfs/sbin/mfsmaster start" >> /etc/rc.local
chmod +x /etc/rc.local            ##添加权限

5,关闭服务

 /usr/local/mfs/sbin/mfsmaster stop

查看生成的日志
在这里插入图片描述
6,指定需要共享的权限

cd  /usr/local/mfs/etc/mfs
vim mfsexports.cfg      ##进入添加标记的地方

在这里插入图片描述

7,启动服务 sh /etc/rc.local
在这里插入图片描述
8.安装mfs元数据日志服务器

cd moosefs-master
./configure --prefix=/usr/local/mfsmeta --with-default-user=mfs --with-default-group=mfs
make && make install

生成配置文件mfsmetalogger.cfg

cd /usr/local/mfsmeta/etc/mfs/
cp mfsmetalogger.cfg.sample mfsmetalogger.cfg

进入配置文件修改id

 vim mfsmetaloogger.cfg

在这里插入图片描述

chown -R mfs:mfs /usr/local/mfsmeta/        ##给目录添加权限

9,启动元数据日志服务

  /usr/local/mfsmeta/sbin/mfsmetalogger start

在这里插入图片描述

echo "/usr/local/mfsmeta/sbin/mfsmetalogger start" >> /etc/rc.local          ##添加开机自启
/usr/local/mfsmeta/sbin/mfsmetalogger stop      ##关闭元数据日志服务

在这里插入图片描述

查看服务端口

 /usr/local/mfsmeta/sbin/mfsmetalogger start
 netstat -anput | grep 9419

在这里插入图片描述

在slave1上配置

useradd -s /sbin/nologin mfs            ##创建用户

1,上传安装包,预编译安装
在这里插入图片描述

 yum install -y rpm-build gcc gcc-c++ fuse-devel zlib-devel        ##安装依赖环境

编译安装

unzip moosefs-master.zip
 cd moosefs-master
./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs
make && make install

2,修改配置文件

cd /usr/local/mfs/etc/mfs/
cp mfschunkserver.cfg.sample mfschunkserver.cfg 
cp mfshdd.cfg.sample mfshdd.cfg 
vim mfschunkserver.cfg           ##进入配置文件修改id  端口号

在这里插入图片描述

vim mfshdd.cfg     ##进入配置文件添加以下部分
#~/mnt/hd7
/tmp
#在这里/tmp 是一个给 mfs 的分区,但在生产环境是一个独立的磁盘的挂载目录
 chown -R mfs:mfs /usr/local/mfs         ##添加权限
/usr/local/mfs/sbin/mfschunkserver start         ##启动服务

在这里插入图片描述

echo "/usr/local/mfs/sbin/mfschunkserver start" >> /etc/rc.local               ##假人开机自启
chmod +x /etc/rc.local         ##添加权限

查看数据 ls /tmp

在这里插入图片描述

/usr/local/mfs/sbin/mfschunkserver stop       ###关闭服务

在第slave2上配置

1,创建用户,上传压缩包,编译安装

 useradd -s /sbin/nologin mfs            ##创建服务用户
 yum install rpm-build gcc gcc-c++ fuse-devel zlib-devel -y            ##安装依赖环境
 unzip moosefs-master.zip && cd moosefs-master
./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs --enable-mfsmount                      #开启mfsmount必须有,作为客户端必须有的这一个选项。
make -j 4 && make install             ##编译安装
   mkdir  /mfs        ##创建目录

2,加载fuse模块 查看

modprobe fuse
lsmod | grep fuse

在这里插入图片描述

 ln -s /usr/local/mfs/bin/mfsmount /usr/bin/mfsmount          ##给mfsmount添加软连接

3,将mfs共享出来的储存空间挂载到/mfs目录下;

mfsmount /mfs -H 192.168.100.10 -p

Df查看
在这里插入图片描述
添加开机加载模块和开机挂载

 echo "modprobe fuse" >> /etc/rc.local
echo "/usr/local/mfs/bin/mfsmount /mfs -H 192.168.1.11" >> /etc/rc.local 
chmod +x /etc/rc.local

测试
在slave1上用tree监控状态

yum install -y tree          ##安装
 tree /tmp

在这里插入图片描述
Slave2客户端写入数据

Cp -r /boot/* /mfs 
 

在这里插入图片描述
在slave1存储服务器监控 tree /tmp
在这里插入图片描述
在master上配置web监控

/usr/local/mfs/sbin/mfscgiserv  restart              ##启动网页监控

在这里插入图片描述
在这里插入图片描述
实验做到这里就结束啦,可能有点乱请谅解,如果有什么问题请小伙伴们留言,谢谢~

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值