基于看门狗本地检测技术的高可用集群系统假死解决方法.pdf

上传人:小** 文档编号:4210116 上传时间:2018-09-07 格式:PDF 页数:8 大小:406.05KB
返回 下载 相关 举报
摘要
申请专利号:

CN201110362929.5

申请日:

2011.11.16

公开号:

CN102521060A

公开日:

2012.06.27

当前法律状态:

公开

有效性:

审中

法律详情:

发明专利申请公开后的驳回IPC(主分类):G06F11/07申请公开日:20120627|||公开

IPC分类号:

G06F11/07

主分类号:

G06F11/07

申请人:

广东新支点技术服务有限公司

发明人:

蔡强; 王幸福; 袁泉

地址:

510663 广东省广州市天河区科技园高唐新建区高普路1021号E栋601室

优先权:

专利代理机构:

广州市越秀区海心联合专利代理事务所(普通合伙) 44295

代理人:

马丽丽

PDF下载: PDF下载
内容摘要

本发明提供的基于看门狗本地检测技术的高可用集群系统假死解决方法,属于计算机集群技术领域。该方法通过预先设定喂狗参数条件,每隔时间T检测喂狗参数是否符合,参数符合则进行喂狗操作,然后等待时间T后进行下次检测;否则不喂狗,等待时间T后进行下次检测;当连续N次检测失败,看门狗超时,系统重启;系统重启过程中,该节点上运行的服务迁移到备份节点,保证系统的高可用性和数据安全性。避免了避免了主机假死恢复后服务在两个节点同时运行,会发生磁阵双挂,导致用户数据丢失的问题,保证了整个系统运行的稳定性。该方法可广泛应用于计算机集群技术领域。

权利要求书

1: 基于看门狗本地检测技术的高可用集群系统假死解决方法, 其特征在于包括以下步 骤: A. 集群系统启动时, 读取配置文件, 得到喂狗时间间隔 T 和最大检测失败次数 N ; 设置 看门狗超时时间为 T×N, 开启看门狗 ; B. 设定喂狗参数条件 ; C. 启动定时器进程, 每隔时间 T 检测喂狗参数是否符合, 参数符合则进行喂狗操作, 然 后等待时间 T 后进行下次检测 ; 否则执行步骤 D ; D. 检测失败, 不喂狗, 等待时间 T 后进行下次检测 ; 当连续 N 次检测失败, 看门狗超时, 系统重启 ; E. 系统重启过程中, 该节点上运行的服务迁移到备份节点, 保证系统的高可用性和数 据安全性。
2: 根据权利要求 1 所述的基于看门狗本地检测技术的高可用集群系统假死解决方法, 其特征在于 : 步骤 B 中, 所述喂狗参数条件为定时器进程正常运行。
3: 根据权利要求 1 所述的基于看门狗本地检测技术的高可用集群系统假死解决方法, 其特征在于 : 步骤 B 中, 所述喂狗参数条件为衡量系统负载, 系统负载小于阀值则符合喂狗 条件。
4: 根据权利要求 3 所述的基于看门狗本地检测技术的高可用集群系统假死解决方法, 其特征在于 : 所述衡量系统负载的方法是, 首先, 获取系统 CPU 的总个数 Num ; 其次, 读取 系统最近 5-20 分钟的总负载值 Load, 计算当前平均负载 LoadAvg = Load/Num ; 然后比较 系统当前平均负载 LoadAvg 与配置文件中规定的系统负载阈值 Thres, 如果 LoadAvg 小于 Thres, 则喂狗参数符合。
5: 根据权利要求 3 所述的基于看门狗本地检测技术的高可用集群系统假死解决方法, 其特征在于 : 所述衡量系统负载的方式为 iowait 查看磁盘 IO 负载、 vmstat 估算内存负载 中的至少一种。
6: 根据权利要求 1 所述的基于看门狗本地检测技术的高可用集群系统假死解决方法, 其特征在于 : 步骤 B 中, 所述喂狗参数条件为, 首先, 读取配置文件, 记录需要由看门狗检测 的服务以及其检测脚本信息 ; 然后, 进行服务本地检测, 如果服务检测成功, 则喂狗参数符 合。
7: 根据权利要求 6 所述的基于看门狗本地检测技术的高可用集群系统假死解决方法, 其特征在于 : 所述服务本地检测方式为通过检测脚本发送 TCP 连接请求、 SQL 查询、 特定于 服务的消息、 带协议标示位的包头或包体中的任一种方式检测服务的可用性。
8: 根据权利要求 7 所述的基于看门狗本地检测技术的高可用集群系统假死解决方法, 其特征在于 : 所述检测脚本是由 python、 perl、 shell、 C 中任一种语言所编写的检测程序。
9: 根据权利要求 1-8 中任一项所述的基于看门狗本地检测技术的高可用集群系统假 死解决方法, 其特征在于 : 所述看门狗是硬件看门狗。

