数仓在线运维:如何进行在线增删CN?

摘要:集群运行过程中,根据集群的综合负载和业务接入情况进行分析:增加CN可以适当降低CPU消耗,增大接入连接数,分散CN节点业务压力,根据实际情况来识别是否要增加CN,如果是提升集群容量和扩展比能力,建议进行扩容操作。

本文分享自华为云社区《【玩转PB级数仓GaussDB(DWS)】在线运维-在线增删CN》,作者:sevenjiang。

集群运行过程中,根据集群的综合负载和业务接入情况进行分析:增加CN可以适当降低CPU消耗,增大接入连接数,分散CN节点业务压力,根据实际情况来识别是否要增加CN,如果是提升集群容量和扩展比能力,建议进行扩容操作。

支持在线运维:

在符合增加CN、删除CN界面的准入条件下,找低峰期时间窗进行操作。

准入条件:

1.增加CN要求集群状态正常(集群状态为Normal,非均衡,低性能状态)

2.如果存在一个节点故障,只允许删除该节点的CN

3.如果存在两个以上的节点故障,不允许删除CN

4.增加或删除CN失败,最新版本通过界面重入即可。

5.最少保留两个CN,最大支持20个CN

界面操作步骤:

1.增加cn

找到集群,点击 “更多”

展开更多后,点击“管理cn节点”

展开“管理cn节点”

点击“点击增加cn节点”,选择需要增加cn的个数,“点击确认”即可

2.删除cn

同上,“点击删除cn节点”

勾选需要删除cn的节点前的复选框,“点击确认”即可

针对业务的影响:

pg_advisory_lock影响的操作:用户业务等待锁不报错(设置了enable_online_ddl_waitlock ), 影响用户DDL,DCL,truncate,vacuum,analyze,lock等操作(非DML操作)

影响时间:锁集群时间=增量build耗时,一般小于20分钟。

可能出现的情况:

1.增量build CN阶段之前会进行短暂的锁集群(pg_advisory_lock),如果有长事务中未提交的业务一直在执行,就会出现等锁的情况,重试3次每次1个小时,还是不能加上锁,增加CN操作会失败回滚退出。

备注:每个CN都有可能出现等锁的现象,如果要查询可以通过如下语句进行查询

select * from pg_locks where classid=65535 and classid=65535 and locktype='advisory' and mode = 'ShareLock' and granted='t';

2.增量build CN阶段,如果业务下发了DDL操作,会出现界面端没有返回成功的情况,类似于hang的现象,等待增量build完成,DDL提交成功,业务界面侧返回成功。

3.删除CN,如果使用到了LVS负载均衡,因为lvs存在重试机制,cn会出现短暂的连接失败。

4.业务低峰期和高峰期,分别进行增加CN的操作,全量build耗时可能存在超过1倍以上的耗时差异,感知上时间会增长,是因为业务并发过大时,会与cn的build阶段进行IO争抢,增加cn加锁阶段也会有所延迟。

5.增删CN阶段,不支持其他类集群运维操作,例如:升级、扩容、温备修复、快照等

 

点击关注,第一时间了解华为云新鲜技术~

posted @ 2023-02-20 14:52  华为云开发者联盟  阅读(58)  评论(0编辑  收藏  举报