首页 > 其他分享 >KingbaseES V8R6集群运维案例之---备库register故障

KingbaseES V8R6集群运维案例之---备库register故障

时间:2024-03-29 18:46:42浏览次数:22  
标签:repmgr 备库 V8R6 运维 standby register timeout keepalives

案例说明:
据现场实施人员说,备库执行了clone,启动数据库服务,执行'repmgr standby register'后,无法将备库register到集群。

适用版本:
KingbaseES V8R6

一、问题现象
如下图所示,执行'repmgr standby register' ,register失败:

二、问题分析
1、repmgr standby register分析
如下图所示:

  1. 备库读取repmgr.conf获取本节点信息,并连接。
    2)备库读取repmgr.nodes元数据,获取主库节点信息,并连接。
    3)连接主库节点,执行备库节点的register。

2、查看备库repmgr.conf配置
如下图所示,备库节点配置正常。

3、检查备库的数据库服务
如下图所示,远程连接到备库节点检查数据库服务,竟然发现备库数据库服务启动在primary状态???

三、问题解决
1、在备库data下创建standby.signal文件
[kingbase@localhost data]$ touch standby.signal

2、主库节点创建备库复制槽

3、重启备库数据库服务(数据库服务在standby状态)

[kingbase@localhost bin]$ ./sys_ctl restart -D ../data
等待服务器进程关闭 ....... 完成

4、执行repmgr standby register

[kingbase@localhost bin]$ ./repmgr standby register --force -L debug
[INFO] connecting to local node "node2" (ID: 2)
[DEBUG] connecting to: "user=esrep connect_timeout=10 dbname=esrep host=10.0.0.101 port=54321 keepalives=1 keepalives_idle=2 keepalives_interval=2 keepalives_count=3 tcp_user_timeout=9000 fallback_application_name=repmgr options=-csearch_path="
[INFO] connecting to primary database
[DEBUG] connecting to: "user=esrep connect_timeout=10 dbname=esrep host=10.0.0.100 port=54321 keepalives=1 keepalives_idle=2 keepalives_interval=2 keepalives_count=3 tcp_user_timeout=9000 fallback_application_name=repmgr options=-csearch_path="
[DEBUG] remote_command():
  ssh -o Batchmode=yes -q -o ConnectTimeout=10 -o StrictHostKeyChecking=no -p 22 -o ServerAliveInterval=2 -o ServerAliveCountMax=3 10.0.0.100 /home/kingbase/cluster/install/kingbase/bin/kbha -A updateinfo
[INFO] standby registration complete
[NOTICE] standby node "node2" (ID: 2) successfully registered

---如上所示,standby节点register成功。

5、查看集群节点状态

[kingbase@localhost bin]$ repmgr cluster show
 ID | Name  | Role    | Status    | Upstream | Location | Priority | Timeline | LSN_Lag | Connection string                                                   
----+-------+---------+-----------+----------+----------+----------+----------+---------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------
 1  | node1 | primary | * running |          | default  | 100      | 1        |         | host=10.0.0.100 user=esrep dbname=esrep port=54321 connect_timeout=10 keepalives=1 keepalives_idle=2 keepalives_interval=2 keepalives_count=3 tcp_user_timeout=9000
 2  | node2 | standby |   running | node1    | default  | 100      | 1        | 0 bytes | host=10.0.0.101 user=esrep dbname=esrep port=54321 connect_timeout=10 keepalives=1 keepalives_idle=2 keepalives_interval=2 keepalives_count=3 tcp_user_timeout=9000

四、总结
此次案例,是因为备库节点的数据库服务状态启动到了primary模式,导致执行'remgr stanby register'失败,在执行备库克隆后,启动数据库服务注册集群前,需要检查下当前备库的数据库服务状态,状态正常后,再执行register。

标签:repmgr,备库,V8R6,运维,standby,register,timeout,keepalives
From: https://www.cnblogs.com/kingbase/p/17798335.html

