分布式文件系统 GlusterFS
2010-06-12 10:04
[Distributed file system]
文档
http://gluster.com/community/documentation/index.php/Gluster_Storage_Platform
http://gluster.com/community/documentation/index.php/GlusterFS_cookbook
最好的文档应该是git中的 user-guide.pdf
代码
git clone git://git.gluster.com/glusterfs.git
貌似在gnu还有一份拷贝,但是似乎两个版本有细微差距
GlusterFS 能使用 libibverbs,下载地址在 http://www.openfabrics.org/downloads/verbs/
对应于 configure 的结果中的 Infiniband verbs
FUSE client : yes
Infiniband verbs : no
epoll IO multiplex : yes
argp-standalone : no
fusermount : no
优点
1 结构清晰
- libglusterfs
- glusterfsd
- booter
- glusterfs
- mod_gluster for apache/lighttpd 甚至支持 DAV
各司其职,每个模块功能都做到极致
2 支持多种 signal 控制
object dump
latency 评测
崩溃后会输出 backtrace(有可能不准确)
log rotate
功能不是很突出,但是这种编程、思维模式很好。
3 其 Translators 概念非常不错
号称实现了所有 filesystem operations, 内部有一个比VFS更精细的树状结构:
cluster/afr 貌似支持 raid1
type cluster/unify
type cluster/stripe
type cluster/dht
都是很有价值的功能
这是我最喜欢的分布式文件系统实现,缺点是卷的配置是固定的,动态添加节点应该是不可能的(至少得改变父节点的配置文件)。