GlusterFS 故障处理与数据恢复效率

148次阅读
没有评论

问题描述

关心在 GlusterFS 中,当存储单元(storage brick)之一出现故障(如硬盘故障)时,GlusterFS 如何处理数据恢复?用户想知道存储的数据是否仍然安全。

解决方案

请注意以下操作注意版本差异及修改前做好备份。

在 GlusterFS 中,故障处理和数据恢复是通过内置的数据“转换器”(translators)完成的,这些转换器会自动在所有存储单元(bricks)之间复制数据。特定类型的转换器是 AFR(automatic file replication),它实现了文件的自动复制。AFR 转换器还使用了 DHT(distributed hash table)转换器。确保至少有两个主存储单元(master bricks),因为如果只有一个,将会产生单点故障。

当你至少拥有两个存储单元时,GlusterFS 的守护进程(在第一次运行 gluster 命令时会自动安装)会触发自动修复过程。它会使用另一个主服务器的复制/转换数据来修复故障的情况。如果发生无法通过自动修复解决的实际灾难恢复情况,则需要按照 这里的详细流程 进行操作。

另一方面,一些其他的建议(例如Redhat 的文档)推荐在两组中至少拥有六个存储单元。这样,“即使我们从每组丢失两个存储单元,也不会有数据丢失”。基本上,你拥有的存储单元越多,冗余性越高,数据丢失的机会就越小(不过,随着存储单元数量的增加,成本和时间也会逐渐增加)。

除了复制外,通常在 GlusterFS 集群的节点之间至少有两个数据副本。关于节点故障切换的细节,你可以参考Unix and Linux SE 网站中的这个答案

以上是关于 GlusterFS 故障处理和数据恢复的简要解决方案,希望对你有所帮助!

正文完