知识卡片
RBD mirror基于日志的最终一致性异地容灾
内容
集群内部的多副本靠强一致模型保证可靠性,但集群间做异地容灾时,网络延迟大到如果还要求主集群等所有异地副本确认才能返回,写性能会被严重拖累。RBD mirror的解法是放弃跨地域的强一致,改用基于日志的最终一致:主集群的写操作先以严格有序的方式记录成日志,写请求确认不用等异地同步完成;远端集群的rbd-mirror服务异步拉取这些日志并按顺序重放,一旦主集群整体失效,备份集群能找回一份完整、内部一致但可能略微滞后的最近数据,把数据丢失的风险降到最低而不牺牲主集群的日常写性能。发散:这体现了容灾架构里一个常见的分层策略——集群内部的容错要求强一致性,因为节点间延迟很低、代价可以接受;跨地域容灾则主动放宽到最终一致,因为物理距离带来的延迟是无法用工程手段消除的硬约束,勉强追求强一致只会把这个硬约束转嫁成日常写延迟。
参考来源
《Linux开源存储全栈详解从Ceph到容器存储》第7章《分布式存储与Ceph》