说明书


基于看门狗本地检测技术的高可用集群系统假死解决方法

    技术领域 本 发 明 属 于 计 算 机 集 群 技 术 领 域, 特别是涉及解决高可用性集群 (High-availability clusters) 系统假死的方法。
     背景技术 随着计算机应用领域的不断扩展和通信网络技术的飞速发展, 电信、 金融、 电子政 务等关键领域对服务器持续运行的要求越来越高, 由于服务器宕机等故障所造成的业务停 止将会带来无法估量的损失, 为了应对这样的情况, 目前惯用手段是采用高可用集群系统, 即使某台服务器发生故障, 用户业务和数据也可迅速切换到备份服务器上, 从而保证了整 个系统对外服务的正常, 为企业 24 小时 x365 天的关键业务应用提供了强大的保障。
     但是, 现有高可用集群系统难以克服的一个问题是节点假死问题, 比如当客户端 的请求量达到一定数值, 出现服务器硬件资源难以满足需求, 服务器不能正常对外提供服 务, 半瘫痪的一种状况。这种状况的持续时间不定, 是否可恢复也未知。此时如果备份服务 器接管业务, 主机假死恢复后服务在两个节点同时运行, 会发生磁阵双挂, 导致用户数据丢 失。而如果备份服务器不接管业务则集群不能正常对外提供服务。
     因此, 我们希望能有一种方法能解决假死的问题, 保证高可用集群系统能更安全 稳定的提供服务。
     现有的看门狗技术, 又叫 watchdog timer, 是一个定时器电路, 一般看门狗芯片和 CPU 的一个 I/0 引脚相连, 该 I/O 引脚通过程序控制它定时地往看门狗的这个引脚上送入 高电平 ( 喂狗 ), 一旦 CPU 由于干扰造成程序跑飞后而陷入死循环状态时, 喂狗便不能被执 行, 这个时候, 看门狗电路就会由于得不到 CPU 送来的信号, 便在它和 CPU 复位引脚相连的 引脚上送出一个复位信号, 使 CPU 发生复位, 系统重启。
     发明内容
     针对上述问题, 本发明提供基于看门狗本地检测技术的高可用集群系统假死解决 方法, 该方法基于看门狗技术, 对假死状态进行检测、 确认, 避免业务在两个节点同时运行 情况的发生。
     本发明通过以下技术手段实现 : 基于看门狗本地检测技术的高可用集群系统假死 解决方法, 包括以下步骤 :
     A. 集群系统启动时, 读取配置文件, 得到喂狗时间间隔 T 和最大检测失败次数 N ; 设置看门狗超时时间为 T×N, 开启看门狗 ;
     B. 设定喂狗参数条件 ;
     C. 启动定时器进程, 每隔时间 T 检测喂狗参数是否符合, 参数符合则进行喂狗操 作, 然后等待时间 T 后进行下次检测 ; 否则执行步骤 D ;
     D. 检测失败, 不喂狗, 等待时间 T 后进行下次检测 ; 当连续 N 次检测失败, 看门狗 超时, 系统重启 ;E. 系统重启过程中, 该节点上运行的服务迁移到备份节点, 保证系统的高可用性 和数据安全性。
     本发明还可做以下改进 :
     步骤 B 中, 所述喂狗参数条件为定时器进程正常运行。
     步骤 B 中, 所述喂狗参数条件为衡量系统负载, 系统负载小于阀值则符合喂狗条 件。
     所述衡量系统负载的方法是, 首先, 获取系统 CPU 的总个数 Num ; 其次, 读取系统最 近 5-20 分钟的总负载值 Load, 计算当前平均负载 LoadAvg = Load/Num ; 然后比较系统当前 平均负载 LoadAvg 与配置文件中规定的系统负载阈值 Thres, 如果 LoadAvg 小于 Thres, 则 喂狗参数符合。
     所述衡量系统负载的方式为 iowait 查看磁盘 IO 负载、 vmstat 估算内存负载中的 至少一种。
     步骤 B 中, 所述喂狗参数条件为, 首先, 读取配置文件, 记录需要由看门狗检测的 服务以及其检测脚本信息 ; 然后, 进行服务本地检测, 如果服务检测成功, 则喂狗参数符合。
     所述服务本地检测方式为通过检测脚本发送 TCP 连接请求、 SQL 查询、 特定于服务 的消息、 带协议标示位的包头或包体 ( 包括文本和二进制流协议 ) 中的任一种方式检测服 务的可用性。
     所述检测脚本是由 python、 perl、 shell、 C 中任一种语言所编写的检测程序。
     所述看门狗是硬件看门狗。
     与现有技术相比, 本发明具有的有益效果为 : 1) 本发明提供的基于看门狗本地检测技术的高可用集群系统假死解决方法, 先检 查主机是否处于假死状态, 确定主机假死后使用看门狗技术重启主机, 确保主机上运行的 服务停止, 有效的避免了主机假死恢复后服务在两个节点同时运行, 会发生磁阵双挂, 导致 用户数据丢失的问题, 保证了整个系统运行的稳定性。
     2) 本发明提供的基于看门狗本地检测技术的高可用集群系统假死解决方法, 先检 查主机是否处于假死状态, 确定主机假死后使用看门狗技术重启主机, 主机重启过程中备 份节点接管业务, 解决了主机持续假死, 集群不能正常对外提供服务问题, 保证了服务可持 续性。
     附图说明
     图 1 为高可用多节点集群系统拓扑图 ;
     图 2 为本发明的基于看门狗本地检测技术的高可用集群系统假死解决方法流程 图;
     图中 : 1. 磁盘陈列 ; 2. 活动节点 ; 3. 备份节点。 具体实施方式
     下面结合附图和实施例对本发明进行详细的描述, 以更进一步了解本发明的目 的、 方案及功效, 但不作为对本发明所附权利要求保护的限制。
     实施例 1集群配置 L 个节点 (L ≥ 2), 每个节点都有硬件看门狗模块。按照图 1 进行现场部 署, 根据需要为集群配置 m 个服务。基于看门狗本地检测技术的高可用集群系统假死解决 方法, 包括以下步骤 :
     A. 集群系统启动时, 读取配置文件, 得到喂狗时间间隔 T 和最大检测失败次数 N ; 设置看门狗超时时间为 T×N, 开启看门狗 ;
     B. 设定喂狗参数条件 ;
     C. 启动定时器进程, 每隔时间 T 检测喂狗参数是否符合, 参数符合则进行喂狗操 作, 然后等待时间 T 后进行下次检测 ; 否则执行步骤 D ;
     D. 检测失败, 不喂狗, 等待时间 T 后进行下次检测 ; 当连续 N 次检测失败, 看门狗 超时, 系统重启 ;
     E. 系统重启过程中, 该节点上运行的服务迁移到备份节点, 保证系统的高可用性 和数据安全性。
     启动集群后, 进行系统假死状态测试, 节点 L2 上有运行服务, 采用超量客户端同 时访问 L2 上的服务的方法导致节点 L2 假死。L2 假死时间 T×N 秒后, 看门狗超时, 节点 L2 重启, 原运行在节点 L2 上的服务迁移到备份节点上, 整个集群系统能正常对外提供服务。 实施例 2
     集群配置 L 个节点 (L ≥ 2), 每个节点都有硬件看门狗模块, 。按照图 1 进行现场 部署, 根据需要为集群配置 m 个服务。基于看门狗本地检测技术的高可用集群系统假死解 决方法, 包括以下步骤 :
     A. 集群系统启动时, 读取配置文件, 得到喂狗时间间隔 T 和最大检测失败次数 N ; 设置看门狗超时时间为 T×N, 开启看门狗 ;
     B. 设定喂狗参数条件, 为定时器进程正常运行 ;
     C. 启动定时器进程, 每隔时间 T 检测喂狗参数是否符合, 参数符合则进行喂狗操 作, 然后等待时间 T 后进行下次检测 ; 否则执行步骤 D ;
     D. 检测失败, 不喂狗, 等待时间 T 后进行下次检测 ; 当连续 N 次检测失败, 看门狗 超时, 系统重启 ;
     E. 系统重启过程中, 该节点上运行的服务迁移到备份节点, 保证系统的高可用性 和数据安全性。
     启动集群后, 进行系统假死状态测试, 节点 L2 上有运行服务, 在 L2 上运行导致系 统假死的测试程序导致节点 L2 假死。L2 假死时间 T×N 秒后, 看门狗超时, 节点 L2 重启, 原 运行在节点 L2 上的服务迁移到备份节点上, 整个集群系统能正常对外提供服务。
     实施例 3
     集群配置 L 个节点 (L ≥ 2), 每个节点都有硬件看门狗模块, 。按照图 1 进行现场 部署, 根据需要为集群配置 m 个服务。基于看门狗本地检测技术的高可用集群系统假死解 决方法, 包括以下步骤 :
     A. 集群系统启动时, 读取配置文件, 得到喂狗时间间隔 T 和最大检测失败次数 N ; 设置看门狗超时时间为 T×N, 开启看门狗 ;
     B. 设定喂狗参数条件, 首先, 获取系统 CPU 的总个数 Num ; 其次, 读取系统最近 15 分钟的总负载值 Load, 计算当前平均负载 LoadAvg = Load/Num ; 然后比较系统当前平均负
     载 LoadAvg 与配置文件中规定的系统负载阈值 Thres, 如果 LoadAvg 小于 Thres, 则喂狗参 数符合 ;
     C. 启动定时器进程, 每隔时间 T 检测喂狗参数是否符合, 参数符合则进行喂狗操 作, 然后等待时间 T 后进行下次检测 ; 否则执行步骤 D ;
     D. 检测失败, 不喂狗, 等待时间 T 后进行下次检测 ; 当连续 N 次检测失败, 看门狗 超时, 系统重启 ;
     E. 系统重启过程中, 该节点上运行的服务迁移到备份节点, 保证系统的高可用性 和数据安全性。
     启动集群后, 进行系统状态测试, 节点 L2 上有运行服务, 采用超量客户端同时访 问 L2 上的服务的方法导致平均负载 LoadAvg 大于系统负载阈值 Thres, 该状态持续 T×N 秒 后, 看门狗超时, 节点 L2 重启, 原运行在节点 L2 上的服务迁移到备份节点上, 整个集群系统 能正常对外提供服务。
     实施例 4
     集群配置 L 个节点 (L ≥ 2), 每个节点都有硬件看门狗模块, 。按照图 1 进行现场 部署, 根据需要为集群配置 m 个服务。基于看门狗本地检测技术的高可用集群系统假死解 决方法, 包括以下步骤 :
     A. 集群系统启动时, 读取配置文件, 得到喂狗时间间隔 T 和最大检测失败次数 N ; 设置看门狗超时时间为 T×N, 开启看门狗 ;
     B. 设定喂狗参数条件为, 首先, 读取配置文件, 记录需要由看门狗检测的服务以及 其检测脚本信息 ; 然后, 通过检测脚本发送 TCP 连接请求、 SQL 查询方式进行服务本地检测, 如果服务检测成功, 则喂狗参数符合 ;
     C. 启动定时器进程, 每隔时间 T 检测喂狗参数是否符合, 参数符合则进行喂狗操 作, 然后等待时间 T 后进行下次检测 ; 否则执行步骤 D ;
     D. 检测失败, 不喂狗, 等待时间 T 后进行下次检测 ; 当连续 N 次检测失败, 看门狗 超时, 系统重启 ;
     E. 系统重启过程中, 该节点上运行的服务迁移到备份节点, 保证系统的高可用性 和数据安全性。
     启动集群后, 进行系统状态测试, 节点 L2 上有运行服务, 在 L2 上运行测试程序导 致节点 L2 假死, 该状态持续 T×N 秒后, 服务连续 N 次本地检测失败, 该状态持续 T×N 秒后, 看门狗超时, 节点 L2 重启, 原运行在节点 L2 上的服务迁移到备份节点上, 整个集群系统能 正常对外提供服务。
     上述的实施例仅为本发明的优选实施例, 不能以此来限定本发明的权利范围, 因 此, 依本发明申请专利范围所作的等同变化, 仍属本发明所涵盖的范围。

