暂无图片
暂无图片
12
暂无图片
暂无图片
暂无图片

OceanBase容灾部署方案

OceanBase 2022-10-18
835

OceanBase 数据库提供多种部署模式,可根据对机房配置以及性能和可用性的需求进行灵活选择。

部署方案容灾能力RTORPO
同机房三副本机器级无损容灾 / 机架级无损容灾30s 内0
同城双机房主备库机房级容灾分钟级大于 0
同城三机房机房级无损容灾30s 内0
两地两中心主备库地域级容灾分钟级大于 0
三地三中心五副本地域级无损容灾30s内0

为了达到不同级别的容灾能力,OceanBase 数据库提供了两种高可用解决方案:多副本高可用解决方案和主备库高可用解决方案。多副本高可用解决方案基于 Paxos 协议实现,在少数派副本不可用情况下,能够自动恢复服务,并且不丢数据,始终保证 RTO 在 30 秒内,RPO 为 0。主备库高可用解决方案是基于传统的主-备架构来实现的高可用方案,是多副本高可用方案的重要补充,可以满足双机房和双地域场景下的容灾需求;它不能保证数据不丢,RPO 大于 0,RTO 为分钟级别。

同机房三副本

如果只有一个机房,可以部署三副本或更多副本,来达到机器级无损容灾。当单台 server 或少数派 server 宕机情况下,不影响业务服务,不丢数据。如果一个机房内有多个机架,可以为每个机架部署一个 Zone,从而达到机架级无损容灾。

同城双机房主备库

如果同城只有双机房,又想达到机房级容灾能力,可以采用主备库,每个机房部署一个集群。当任何一个机房不可用时,另一个机房可以接管业务服务。如果备机房不可用,此时业务数据不受影响,可以持续提供服务;如果主机房不可用,备机房集群需要激活成新主集群,接管业务服务,由于备集群不能保证同步所有数据,因此可能会丢失数据。

同城三机房

如果同城具备三机房条件,可以为每个机房部署一个 Zone,从而达到机房级无损容灾能力。任何一个机房不可用时,可以利用剩下的两个机房继续提供服务,不丢失数据。这种部署架构不依赖主备库,不过不具备地域级容灾能力。

两地两中心主备库

用户希望达到地域级容灾,但是每个地域只有一个机房时,可以采用主备库架构,选择一个地域作为主地域,部署主集群,另一个地域部署备集群。当备地域不可用时,不影响主地域的业务服务;当主地域不可用时,备集群可以激活为新主集群继续提供服务,这种情况下可能会丢失业务数据。

更进一步,用户可以利用两地两中心实现双活,部署两套主备库,两个地域互为主备。这样可以更加高效利用资源,并且达到更高的容灾能力。

三地三中心五副本

为了支持地区级无损容灾,通过 Paxos 协议的原理可以证明,至少需要 3 个地区。OceanBase 数据库采用的是两地三中心的变种方案:三地三中心五副本。该方案包含三个城市,每个城市一个机房,前两个城市的机房各有两个副本,第三个城市的机房只有一个副本。和两地三中心的不同点在于,每次执行事务至少需要同步到两个城市,需要业务容忍异地复制的延时。

三地五中心五副本

和三地三中心五副本类似,不同点在于,三地五中心会把每个副本部署到不同的机房,进一步强化机房容灾能力。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论