MFS文件系统架构 (MooseFS)
MooseFS是容错,网络分布式文件系统。 它遍及数是可见的,作为一个资源的物理服务器的用户
数据。 对于标准的文件操作MooseFS充当其他Unix相似的文件系统:
一个层次结构(目录树)
POSIX文件属性(权限,最后访问和修改时间)
支持特殊文件(块和字符设备,管道和套接字)
符号链接(指向目标文件名的文件,不一定MooseFS)和硬链接(文件,是指对
MooseFS相同的数据不同的名称)
访问文件系统可以限制基于IP地址和/或密码
对MooseFS与众不同的特点是:
高可靠性(数据的多个副本可以存储在不同的计算机上)
动态扩展能力是通过附加/新电脑磁盘
删除的文件保留的时间可配置时间(文件系统层次的“垃圾桶”)
相干快照文件,甚至当该文件被写入/访问
架构


MooseFS由四个部分组成:
管理服务器( 主服务器 ) -一台机器管理整个文件系统,元数据存储大小为每个文件
(信息,属性和文件的位置(第),包括所有设备的信息有关非正规文件,即目录,插座,管道
和)。
数据服务器( 块服务器 ) -任何数量的数据文件存储和商用服务器同步(它们之间是
否有一个特定的文件应该是存在于一个以上的副本)。
元数据的备份服务器(县)(metalogger服务器 ) -任何服务器的数量,所有这些存储
元数据,并定期更新日志元数据文件下载主,从而促进这些服务器的停止工作的作用,当主服务
器的管理大师。
客户端计算机访问(安装)在MooseFS文件-使用任何机器数量mfsmount过程中的沟通
与管理服务器(接收和修改文件元数据)和chunkservers(实际的文件交换数据)。
mfsmount是基于FUSE的机制 (用户空间文件系统中),所以可以用MooseFS每一个作业系统的
实施FUSE的机制(Linux操作系统,FreeBSD的,MacOS X系统等)
元数据存储在服务器内存的管理,同时保存到磁盘(作为一个定期更新的二进制文件,并立即更
新增量日志)。 主要的二进制文件以及日志同步到metaloggers(如果存在)。
文件数据分成一个最大的64MiB每个碎片(块)。 每块本身就是一个关于数据服务器
(chunkservers)选定的磁盘文件。
高可靠性是通过多台服务器配置为不同的数据酌情实现“目标”值(副本保留数)为给定的文件
集。
是如何运作
在客户端计算机上的所有文件,具有安装MooseFS行动正是因为他们将与其他文件系统一样。 操
作系统内核转移所有文件操作的保险丝模块,它与mfsmount进程通信。 通过网络进行通信的
mfsmount进程随后与管理服务器和数据服务器(块服务器)。 这整个过程是完全透明的用户。
文件元数据mfsmount通信与管理服务器上的每一项行动的时间要求:
创建文件
删除文件
阅读目录
阅读和不断变化的属性
改变文件大小
在读取或写入数据启动
上的任何MFSMETA访问特殊文件
mfsmount使用直接连接到数据服务器(块服务器)存储块的有关文件。 当写一个文件的最后修
改时间,完成后,写程序的管理服务器收到的信息从mfsmount更新文件的长度和最后修改时间。
此外,数据服务器(块服务器)与对方沟通,数据复制,以实现不同的机器上的一个适当数量的
文件副本。
容错
管理命令允许系统管理员指定的“目标”,或数量的副本应保持在每个目录或者每个文件的水平
。 设置的目标之一,并拥有超过一个以上的数据服务器将提供容错功能。 当文件数据在(许多
副本存储在多个数据服务器),该系统具有抗故障或一个单一的数据网络服务器暂时中断。
这当然不是指文件与“目标设定为1,在这种情况下,该文件将只存在于一个单一的数据服务器
上有多少数据服务器在系统中部署不论”。
特别重要的文件可能有自己的目标定为一个数字大于2,这将允许这些文件将在一次抵抗超过一
台服务器崩溃。
在一般的份数可用的设置应该是一个比预期的数量比较闭塞或超出序服务器。
在这样的情况:单一的数据从网络服务器遇到故障或断开时,文件存储在它认为至少有两个副本
,将继续从另一个数据服务器访问。 现在的数据是根据其目标'将被复制到另一个数据访问服务器
再次提供规定数目的副本。
应当指出,如果现有服务器的数量比“的目标为一个给定的文件集”低,所需数量的副本不能保
存。 同样,如果存在的服务器作为当前设置的目标和相同数量的数据,如果服务器已经达到其容
量的100%,这将无法开始举行的一个文件,现在由于门槛低于其目标是复制到另一个离线数据
服务器。在这些新的数据服务器应该连接到系统,尽快以保持该文件的副本所需的数字案件。
一种新的数据服务器可以连接到系统在任何时候。新增产能将立即成为可用于存储新文件或从服
务器持有其他数据文件复制副本。
行政事业存在的查询文件系统内的文件的状态,以确定是否任何文件目前都低于他们的目标(设
置若干副本)。 此实用工具也可以用来改变目标设定的要求。
数据存储在块碎片的版本,所以重新连接带有旧的数据(数据复制服务器,例如,如果已经下了
一段时间离线),不会导致文件变得语无伦次。 数据服务器将同步自己持有的块,其中过时的块
将被拆除,并重新分配自由空间将持有新块的当前版本。
一个客户机(即运行mfsmount进程失败)将不会对文件系统的一致性或其他客户端的业务影响。
在最坏的情况下即尚未从失败的客户端计算机发送的数据可能会丢失。
使用平台
MooseFS可以用每一个作业系统的一个WORKING FUSE的执行情况:
Linux操作系统(Linux的2.6.14和长大的FUSE支持包括在官方的内核)
FreeBSD的
NetBSD的
OpenSolaris的
MacOS X系统

最新评论及回复