基于看门狗本地检测技术的高可用集群系统假死解决方法.pdf_第1页
第1页 / 共8页
基于看门狗本地检测技术的高可用集群系统假死解决方法.pdf_第2页
第2页 / 共8页
基于看门狗本地检测技术的高可用集群系统假死解决方法.pdf_第3页
第3页 / 共8页
点击查看更多>>
资源描述

《基于看门狗本地检测技术的高可用集群系统假死解决方法.pdf》由会员分享,可在线阅读,更多相关《基于看门狗本地检测技术的高可用集群系统假死解决方法.pdf(8页珍藏版)》请在专利查询网上搜索。

1、(10)申请公布号 CN 102521060 A (43)申请公布日 2012.06.27 C N 1 0 2 5 2 1 0 6 0 A *CN102521060A* (21)申请号 201110362929.5 (22)申请日 2011.11.16 G06F 11/07(2006.01) (71)申请人广东新支点技术服务有限公司 地址 510663 广东省广州市天河区科技园高 唐新建区高普路1021号E栋601室 (72)发明人蔡强 王幸福 袁泉 (74)专利代理机构广州市越秀区海心联合专 利代理事务所(普通合伙) 44295 代理人马丽丽 (54) 发明名称 基于看门狗本地检测技术的高可。

2、用集群系统 假死解决方法 (57) 摘要 本发明提供的基于看门狗本地检测技术的高 可用集群系统假死解决方法,属于计算机集群技 术领域。该方法通过预先设定喂狗参数条件,每隔 时间T检测喂狗参数是否符合,参数符合则进行 喂狗操作,然后等待时间T后进行下次检测;否则 不喂狗,等待时间T后进行下次检测;当连续N次 检测失败,看门狗超时,系统重启;系统重启过程 中,该节点上运行的服务迁移到备份节点,保证系 统的高可用性和数据安全性。避免了避免了主机 假死恢复后服务在两个节点同时运行,会发生磁 阵双挂,导致用户数据丢失的问题,保证了整个系 统运行的稳定性。该方法可广泛应用于计算机集 群技术领域。 (51)。

