OSChina 第 58 期高手问答 —— GlusterFS 分布式文件系统

红薯 发布于 2014/12/14 20:47
阅读 7K+
收藏 21

OSCHINA 本期高手问答(12月15日-12月19日)我们请来了 @刘爱贵(为大家解答关于 GlusterFS 分布式文件系统的各种问题。

@刘爱贵 ,中科院博士,长期从事存储领域研发工作,具有多年分布式存储理论和实践经验,GlusterFS 技术专家,当前专注于Server SAN研究方向。

Gluster 是一个集群的文件系统,支持 PB 级的数据量。GlusterFS 通过 RDMA 和 TCP/IP 方式将分布到不同服务器上的存储空间汇集成一个大的网络并行文件系统。

OSChina 高手问答一贯的风格,不欢迎任何与主题无关的讨论和喷子。

下面欢迎大家就 GlusterFS 问题向 @刘爱贵 提问,请直接回帖提问。

加载中
0
红薯
红薯
@刘爱贵 :
我最关心的是 Ceph 和 GlusterFS 到底选那个更好,这方面有什么建议吗? 我们前阵子使用了 Ceph,可是莫名其妙的崩溃,搞得暂时不敢用,没找到原因。
刘爱贵
刘爱贵
CephFS目前还不稳定,不建议生产环境使用的,对象和块存储相对比较成熟。
灌直
灌直
@红薯 ,心有所属了吗?
刘爱贵
刘爱贵
回复 @fei : LOSF问题很头痛,不要抱太大期望3.7/4.0能够大幅改善。
fei
fei
回复 @红薯 : GlusterFS 3.7官方会有一些小文件方面的性能增强。可以期待
刘爱贵
刘爱贵
回复 @红薯 : 我之前有一篇文章分析小文件问题 http://blog.csdn.net/liuaigui/article/details/9981135 ,目前开源方面没有特别好的posix分布式文件系统可以很好支持海量小文件。
下一页
0
吐槽的达达仔
吐槽的达达仔

@刘爱贵 :公司想做一个图片存储的架构,然后中间件是用C#的。请问GlusterFS是否能够支持呢??

GlusterFS与其他的服务是如何交互的??

对于宕机,备份等,有没有身边比较傻瓜的解决方案?

有没有比较好的监控支持?

刘爱贵
刘爱贵
回复 @吐槽的达达仔 : FastDFS应该会好一些
吐槽的达达仔
吐槽的达达仔
回复 @刘爱贵 : 谢谢。
吐槽的达达仔
吐槽的达达仔
回复 @purple_grape : 谢谢介绍,最近可能会用fastDFS做方案试试。
purple_grape
purple_grape
海量图片存储,从架构上应该是缓存+存储,缓存解决读的问题,分片存储解决扩展问题。具体到机器上还是阵列卡+大硬盘,最近的LVM cache方案值得一试,SSD写缓存+大硬盘持久化 。
刘爱贵
刘爱贵
如果是海量小图片,GlusterFS不适合。Windows平台的话,可以通过CIFS协议支持,GlusterFS基本复制提供数据高可用,可以基于CTDB提供高可用集群NAS。至于监控可以基于开源的系统,比如zabbix, nagios等。
0
purple_grape
purple_grape

@刘爱贵 : 请问大神,glusterfs 推荐哪个版本的? 3.4?3.5 ? 3.6 ? 

centos 6 是glusterfs 3.6 

http://mirrors.ustc.edu.cn/centos/6/os/x86_64/Packages/glusterfs-3.6.0.28-2.el6.x86_64.rpm

centos 7 却是glusterfs 3.4 

http://mirrors.ustc.edu.cn/centos/7/os/x86_64/Packages/glusterfs-3.4.0.59rhs-1.el7.centos.x86_64.rpm

刘爱贵
刘爱贵
回复 @kjpioo : 推荐使用XFS
kjpioo
kjpioo
补充: glusterfs的ext4 循环bug已经在glusterfs-3.4.0解决。
kjpioo
kjpioo
@刘爱贵 : 关于glusterfs在ext4 文件系统上的bug (https://bugzilla.redhat.com/show_bug.cgi?id=838784) 目前哪些版本受影响? 最新版的glusterfs 3.6和 3.5.x, 1MB以上的大文件存储,从提高性能的角度适合用哪种文件系统? 比如 XFS和btrfs/reiserfs/ext3/ext4 ?
刘爱贵
刘爱贵
3.4,3.5都是稳定版本,3.6刚刚发布,需要多测试,生产环境谨慎使用。
fei
fei
3.6.1。官方的。
0
encro
encro
@刘爱贵 :前阵子在美亚弄了vps作为爬虫的存储,发现 GlusterFS非常慢(好像写入速度才几M/s),不知道为啥。
刘爱贵
刘爱贵
爬的都是小文件,当然慢啊
0
克己克己
克己克己
@刘爱贵 :。。目前还是实习生,以前开发都只是简单的上传头像和图片之类的,没涉及到文件系统更别提分布式文件系统了。前来膜拜一下吧
刘爱贵
刘爱贵
回复 @厄煮 : GlusterFS和HDFS应用场景不同,HDFS主要还是hadoop应用,对象存储;GlusterFS是通用的文件存储,POSIX语义,严格来说两者直接对比意义不大。性能和安全性方面,两者在大数据对象方面性能都不错(带宽),安全性主要采用复制,冷数据方面HDFS的纠错码技术相对成熟一点,GlusterFS的EC卷还处于实验阶段。
克己克己
克己克己
回复 @刘爱贵 : 那问下吧. 这个跟Hadoop的hdfs性能和安全性方面的优劣各是什么
刘爱贵
刘爱贵
相互交流,互通有无
0
灌直
灌直
@刘爱贵 : 请教上面有人提到fastDFS,请问老师是否有了解研究过,做何评价?
灌直
灌直
恩,非常感谢两位大师!
刘爱贵
刘爱贵
FastDFS作为图片存储还是很不错的,主要是API接口,目前不支持POSIX接口。
红薯
红薯
我们在用 FastDFS 这软件需要专用 API 操作的
0
比尔-强
比尔-强
比尔-强
@刘爱贵 我在就跟随你得足迹前进
刘爱贵
刘爱贵
强可无处不在啊
0
jack_jones
jack_jones

@刘爱贵 :请问GlusterFS和MongoDB主要区别都有哪些?

刘爱贵
刘爱贵
MongoDB是文档型的Nosql系统,有些用户也用来存储小图片,性能非常不错,不过是非POSIX接口的。GlusterFS是通常的POSIX文件系统。
encro
encro
莫非说的是GridFS
红薯
红薯
这两个完全不同的东西,怎么可以放在一起比较呢:)
0
总舵主
总舵主

@刘爱贵 :
我想问下:

  1. 在降低存储成本(例如 采用纠删码)GlusterFS是否支持。
  2. GlusterFS既然是大文件量身定做,吞吐量是否跟得上?数据是集中式存储还是分散存储在所有的节点上?
  3. GlusterFS是根据文件路径做一致性哈希的吧(也就是说没有元数据),那么在扩容上,GlusterFS在做卷平衡的时候,一般吞吐量是多大?
  4. GlusterFS支持文件修改,目前据我所知很多分布式文件系统例如HDFS都仅仅支持文件append,请问这个文件修改是如何实现的?如何保证多个副本一致。
  5. 现在大数据离不开大计算,而现在最大的计算框架非hadoop莫属,请问,如果我将GlusterFS代替HDFS接入hadoop的时候,与源生使用HDFS有什么优势?
  6. 你认为是什么原因导致GlusterFS不能很好的支持小文件?GlusterFS并没与元数据,而元数据往往是一个分布式文件系统最难处理的地方。

问的有点多,希望不理赐教。

刘爱贵
刘爱贵
小文件是一个非常复杂的问题,有一篇文章进行具体分析了,请参考。 http://blog.csdn.net/liuaigui/article/details/9981135
刘爱贵
刘爱贵
第五个问题:GlusterFS有plugin可以支持hadoop环境,优势是支持随机读写,更加简单。一般我不建议使用gluster替代HDFS,毕竟hdfs和hadoop是一个生态系统。
刘爱贵
刘爱贵
第四个问题:glusterfs是posix兼容文件系统,支持随机读写,副本是同步写的,是强数据一致性。具体怎么实现,原理是本地文件系统基本一样,只不过是跨网络的。
刘爱贵
刘爱贵
第三个问题:扩容后GlusterFS可以选择做不或不做reblanace,做rebalance和正常数据访问是一样的,通常是从操作节点来执行,受到该节点性能和卷配置的限制,包括网络、卷中brick性能以及系统资源等。
刘爱贵
刘爱贵
第二个问题:GlusterFS有三种基本卷,hash卷以文件为单位进行数据分布,复制卷类似RAID1,条带卷类似RAID0。这三种卷按照不同方式进行数据分布,规模大时,通常是hash+复制或条带。
下一页
0
在时间里愛着你
在时间里愛着你
@刘爱贵 : GlusterFS没有设计自己的私有数据文件格式,为什么?
刘爱贵
刘爱贵
GlusterFS推崇的是一种极简化的设计理念,没有私有格式的好处也是简单,可以直接从底层访问文件,尤其是出了问题后非常简便。不好的地方在于安全性。
返回顶部
顶部