GaussDB(DWS)集群管理系列:CM异常检测插件介绍之HANG检测插件

举报
azu 发表于 2022/03/30 11:37:30 2022/03/30
【摘要】 HANG检测是集群管理组件CM对实例进行phony dead(假死)检查的一种检测手段。在检测到实例出现异常时,进行相应的仲裁,以期恢复集群的正常功能。本文对HANG检测插件的配置和机制做了介绍。

一、HANG检测插件的用途

HANG检测是集群管理组件CM对实例进行phony dead(假死)检查的一种检测手段。在检测到实例出现异常时,进行相应的仲裁,以期恢复集群的正常功能。


二、HANG检测插件的配置

集群配置文件中,HANG检测插件的默认配置参数如下:

abnormal_check_phony_dead = '{ "_name" : "libac_phony_dead.so", "check_interval" : "180", "phony_dead_effective_time" : "5", "cmserver_phony_dead_restart_interval" : "21600" }'

关于HANG检测插件的所有可配参数的说明:

参数名称 参数说明 取值范围 默认取值
_name 插件名称 libac_phony_dead.so libac_phony_dead.so
_enable HANG检测插件的单独开关。该参数默认不出现在配置文件中,参数省略时默认开启。 on/off on
check_interval cm_agent检测实例异常状态的时间间隔。 非负整型,单位为秒。 180
phony_dead_effective_time cm_server连续收到同一实例上报hang的次数超过该参数,将仲裁实例重启;如果该实例为DN或GTM主机,将仲裁主备倒换。 非负整型。 5
cmserver_phony_dead_restart_interval cm_server通过hang检测机制仲裁实例重启后,再次触发hang检测仲裁的时间间隔。 非负整型,单位为秒。 21600(即六个小时)
thread_dead_effective_time cm_agent线程状态检测的时间间隔。该参数默认不出现在配置文件中。 非负整型,单位为秒。 600


三、HANG检测插件的作用机制

HANG检测插件作为独立插件依托于异常检测框架,定期对实例进行检测。以CN实例的检测为例,完整的检测流程如下:

1648608135719.png

HANG检测的检测方式包括三种:

(1) 与实例建立短链接;

(2) 执行SQL;

(3) 进行磁盘检查。

以上任一检测失败即认为实例发生phony dead,当phony dead达到一定次数后,cm会进行相应的仲裁处理,对实例进行重启。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。