3、Int.Cl. 权利要求书1页 说明书4页 附图2页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书 1 页 说明书 4 页 附图 2 页 1/1页 2 1.基于看门狗本地检测技术的高可用集群系统假死解决方法,其特征在于包括以下步 骤: A.集群系统启动时,读取配置文件,得到喂狗时间间隔T和最大检测失败次数N;设置 看门狗超时时间为TN,开启看门狗; B.设定喂狗参数条件; C.启动定时器进程,每隔时间T检测喂狗参数是否符合,参数符合则进行喂狗操作,然 后等待时间T后进行下次检测;否则执行步骤D; D.检测失败,不喂狗,等待时间T后进行下次检测;当连续N次检测失败,看门。

4、狗超时, 系统重启; E.系统重启过程中,该节点上运行的服务迁移到备份节点,保证系统的高可用性和数 据安全性。 2.根据权利要求1所述的基于看门狗本地检测技术的高可用集群系统假死解决方法, 其特征在于:步骤B中,所述喂狗参数条件为定时器进程正常运行。 3.根据权利要求1所述的基于看门狗本地检测技术的高可用集群系统假死解决方法, 其特征在于:步骤B中,所述喂狗参数条件为衡量系统负载,系统负载小于阀值则符合喂狗 条件。 4.根据权利要求3所述的基于看门狗本地检测技术的高可用集群系统假死解决方法, 其特征在于:所述衡量系统负载的方法是,首先,获取系统CPU的总个数Num;其次,读取 系统最近5-20。