相关文章

  • KingbaseES V8R3集群运维案例之---集群启动“DATA_SIZE_DIFF 16 (MB)”故障
    案例说明:为保证集群数据的一致性安全,在主备库的数据相差“DATA_SIZE_DIFF>=16M"以上时,该备库不能参与主备切换,并且通过kingbase_monitor.sh启动集群时,集群将无法启动;本案例对此种故障做了复现,并测试了解决方法。适用版本:KingbaseESV8R3适用版本:KingbaseESV8R3一、案例......
  • KingbaseES集群运维案例之-- V8R3与V8R6集群wal函数应用
    案例说明:KingbaseESV8R3和V8R6集群在通过函数获取wal日志的相关信息时,两个版本的函数名称不同,本案例做了函数应用的对比和总结。适用版本:KingbaseESV8R3/R6一、KingbaseESV8R3相关函数Tips:在V8R3的版本,事务日志名称为xlog。1、查询数据库支持的函数test=#selectpron......
  • kingbaseES V8R6集群运维案例之---配置priority防止failover切换案例
    案例说明:在一主多备的架构中,需要配置一台备库在主备切换时,不能选举为主库。对于repmgr主备切换主库的选择算法如下:Tips:Repmgr选举候选备节点会以以下顺序选举:LSN---->Priority---->Node_ID。系统会先选举一个LSN比较大者作为候选备节点;如LSN一样,会根据Priority优先级进行比......
  • KingbaseES V8R6集群运维案例之---级联备库upstream节点故障
    KingbaseESV8R6集群运维案例之---级联备库upstream节点故障案例说明:在KingbaseESV8R6集群,构建级联备库后,在其upstream的节点故障后,级联备库如何处理?适用版本:KingbaseESV8R6集群架构:案例一:一、配置集群的recovery参数(allnodes)Tips:关闭备库的aut-recovery机制......
  • 软件项目管理全套文档模板(开发/实施/运维/安全/交付)
     前言:在软件项目管理中,每个阶段都有其特定的目标和活动,确保项目的顺利进行和最终的成功交付。以下是软件项目管理各个阶段的详细资料:软件项目全套文档资料下载:点我获取1.需求阶段目标:收集、分析和定义用户需求和业务目标。主要活动:需求调研:与用户沟通,了解他们的需求和......
  • KingbaseES V8R6集群运维案例之---主备failover切换原因分析
    案例说明:生产环境,KingbaseESV8R6的集群发生failover切换,分析集群切换的原因。适用版本:KingbaseESV8R6集群架构:137.xx.xx.67主原备库137.xx.xx.94原主库137.xx.xx.68vip地址一、日志分析1、分析原备库hamgr.log如下所示,通过原备库hamgr.log日志获取到具体......
  • KingbaseES V8R6数据库运维案例之---用户权限导致的备份恢复故障
    案例说明:由于限制了用户对数据库的访问,导致在执行‘sys_backup.shinit’初始化物理备份时,执行失败。适用版本:KingbaseESV8R6一、问题现象如下所示,执行‘sys_backup.shinit’初始化物理备份:1、执行初始化失败[kingbase@node201bin]$shsys_backup.shinitERROR:Con......
  • 高效运维_AIRIOT智慧电力运维解决方案
    可再生能源的引入带来了能源生产的去中心化和分散化趋势,同时也带来了能源输出的波动性和不确定性。电力运维因此需要更加灵活、智能的解决方案,以适应可再生能源的集成,确保电力系统的稳定运行,传统的电力运维管理方式往往存在如下痛点:数据管理和集成难度大:电力系统涉及大量的数据......
  • IT运维综合管理系统:提升效率、降低成本、保障安全
       随着信息技术的快速发展,企业对IT运维的需求也越来越高。IT运维综合管理系统作为一种集成化的解决方案,可以帮助企业提升运维效率、降低成本、保障信息安全。本文将从以下几个方面介绍IT运维综合管理系统的功能和优势。一、统一管理与监控   IT运维综合管理系统......
  • 【运维】在阿里云上搭建自己的图床,配合PicGo和Typora使用
    本文将详细介绍如何在阿里云上搭建自己的图床,包括购买OSS服务、配置域名解析、创建OSS存储桶和设置图片上传规则等步骤。希望对您有所帮助!一、购买OSS服务首先,我们需要在阿里云官网购买OSS(ObjectStorageService)服务。OSS是阿里云提供的一种海量、安全、低成本、高可靠的云存......