GBase 8a
其他
文章

953版本节点替换

发表于2024-03-08 11:03:3191次浏览1个评论

查看集群状态

[gbase@gnode1 gcinstall]$ gcadmin

[gbase@gnode1 gcinstall]$ gcadmin showdistribution

模拟集群异常状态

[gbase@gnode1 gcinstall]$ gcadmin

[gbase@gnode1 gcinstall]$ gcadmin showdistribution

将节点变为不可用

[gbase@gnode1 gcinstall]$ gcadmin setnodestate 192.168.138.175 unavailable

删除被替换节点的feventlog

[gbase@gnode1 gcinstall]$ gcadmin rmfeventlog 192.168.138.175

查看节点状态

[gbase@gnode1 gcinstall]$ gcadmin

管理服务替换

[gbase@gnode1 gcware_server]$ cd /data/192.168.138.173/gcware/gcware_server/

[gbase@gnode1 gcware_server]$ ./gcserver.py --prefix=/data --host=192.168.138.175 --dbaUser=gbase --dbaPwd=gbase –overwrite

查看节点状态

[gbase@gnode1 gcware_server]$ gcadmin

注:175:gcware转换为open状态

调度服务替换

[gbase@gnode1 gcware_server]$ cd /home/gbase/gcinstall/

[gbase@gnode1 gcinstall]$ ./replace.py --host=192.168.138.175 --type=coor --dbaUser=gbase --dbaUserPwd=gbase --generalDBUse=gbase --generalDBPwd=gbase --overwrite --sync_coordi_metadata_timeout=3000

查看节点状态

[gbase@gnode1 gcinstall]$ gcadmin

注:coordinator管理服务状态由UNAVAILABLE转化为open

计算服务替换

拿到旧分布策略

[gbase@gnode1 gcinstall]$ gcadmin getdistribution 1  distribution_info_1.xml

注:1为distribution ID,使用gcadmin showdistribution命令查看distribution ID,当前为1

创建中间分布策略文件

[gbase@gnode1 gcinstall]$ cat distribution_info_1.xml

[gbase@gnode1 gcinstall]$ cp distribution_info_1.xml distribution_info_2.xml

[gbase@gnode1 gcinstall]$ vi distribution_info_2.xml

注:将故障ip:192.168.138.175从配置中删除

生成中间分布策略

[gbase@gnode1 gcinstall]$ gcadmin distribution gcChangeInfo_2.xml

查看新的分布策略

初始化并重分布中间策略

[gbase@gnode1 ~]$ gccli -ugbase -pgbase

 

GBase client 9.5.3.27.140fa78d1. Copyright (c) 2004-2024, GBase.  All Rights Reserved.

 

gbase> initnodedatamap;

Query OK, 0 rows affected, 5 warnings (Elapsed: 00:00:00.32)

gbase> rebalance instance;

Query OK, 1 row affected (Elapsed: 00:00:00.15)

 

gbase> select status,count(*) from gclusterdb.rebalancing_status group by status;

+-----------+----------+

| status    | count(*) |

+-----------+----------+

| COMPLETED |        1 |

+-----------+----------+

1 row in set (Elapsed: 00:00:00.05)

 

gbase>

注:检查进度,指导所有的都是completed状态

gbase> set global gcluster_rebalancing_concurrent_count=0;

Query OK, 0 rows affected (Elapsed: 00:00:00.01)

 

gbase>        

注:为防止并发过大,可以先关闭,并发值可0-15值,也可调整rebalance任务优先级,在跑批开始前,如任务还未完成,需设置并发为0,优先业务跑批;

计算节点替换

[gbase@gnode1 gcinstall]$ ./replace.py --host=192.168.138.175 --type=data --dbaUser=gbase --dbaUserPwd=gbase --generalDBUse=gbase --generalDBPwd=gbase --overwrite --sync_coordi_metadata_timeout=3000

查看节点状态

[gbase@gnode1 gcinstall]$ gcadmin

注:故障数据节点状态由UNAVAILABLE转换为open

查看分布策略

[gbase@gnode1 gcinstall]$ gcadmin showdistribution

注:如上replace操作,会自动新建一个最终策略3,其中已经将故障恢复的节点添加进去,冰洁最老的策略1已自动删除

初始化最终策略

开始重分布并监控进度

[gbase@gnode1 gcinstall]$ gccli -ugbase -pgbase

 

GBase client 9.5.3.27.140fa78d1. Copyright (c) 2004-2024, GBase.  All Rights Reserved.

 

gbase> initnodedatamap;

ERROR 1707 (HY000): gcluster command error: (GBA-02CO-0004) nodedatamap is already initialized.

gbase> rebalance instance;

Query OK, 1 row affected (Elapsed: 00:00:00.18)

 

gbase> select status,count(*) from gclusterdb.rebalancing_status group by status;

+----------+----------+

| status   | count(*) |

+----------+----------+

| STARTING |        1 |

+----------+----------+

1 row in set (Elapsed: 00:00:00.06)

 

gbase>

注:初始化报错可以忽略;为防止并发过大,可以先关闭,并发值可0-15值,也可调整rebalance任务优先级,在跑批开始前,如任务还未完成,需设置并发为0,优先业务跑批;

清理环境

[gbase@gnode1 gcinstall]$ gcadmin showdistribution

清理中间分布策略,可以看到本次中间分布策略ip为2

[gbase@gnode1 gcinstall]$ gccli -ugbase -pgbase

 

GBase client 9.5.3.27.140fa78d1. Copyright (c) 2004-2024, GBase.  All Rights Reserved.

 

gbase> refreshnodedatamap drop 2;

Query OK, 0 rows affected, 6 warnings (Elapsed: 00:00:00.61)

 

gbase>

[gbase@gnode1 gcinstall]$ gcadmin rmdistribution 2

查看状态

[gbase@gnode1 gcinstall]$ gcadmin

[gbase@gnode1 gcinstall]$ gcadmin showdistribution

评论

登录后才可以发表评论
茵陈发表于 2个月前
闪闪发光