5、分钟的总负载值Load,计算当前平均负载LoadAvgLoad/Num;然后比较 系统当前平均负载LoadAvg与配置文件中规定的系统负载阈值Thres,如果LoadAvg小于 Thres,则喂狗参数符合。 5.根据权利要求3所述的基于看门狗本地检测技术的高可用集群系统假死解决方法, 其特征在于:所述衡量系统负载的方式为iowait查看磁盘IO负载、vmstat估算内存负载 中的至少一种。 6.根据权利要求1所述的基于看门狗本地检测技术的高可用集群系统假死解决方法, 其特征在于:步骤B中,所述喂狗参数条件为,首先,读取配置文件,记录需要由看门狗检测 的服务以及其检测脚本信息;然后,进行服务本地。

6、检测,如果服务检测成功,则喂狗参数符 合。 7.根据权利要求6所述的基于看门狗本地检测技术的高可用集群系统假死解决方法, 其特征在于:所述服务本地检测方式为通过检测脚本发送TCP连接请求、SQL查询、特定于 服务的消息、带协议标示位的包头或包体中的任一种方式检测服务的可用性。 8.根据权利要求7所述的基于看门狗本地检测技术的高可用集群系统假死解决方法, 其特征在于:所述检测脚本是由python、perl、shell、C中任一种语言所编写的检测程序。 9.根据权利要求1-8中任一项所述的基于看门狗本地检测技术的高可用集群系统假 死解决方法,其特征在于:所述看门狗是硬件看门狗。 权 利 要 求 书。

