GlusterFS 增加节点扩容的疑问,旧节点还继续会存大量的数据吗?

2021-01-10 23:47:43 +08:00
 mushokumunou

每个节点都是用 zfs 建的存储池。 然后用 gfs 集群做了分布卷,挂载给主应用使用。

现在节点有 a 和 b, 由于 zfs 特性,最好是保留 10%的剩余空间,不然性能急剧下降。 那么 a 和 b 都塞的差不多了。比如 85%。

我想增加 c 节点到 gfs 卷里。 那么新数据会怎么分布存储呢?

a 和 b 尽量少量存储?优先 c 节点? 还是可以设置 a 和 b 只读(不可能,数据删除咋办?),只能存 ab 以外的节点?比如 c,比如后面又增加了 d 。

现在只是虚拟机上模拟环境搭建,还没实际遇到,想提前打个预防学习一下。求教。

1108 次点击
所在节点    问与答
3 条回复
catror
2021-01-11 00:41:55 +08:00
加入节点 c 后,节点 a 和 b 的数据会做迁移。文件分布是用的一致性哈希,具体你可以看看 DHT 模块的文档或代码。
mushokumunou
2021-01-11 01:11:24 +08:00
@catror 这么贴心?那通过增加节点,我既能解决扩容问题,又能解决 zfs 性能问题了。
msg7086
2021-01-11 01:42:21 +08:00
说实话如果用上了 GlusterFS 的话,我宁愿去使用更加传统的文件系统。
ZFS 本身有些隐藏痛点(包括你说的 10%剩余空间问题),如果用 GlusterFS 的话我还是比较倾向单盘 JBOD 然后让 GlusterFS 自己来保证冗余。

当然以上都是我纸上谈兵。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/743647

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX