容灾切换后租户和集群去向

当failover执行后,oceanbase数据库的主租户及其对应集群、节点何去何从,是被删除了?还是根据故障信息来判断,如果租户故障,就删除租户,如果节点故障就删除节点

failover执行后 租户相当于断开了同步,意味着有两个主租户了,你需要回复原集群然后重建备租户

2 个赞

是不是如果原集群故障了,是需要重新新建集群?如果只是租户故障,就可以在原集群上新建备租户

@论坛小助手

根据文档库中的信息,以下是对您问题的详细解答:

1. Failover 执行后主租户及其对应集群、节点的状态

执行 Failover 操作后:

  • 主租户的角色会丢失,对应的备租户会被提升为新的主租户(参考文档:租户角色概述,标题:Switchover 和 Failover 操作动态改变租户角色)。
  • 主租户并不会被直接删除,而是其状态会变为不可用。如果需要重新使用原主租户,可以进行数据修复或重建操作。
  • 节点层面,如果节点故障导致主租户无法正常工作,OceanBase 数据库会通过 Paxos 协议选举新的 Leader 副本来接管服务(参考文档:高可用 FAQ,标题:OceanBase 数据库如果少数派宕机会发生什么?多久可以恢复?)。故障节点上的数据可能需要通过日志回放或其他方式恢复。

2. 是否需要重新新建集群

  • 如果是集群级别的故障(例如,整个集群宕机或多数派副本不可用),则需要重新创建集群,并将数据从备份中恢复到新集群中。
  • 如果是租户级别的故障(例如,某个租户的数据损坏或无法访问),可以在原集群上重新创建一个新的租户,并将其设置为备租户,然后通过日志同步等方式恢复数据。

3. 具体场景分析

场景 1:原集群故障

  • 如果原集群完全故障且无法恢复,需要重新创建一个集群。
  • 在新集群中,可以通过备份恢复的方式将数据迁移到新集群中,并重新配置主备关系。

场景 2:仅租户故障

  • 如果只是某个租户故障,而集群和节点仍然正常运行,则可以在原集群上创建一个新的备租户。
  • 新建的备租户可以通过设置日志恢复源与现有主租户进行同步(参考文档:其他问题 → 为备库设置日志恢复源失败 → 处理方法)。
  • 在业务升级失败等特殊场景下,也可以将备租户切换为主租户(参考文档:物理备库概述 → 物理备库的部署方案 → 主租户和备租户在同一个集群中)。

4. 总结

  • Failover 后,原主租户不会被删除,但其状态会变为不可用。
  • 如果是集群故障,需要重新创建集群;如果是租户故障,可以在原集群上新建备租户并进行数据同步。
  • OceanBase 数据库通过 Paxos 协议保证了高可用性,在少数派副本故障时,多数派副本仍能提供服务。

希望以上解答能够解决您的疑问!如果还有其他问题,请随时提问。

具体信息可参考以下文档:

  1. 租户角色概述
  2. Failover
  3. 物理备库概述
  4. 创建租户
  5. 其他问题
  6. 发起租户恢复
  7. Switchover 或 Failover 相关问题
  8. 高可用 FAQ
  9. 按表恢复前准备
  10. 配置项和系统变量概述