7、CN 102521060 A 1/4页 3 基于看门狗本地检测技术的高可用集群系统假死解决方法 技术领域 0001 本发明属于计算机集群技术领域,特别是涉及解决高可用性集群 (High-availability clusters)系统假死的方法。 背景技术 0002 随着计算机应用领域的不断扩展和通信网络技术的飞速发展,电信、金融、电子政 务等关键领域对服务器持续运行的要求越来越高,由于服务器宕机等故障所造成的业务停 止将会带来无法估量的损失,为了应对这样的情况,目前惯用手段是采用高可用集群系统, 即使某台服务器发生故障,用户业务和数据也可迅速切换到备份服务器上,从而保证了整 个系统对外服务的。

8、正常,为企业24小时x365天的关键业务应用提供了强大的保障。 0003 但是,现有高可用集群系统难以克服的一个问题是节点假死问题,比如当客户端 的请求量达到一定数值,出现服务器硬件资源难以满足需求,服务器不能正常对外提供服 务,半瘫痪的一种状况。这种状况的持续时间不定,是否可恢复也未知。此时如果备份服务 器接管业务,主机假死恢复后服务在两个节点同时运行,会发生磁阵双挂,导致用户数据丢 失。而如果备份服务器不接管业务则集群不能正常对外提供服务。 0004 因此,我们希望能有一种方法能解决假死的问题,保证高可用集群系统能更安全 稳定的提供服务。 0005 现有的看门狗技术,又叫watchdog 。

9、timer,是一个定时器电路,一般看门狗芯片和 CPU的一个I/0引脚相连,该I/O引脚通过程序控制它定时地往看门狗的这个引脚上送入 高电平(喂狗),一旦CPU由于干扰造成程序跑飞后而陷入死循环状态时,喂狗便不能被执 行,这个时候,看门狗电路就会由于得不到CPU送来的信号,便在它和CPU复位引脚相连的 引脚上送出一个复位信号,使CPU发生复位,系统重启。 发明内容 0006 针对上述问题,本发明提供基于看门狗本地检测技术的高可用集群系统假死解决 方法,该方法基于看门狗技术,对假死状态进行检测、确认,避免业务在两个节点同时运行 情况的发生。 0007 本发明通过以下技术手段实现:基于看门狗本地检。

10、测技术的高可用集群系统假死 解决方法,包括以下步骤: 0008 A.集群系统启动时,读取配置文件,得到喂狗时间间隔T和最大检测失败次数N; 设置看门狗超时时间为TN,开启看门狗; 0009 B.设定喂狗参数条件; 0010 C.启动定时器进程,每隔时间T检测喂狗参数是否符合,参数符合则进行喂狗操 作,然后等待时间T后进行下次检测;否则执行步骤D; 0011 D.检测失败,不喂狗,等待时间T后进行下次检测;当连续N次检测失败,看门狗 超时,系统重启; 说 明 书CN 102521060 A 2/4页 4 0012 E.系统重启过程中,该节点上运行的服务迁移到备份节点,保证系统的高可用性 和数据安。

11、全性。 0013 本发明还可做以下改进: 0014 步骤B中,所述喂狗参数条件为定时器进程正常运行。 0015 步骤B中,所述喂狗参数条件为衡量系统负载,系统负载小于阀值则符合喂狗条 件。 0016 所述衡量系统负载的方法是,首先,获取系统CPU的总个数Num;其次,读取系统最 近5-20分钟的总负载值Load,计算当前平均负载LoadAvgLoad/Num;然后比较系统当前 平均负载LoadAvg与配置文件中规定的系统负载阈值Thres,如果LoadAvg小于Thres,则 喂狗参数符合。 0017 所述衡量系统负载的方式为iowait查看磁盘IO负载、vmstat估算内存负载中的 至少一种。

12、。 0018 步骤B中,所述喂狗参数条件为,首先,读取配置文件,记录需要由看门狗检测的 服务以及其检测脚本信息;然后,进行服务本地检测,如果服务检测成功,则喂狗参数符合。 0019 所述服务本地检测方式为通过检测脚本发送TCP连接请求、SQL查询、特定于服务 的消息、带协议标示位的包头或包体(包括文本和二进制流协议)中的任一种方式检测服 务的可用性。 0020 所述检测脚本是由python、perl、shell、C中任一种语言所编写的检测程序。 0021 所述看门狗是硬件看门狗。 0022 与现有技术相比,本发明具有的有益效果为: 0023 1)本发明提供的基于看门狗本地检测技术的高可用集群系。

13、统假死解决方法,先检 查主机是否处于假死状态,确定主机假死后使用看门狗技术重启主机,确保主机上运行的 服务停止,有效的避免了主机假死恢复后服务在两个节点同时运行,会发生磁阵双挂,导致 用户数据丢失的问题,保证了整个系统运行的稳定性。 0024 2)本发明提供的基于看门狗本地检测技术的高可用集群系统假死解决方法,先检 查主机是否处于假死状态,确定主机假死后使用看门狗技术重启主机,主机重启过程中备 份节点接管业务,解决了主机持续假死,集群不能正常对外提供服务问题,保证了服务可持 续性。 附图说明 0025 图1为高可用多节点集群系统拓扑图; 0026 图2为本发明的基于看门狗本地检测技术的高可用集。

14、群系统假死解决方法流程 图; 0027 图中:1.磁盘陈列;2.活动节点;3.备份节点。 具体实施方式 0028 下面结合附图和实施例对本发明进行详细的描述,以更进一步了解本发明的目 的、方案及功效,但不作为对本发明所附权利要求保护的限制。 0029 实施例1 说 明 书CN 102521060 A 3/4页 5 0030 集群配置L个节点(L2),每个节点都有硬件看门狗模块。按照图1进行现场部 署,根据需要为集群配置m个服务。基于看门狗本地检测技术的高可用集群系统假死解决 方法,包括以下步骤: 0031 A.集群系统启动时,读取配置文件,得到喂狗时间间隔T和最大检测失败次数N; 设置看门狗超。

15、时时间为TN,开启看门狗; 0032 B.设定喂狗参数条件; 0033 C.启动定时器进程,每隔时间T检测喂狗参数是否符合,参数符合则进行喂狗操 作,然后等待时间T后进行下次检测;否则执行步骤D; 0034 D.检测失败,不喂狗,等待时间T后进行下次检测;当连续N次检测失败,看门狗 超时,系统重启; 0035 E.系统重启过程中,该节点上运行的服务迁移到备份节点,保证系统的高可用性 和数据安全性。 0036 启动集群后,进行系统假死状态测试,节点L2上有运行服务,采用超量客户端同 时访问L2上的服务的方法导致节点L2假死。L2假死时间TN秒后,看门狗超时,节点L2 重启,原运行在节点L2上的服。

16、务迁移到备份节点上,整个集群系统能正常对外提供服务。 0037 实施例2 0038 集群配置L个节点(L2),每个节点都有硬件看门狗模块,。按照图1进行现场 部署,根据需要为集群配置m个服务。基于看门狗本地检测技术的高可用集群系统假死解 决方法,包括以下步骤: 0039 A.集群系统启动时,读取配置文件,得到喂狗时间间隔T和最大检测失败次数N; 设置看门狗超时时间为TN,开启看门狗; 0040 B.设定喂狗参数条件,为定时器进程正常运行; 0041 C.启动定时器进程,每隔时间T检测喂狗参数是否符合,参数符合则进行喂狗操 作,然后等待时间T后进行下次检测;否则执行步骤D; 0042 D.检测失。

