ITPub博客

首页 > 数据库 > 数据库开发技术 > DB2 HADR的heartbeat检测

DB2 HADR的heartbeat检测

原创 数据库开发技术 作者:zchbaby2000 时间:2018-09-21 21:22:37 0 删除 编辑


DB2的Primary和Standby之间是通过发送心跳信号来检测对方是否存在的
与此心跳有关的几个db2pd -db xxx -hadr 监控指标
HEARTBEAT_INTERVAL(seconds) = 30
HEARTBEAT_MISSED = 0
HEARTBEAT_EXPECTED = 58588
HADR_TIMEOUT(seconds) = 120
                
需要查看的是 HEARTBEAT_MISSED/HEARTBEAT_EXPECTED的比值
HADR_TIMEOUT是DB CFG的一个参数,这里设置为 120            
HEARTBEAT_INTERVAL 计算方法: HADR_TIMEOUT/4 = 120/4=30

HEARTBEAT_INTERVAL的最大值是 30秒


推荐的 hadr_timeout 参数设置至少为 60 秒。

HADR_TIMEOUT 推荐值是120 seconds. 计算以后 HEARTBEAT_INTERVAL 是 30 秒.
设置 hadr_timeout参数时,要考虑网络稳定性和机器响应时间。如果网络拥有不规则或长时间传输延迟,则应使用更长的超时设置。

每一次心跳,在Primary端都会产生一个 PEER_WINDOW_END值,并且发送到Standby端。
如果Primary端在 PEER_WINDOW_END之前失败,可以执行一个没有数据损失的故障转移 (TAKEOVER BY FORCE 命令添加了一个 PEER WINDOW ONLY 选项)

hadr_peer_window设置 >= 响应时间 + 安全 边际 + 心跳间隔
    其中:
    响应时间 = 自动化软件探测到失败并调用 HADR 接管的预计时间
    安全边际 = 5 秒,主 - 备用机器时钟同步的安全边际
    心跳间隔 = MIN(hadr_timeout值 /4,hadr_peer_window值 /4,30 秒)

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/725820/viewspace-2214729/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
喜欢各种数据库相关的开发,架构设计,运维和性能优化
  • 博文量
    260
  • 访问量
    122447