1、MooseFS简介
MooseFS是一种分布式文件系统,
MooseFS文件系统结构:
- 管理服务器managing server (master):在MooseFS Pro中,可以管理整个文件系统的任意数量的计算机,存储每个文件的元数据(有关大小,属性和文件位置的信息,包括有关非文件的所有信息),常规文件,即目录,套接字,管道和设备)。
- 元数据日志服务器Metalogger server(Metalogger):任意数量的服务器,所有服务器都存储元数据变更日志并定期下载主元数据文件。
- 数据存储服务器data servers (chunkservers):任何数量的商品服务器,用于存储文件的数据并在它们之间进行同步(如果某个文件应该存在多个副本中)。
- 客户机挂载使用client computers:MooseFS中文件的客户端计算机–使用mfsmount进程与管理服务器(以接收和修改文件元数据)和块服务器(以交换实际文件数据)进行通信的任意数量的计算机。
MooseFS文件系统特点:
- 高可靠性(数据的多个副本可以存储在单独的物理机上)
- 通过添加新的计算机/磁盘可动态扩展容量
- 删除的文件在可配置的时间内保留(文件系统级别) “垃圾箱”
- 文件的连贯快照,即使正在写入/访问文件时
MooseFS文件工作原理:
数据读的过程:客户端向元数据服务器发出读请求-->元数据服务器把所需数据存放的位置(Chunk Server的IP地址和Chunk编号)告知客户端-->客户端向已知的Chunk Server请求发送数据-->Chunk Server向客户端发送数据.
![](https://img-blog.csdnimg.cn/20200605092932780.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQxMDU2MjI0,size_16,color_FFFFFF,t_70)
数据写的过程:客户端向元数据服务器发送写入请求-->元数据服务器与Chunk Server进行交互,但元数据服务器只在某些服务器创建新的分块Chunks,-->创建成功后由hunk Servers告知元数据服务器操作成功-->元数据服务器告知客户端,可以在哪个Chunk Server的哪些Chunks写入数据-->客户端向指定的Chunk Server写入数据-->该Chunk Server与其他Chunk Server进行数据同步,同步成功后Chunk Server告知客户端数据写入成功-->客户端告知元数据服务器本次写入完毕.
![](https://img-blog.csdnimg.cn/20200605092950221.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQxMDU2MjI0,size_16,color_FFFFFF,t_70)
【说明】分布式文件系统:分布式文件系统(Distributed File System)是指文件系统管理的物理存储资源不一定直接连接在本地节点上,而是通过计算机网络与节点相连。分布式文件系统的设计基于客户机/服务器模式。一个典型的网络可能包括多个供多用户访问的服务器。另外,对等特性允许一些系统扮演客户机和服务器的双重角色。
2、搭建MooseFS
实验环境:
主机 | 作用 |
server1(192.168.1.110) | master、管理节点 |
server2(192.168.1.120) | chunk、服务器节点1 |
server3(192.168.1.130) | chunk、服务器节点2 |
server4(192.168.1.140) | 客户端测试 |
2.1 配置master节点:
首先安装需要的软件包:
![](https://img-blog.csdnimg.cn/20200605102315219.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQxMDU2MjI0,size_16,color_FFFFFF,t_70)
当软件安装完成后