首页 > 存储相关 > MooseFs

蚊子今天在虚拟机上做moosefs的安装测试,在编译装moosefs的客户端的时候出现

checking for FUSE… no
******************************** mfsmount disabled ********************************
* fuse library is too old or not installed – mfsmount needs version 2.6 or higher *
***********************************************************************************

可实际上蚊子已经安装了fuse-2.8.4,网上找了一下,发现田逸已经遇到过此问题了,他的解决办法是

export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH

然后编译就过去了,然后蚊子查了一下,PKG_CONFIG_PATH路径提供了找到.pc文件位置,默认的libdir和datadir是pkg-config文件安装时的默认目录,蚊子于是看了一下,pkgconfig的默认安装路径是/usr,所以libdir的目录就是/usr/lib,所以,蚊子之后想了另外一个解决办法,就是,在安装fuse的时候指定prefix,即

./configure –prefix=/usr

这样装好fuse之后,什么都不用改,moosefs的客户端就可以顺利完成。

阅读全文

moosefs的听说是在昨天群里讨论的时候,网上大概搜了搜,相关的文章还是有一些的。但读官方文档总是个不错的办法。

MooseFS正式的推出是在2008-05-30,到2009-01-28为止,最新的版本是1.5.12。

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

MFS的区别特征:

  • 高可用性(数据在不同的服务器上会有多分的拷贝)
  • 只需要通过添加新的服务器或者硬盘就可以做到动态的扩展
  • 可以再一个规定的时期保存执行了删除操作的文件
  • 可以创建文件的快照,保证文件在被使用的时候,整个文件的副本都是一致的

MFS系统的架构

MFS组成包括了三部分:

  • 管理服务器(master),单独的一台服务器,用来管理整个文件系统,存储每个文件的元数据(文件大小,文件属性,文件所在位置的这些信息),包含了所有非规则文件的全部信息,如文件夹,套接字设备,管道设备
  • 数据服务(chunkservers),任何数量的可用的服务器。一个文件会在这些服务器上存储多份。
  • 客户端,任何一种可以支持FUSE的服务器,服务器上会运行mfsmount进程,直接和管理服务器通信,用来接收和修改文件的信息,同时和块服务器交换真实的文件数据

元数据存储在Master的内存中,同时会保存一份在硬盘上(作为临时更新的二进制文件和立即更新的增量日志方式)

数据文件被分成64Mb大小的块,每个块被分散的存储在块服务器的硬盘上,同时块服务器上还会存储其他块服务器上块文件的副本。

客户端只需要mount上MFS就可像操作其他文件系统的文件一样操作MFS中的文件了。操作系统的内核把对文件的操作传递给FUSE模块,这个模块用来和mfsmount进程进行通信。mfsmount进程后续通过网络和管理服务器和数据块服务器进行通信。整个过程对用户来讲是透明的。

在对所有元数据文件。(文件创建,文件删除,读文件夹,读取和更改属性,改变文件大小等等涉及到在MFSMETA上的特殊文件)进行操作的过程中,mfsmount和管理服务器建立通信,然后开始读取和写入数据。数据发送到所有数据服务器中有相关文件块的一台上。在完成写操作之后,管理服务器收到文件长度和最后修改时间的更新信息。

而且,数据服务器之间进行复制通信,保证每个块在不同的块服务器上都有拷贝。

因为文件块存在多个拷贝,所以,任何一台数据服务器不可用都是不会影响到文件的正常访问的。

 

整体来看moosfs,他的设计理念还是很符合gfs的,从架构图来看,整个系统实现起来还是很容易的。不过有一点值得注意的还是,对于master主机来说,这个是一个单点,会存在隐患,在正式环境应用的时候,如何解决这里,是个关键。

官方网站:http://www.moosefs.com/index.html

以上内容简单翻译自:http://www.moosefs.com/pages/mfs.html,不对地方还请指出,本人英文水平有限。

阅读全文