暂无图片
暂无图片
14
暂无图片
暂无图片
暂无图片

OceanBase的扩容和缩容

OceanBase,数据库 2022-08-31
1983

扩容和缩容主要分为集群级别和租户级别。

集群的扩缩容

OceanBase 集群的分布式架构可以方便地完成集群的扩容和缩容操作。当集群的容灾需求发生变化时,可通过调整可用区数量,即增加或者减少 Zone 的方式来提高或降低集群的容灾能力。当集群的外部负载发生变化时,可通过调整可用区内物理机的数量,即增加或减少 OBServer 的方式来改变集群的负载能力。

可用区(Zone)的动态调整

OceanBase 集群中的每一份数据都维护了多个副本,一份数据的多个副本通过 Paxos 协议组成一个基本的高可用单元。通常情况下,系统会在每个可用区内部署至多一个数据副本,在少数可用区发生故障时,剩余可用区内的副本仍可以通过 Paxos 协议,在保证数据完整的前提下,继续提供服务。您可以通过增加可用区的数量来增加数据的副本数,进而提高系统可用性。

物理机(OBServer)的扩缩容

当集群中提供的服务能力不能完全满足读写请求时,需要对该 OceanBase 集群扩容以提高集群服务能力。例如,可以为当前集群的每个可用区扩容一台 OBServer,扩容后每个可用区包含 N+1 台 OBServer。通过动态扩容,集群中的 OBServer 数量会相应增加,RootService 会根据内部的负载均衡机制,将集群内原有的数据和负载依次均衡到新扩容的 OBServer 上。相关的负载均衡机制与策略请参见《OceanBase 数据库概览》文档中 资源单元的均衡 和 数据均衡 章节。

相反地,当集群中的 OBServer 的服务能力对当前负载有较多冗余时,可考虑通过缩减 OBServer 来降低集群成本。

租户的扩缩容

租户的扩容和缩容主要通过以下几种方式来实现:

  • 调整租户资源池的 UNIT_NUM 数量,增加或减少集群中为该租户提供服务的 OBServer 的数量。

    具体操作请参见 通过修改 unit_config

  • 调整租户中每个资源单元的资源配置大小,改变租户在各 OBServer 上的服务能力。

    具体操作请参见 通过修改 UNIT_NUM

  • 调整租户中资源池的 ZONE_LIST,改变租户中资源的分布范围。

    具体操作请参见 通过修改 ZONE_LIST

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

评论