17、败,不喂狗,等待时间T后进行下次检测;当连续N次检测失败,看门狗 超时,系统重启; 0043 E.系统重启过程中,该节点上运行的服务迁移到备份节点,保证系统的高可用性 和数据安全性。 0044 启动集群后,进行系统假死状态测试,节点L2上有运行服务,在L2上运行导致系 统假死的测试程序导致节点L2假死。L2假死时间TN秒后,看门狗超时,节点L2重启,原 运行在节点L2上的服务迁移到备份节点上,整个集群系统能正常对外提供服务。 0045 实施例3 0046 集群配置L个节点(L2),每个节点都有硬件看门狗模块,。按照图1进行现场 部署,根据需要为集群配置m个服务。基于看门狗本地检测技术的高可用集。

18、群系统假死解 决方法,包括以下步骤: 0047 A.集群系统启动时,读取配置文件,得到喂狗时间间隔T和最大检测失败次数N; 设置看门狗超时时间为TN,开启看门狗; 0048 B.设定喂狗参数条件,首先,获取系统CPU的总个数Num;其次,读取系统最近15 分钟的总负载值Load,计算当前平均负载LoadAvgLoad/Num;然后比较系统当前平均负 说 明 书CN 102521060 A 4/4页 6 载LoadAvg与配置文件中规定的系统负载阈值Thres,如果LoadAvg小于Thres,则喂狗参 数符合; 0049 C.启动定时器进程,每隔时间T检测喂狗参数是否符合,参数符合则进行喂狗操。

19、 作,然后等待时间T后进行下次检测;否则执行步骤D; 0050 D.检测失败,不喂狗,等待时间T后进行下次检测;当连续N次检测失败,看门狗 超时,系统重启; 0051 E.系统重启过程中,该节点上运行的服务迁移到备份节点,保证系统的高可用性 和数据安全性。 0052 启动集群后,进行系统状态测试,节点L2上有运行服务,采用超量客户端同时访 问L2上的服务的方法导致平均负载LoadAvg大于系统负载阈值Thres,该状态持续TN秒 后,看门狗超时,节点L2重启,原运行在节点L2上的服务迁移到备份节点上,整个集群系统 能正常对外提供服务。 0053 实施例4 0054 集群配置L个节点(L2),每。

20、个节点都有硬件看门狗模块,。按照图1进行现场 部署,根据需要为集群配置m个服务。基于看门狗本地检测技术的高可用集群系统假死解 决方法,包括以下步骤: 0055 A.集群系统启动时,读取配置文件,得到喂狗时间间隔T和最大检测失败次数N; 设置看门狗超时时间为TN,开启看门狗; 0056 B.设定喂狗参数条件为,首先,读取配置文件,记录需要由看门狗检测的服务以及 其检测脚本信息;然后,通过检测脚本发送TCP连接请求、SQL查询方式进行服务本地检测, 如果服务检测成功,则喂狗参数符合; 0057 C.启动定时器进程,每隔时间T检测喂狗参数是否符合,参数符合则进行喂狗操 作,然后等待时间T后进行下次检。

21、测;否则执行步骤D; 0058 D.检测失败,不喂狗,等待时间T后进行下次检测;当连续N次检测失败,看门狗 超时,系统重启; 0059 E.系统重启过程中,该节点上运行的服务迁移到备份节点,保证系统的高可用性 和数据安全性。 0060 启动集群后,进行系统状态测试,节点L2上有运行服务,在L2上运行测试程序导 致节点L2假死,该状态持续TN秒后,服务连续N次本地检测失败,该状态持续TN秒后, 看门狗超时,节点L2重启,原运行在节点L2上的服务迁移到备份节点上,整个集群系统能 正常对外提供服务。 0061 上述的实施例仅为本发明的优选实施例,不能以此来限定本发明的权利范围,因 此,依本发明申请专利范围所作的等同变化,仍属本发明所涵盖的范围。 说 明 书CN 102521060 A 1/2页 7 图1 说 明 书 附 图CN 102521060 A 2/2页 8 图2 说 明 书 附 图CN 102521060 A 。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1