KingbaseES V8R6集群运维案例之---云主机cluster模式备份sys_rman.conf构建故障

案例说明:
云主机环境,KingbaseES V8R6集群主库执行sys_backup.sh init,wal日志归档失败,手工执行归档命令出现‘command must be run on the kingbase host’错误,导致备份初始化故障。
适用版本:
KingbaseES V8R6

一、问题现象
如下图所示,在执行sys_backup.sh init主库执行初始化备份时,长时间hang住:

查看数据库sys_log日志,发现wal日志归档失败:

手工执行归档命令,出现‘command must be run on the kingbase host’错误:

二、问题分析

1、查看sys_backup.conf,本次备份采用cluster模式,在主库上执行备份,repo节点也是主库,配置无错误。
2、执行sh -x sys_backup.sh init 发现,在生成sys_rman.conf文件时,出现异常:
如下图所示,在生成sys_rman.conf文件时,备库地址对应的应该是kb2-host,而初始化生成的是kb1-host:

sys_rman.conf配置:

如下图为备份正常的sys_rman.conf配置案例:

3、由于使用cluster模式备份,需读取repmgr.conf配置,检查repmgr.conf配置,没有发现异常。

三、问题解决
1、终止sys_backup.sh init初始化命令执行。
2、手工修改sys_rman.conf文件(默认不建议手工修改):
如下图所示,将kb1-host改为kb2-host:

3、在主库执行select sys_switch_wal();检查发现,归档成功:
如下所示,在执行wal日志切换后,归档成功:

4、执行sys_rman备份测试:
如下图所示,备份成功:

四、总结
此次故障是因为,在执行sys_backup.sh init时,初始化备份,创建sys_rman.conf时参数配置错误,为什么会出现这种错误,还需要进一步分析具体原因。

posted @ 2024-03-29 18:36  KINGBASE研究院  阅读(24)  评论(0编辑  收藏  举报