ocp日志流在每个observer上的数量是多少

【 使用环境 】测试环境
【 OB or 其他组件 】ob
【 使用版本 】4.1
【问题描述】我的一个4.1版本的3节点集群版本,新建了一个租户发现他只在一个observer上有日志流,另外两个备副本上没有。这是正常的吗?
而另外一个租户,就在3个机器上都有日志流。
例如1002就在每个observer上有一个日志流,1004就只在observer1上有1个日志流

正常
是否有日志流跟租户的primary_zone相关,日志流会出现在primary_zone上,当时RANDOM时,每个zone的节点都可能有主,这个时候就会为每个zone创建日志流

可是我把1002那个租户的primary zone改成了与1004一样后,1002什么时候日志流会变成1个。

日志流是OceanBase v4.0新引入的内部自管理的对象,简称为LS。

日志流是承载用户分区的实体,一个日志流可以服务一个或若干个分区。日志流的数量与租户对外提供服务节点的数量有关,例如,用户希望租户只有一台机器提供服务,那么系统只会创建一个日志流,并且日志流Leader在对应的机器上;如果用户希望三台机器提供服务,那么系统会创建三个日志流,三个日志流的Leader分布在对应的机器上。

租户对外提供服务节点的数量由租户的两个属性决定:Primary Zone和Unit Number。Primary Zone决定了租户在哪些zone上提供服务,Unit Number决定了租户一个zone上有多少服务节点。所以Primary Zone的数量 * Unit Number即为租户提供服务节点的数量。

当前,OceanBase暂时还不支持租户灵活扩缩容,该特性即将发布,敬请期待!

1 个赞

ob4.1不能灵活扩缩容是什么意思?以前不都是支持的吗。

1 个赞

当前已发布的版本,扩缩容能力还不完善,该能力会在下一个4.x大版本补齐,实现自动负载均衡和灵活扩缩容。

所谓的灵活扩缩容指的是用户可以根据自身需求配置服务节点的数量,实现服务能力的水平扩缩容。例如用户一开始创建租户有3个服务节点(unit number = 1, primary zone = z1,z2,z3),如果用户希望只由z1的机器来服务读写流量,将primary zone设置为z1,那么系统会自动将3个提供服务的日志流缩容为1个提供服务的日志流,提供单机的性能体验,内部没有分布式事务。

因此,灵活扩缩容指的就是根据用户的配置,自动调整日志流数量,实现用户表分区跨机、跨日志流搬迁,从而实现租户内的负载均衡。

1 个赞