新人来报道 多项选择题
OceanBase 故障场景,哪些属于高可用设计能力()
A. zone 故障,副本跨 zone 选主
B. OBServer 单节点宕机,分区自动重新选主
C. 单磁盘损坏,有副本数据不丢失
D. 任意 2 台节点同时宕机,业务一定可用
正确答案是 A、B、C 。
OceanBase 的高可用设计基于 Paxos 共识协议和多数派(Majority) 机制,这三项都属于其核心能力范围。
A. zone 故障,副本跨 zone 选主 (正确)
OceanBase 支持将数据副本分布在多个 Zone(可用区)中。当一个 Zone 整体故障时,如果剩余的健康 Zone 中仍包含该分区的多数派副本,Paxos 协议会自动从这些副本中选举出新的 Leader,确保业务不中断。
B. OBServer 单节点宕机,分区自动重新选主 (正确)
这是 OceanBase 最基本的自愈能力。当单节点宕机,Root Service 会检测到心跳超时。如果故障节点上的副本不是多数派,剩余的副本会触发重新选主,业务流量会自动切走,整个过程通常在秒级完成。
C. 单磁盘损坏,有副本数据不丢失 (正确)
因为 OceanBase 使用多副本存储(通常为三副本),只要单副本故障,数据完整性不受影响。节点会将故障磁盘标记为坏盘,并自动从其他健康副本同步数据,在本机其他可用磁盘或替换磁盘上重建副本,确保副本数恢复。
D. 任意 2 台节点同时宕机,业务一定可用 (错误)
“一定可用”这个表述过于绝对。OceanBase 的可用性取决于故障节点上的副本是否属于多数派 。如果宕机的 2 个节点位于同一个 Zone,而集群有三副本且分布在 3 个 Zone,业务依然可用。但如果这 2 个节点恰好承载了同一个数据分区的 多数派(2 个)副本 (例如三副本中同时挂了 2 个),此时该分区无法形成多数派写入,会导致该分区不可用,直到至少一个节点恢复。