分布式网络文件系统--MooseFS
一.介绍
1.简介
MooseFS是一个具备冗余容错功能的分布式网络文件系统,它将数据分别存放在多个物理服务器或单独磁盘或分区上,确保一份数据有多个备份副本。对于访问的客户端或者用户来说,整个分布式网络文件系统集群看起来就像一个资源一样。从其对文件操作的情况看,MooseFS就相当于一个类UNIX文件系统:。
1、mfs是一个分层的目录树结构
2、存储支持POSIX标准的文件属性(权限,最后访问和修改时间)
3、支持特殊的文件,如:块设备,字符设备,管道和套接字,链接文件(符号链接和硬链接)
4、支持基于IP地址和密码的方式访问文件系统
2.应用场景
谈及MooseFS的应用场景,其实就是去谈分布式文件系统的应用场景。
1、大规模高并发的数据存储及访问(小文件、大文件),TFS适合小文件(<1M)
2、大规模的数据处理,如日志分析
二.组成
1.管理服务器 Master Server
管理服务器 Master Server 负责所有数据存储服务器的数据存储管理,响应客户端文件的读写请求,收回文件空间以及恢复文件,多存储节点之间的文件复制。
2.备份服务器Metalogger Server
元数据日志服务器 Metalogger Server,对 Master Server 服务器的变化日志文件进行备份,changelog_ml.*.mfs 是备份文件的类型,当 Master Server 出现故障时替换其继续工作,避免 Master Server 的单点故障导致分布式文件系统的不能正常运行。
3.数据存储服务器 Chunk Server
数据存储服务器chunkserver,服从 Master Server 的安排,定期向 Master Server 发送自己的状态信息,除此之外,还能向客户提供数据存储空间,能够向客户传输数据。
4.客户端 Client
通过 FUSE 内核接口挂载到数据存储服务器上,在客户端看来使用数据存储服务器上的文件系统和使用本地Unix文件系统是一样的。
三.MooseFS原理
1.MooseFS读取文件流程
2.MooseFS写文件流程