一种主动式服务自愈运维系统及方法技术方案

技术编号:34334327 阅读:17 留言:0更新日期:2022-07-31 02:41
本发明专利技术公开了一种主动式服务自愈运维系统,包括API健康接口、通信组件、检测组件、自愈模块、告警模块;API健康接口通过通信组件控制检测模块,采取可配置的定时状态检测机制,由检测模块根据设定周期对服务器状态和业务程序的状态进行检测;自愈模块根据API提供的数据进行健康状态判断;自愈模块根据检测结果判断程序存活状态,当判断故障发生时,通过检测组件进行业务程序的状态确认,排除误判;当自愈模块判断业务程序故障时,对服务器进行重启操作,并通过告警模块通知到用户;在服务器重启过程中,若存在服务器高负荷导致程序重启失败,采取延迟启动的方式进行再次重启,若超过设定重启次数,通过告警模块通知到用户。通过告警模块通知到用户。通过告警模块通知到用户。

【技术实现步骤摘要】
一种主动式服务自愈运维系统及方法


[0001]本专利技术公开了一种主动式服务自愈运维系统及方法,尤其适用于采用Eureka服务注册的相关的程序的业务恢复与业务治理。

技术介绍

[0002]运维服务主要负责维护并确保整个服务的高可用性,同时不断优化系统架构提升服务的整体服务运行安全等级和有效可用时长。
[0003]随着信息时代的持续发展,IT运维已经成为IT服务内涵中重要的组成部分。面对越来越复杂的业务,面对越来越多样化的用户需求,不断扩展的IT应用需要越来越合理的模式来保障IT服务能灵活便捷、安全稳定地持续保障,这种模式中的保障因素就是IT运维。从初期的几台服务器发展到庞大的数据中心,单靠人工已经无法满足在技术、业务、管理等方面的要求,那么标准化、自动化、架构优化、过程优化等降低IT服务成本的因素越来越被人们所重视。其中,自动化最开始作为代替人工操作为出发点的诉求被广泛研究和应用。
[0004]传统的人工进行程序故障修复,往往需要以下几个步骤流程:
[0005](1)通过监控系统或者通过用户反馈情况发现系统故障;
[0006](2)对故障系统进行逐一排查,寻找故障点;
[0007](3)确认故障后,明确故障影响范围进行针对性的故障修复;
[0008](4)对大规模的宕机或服务器重启,需要浪费大量的人工去逐一确认启动状态;
[0009](5)验证系统修复状况。确保系统已经处于进行正常工作状态。
[0010]目前许多企业的IT运维虽然已经实现从人工运维到计算机管理,但这只是处在“半自动化”的运维状态。因为这种IT运维仍然是等到IT故障出现后再由运维人员采取相应的措施,因此,传统被动的、孤立的、半自动式的IT运维管理模式经常是让IT部门疲惫不堪。现在的IT运维自动化是指基于流程化的框架,将事件与IT流程相关联,一旦被监控系统发生性能超标或宕机,会触发相关事件以及事先定义好的流程,可自动启动故障响应和恢复机制。

技术实现思路

[0011]针对上述技术问题,本专利技术提出一种以机器代替人工判断进行一般性主动维护工作的方法,即一种主动式服务自愈运维系统及方法。
[0012]为达到上述目的,本专利技术采用的技术方案为:一种主动式服务自愈运维系统,包括自愈模块、检测模块、通信组件、检测接口、告警模块;具体实现逻辑如下:
[0013](1)自愈运维系统采取可配置的定时状态检测机制,根据设定的维护周期对服务器状态和业务程序的状态进行检测。业务程序通过spring

boot

stater

actuator健康监控开放检测接口,通信组件控制检测模块对业务程序进行健康监控,通信组件采取可配置的定时状态检测机制;服务器状态检测为通信组件控制检测模块根据设定周期对服务器的内存、cpu使用情况、服务器的存活情况进行检测;业务程序的存活状态检测通过通信组件
控制检测模块根据设定周期对检测接口进行监听完成。
[0014](2)当检测模块判断服务器状态或业务程序的状态存在故障,将异常信息传递给自愈模块;自愈模块对异常信息进行若干次校验,若判断异常信息为误报或网络闪断,则排除异常信息,由检测模块记录服务运行状态。故障发生时多次确认机制,用于保证排除因网络和其他因素导致的干扰,造成对业务程序运行状态的误判。
[0015](3)当自愈模块判断业务程序故障时,对业务程序进行重启操作,并通过告警模块通知到维护人。
[0016](4)在业务程序重启过程中,若服务器高负荷导致业务程序重启失败,自愈模块采取延迟启动的方式并进行多次尝试,当业务程序重启超过最大启动次数,告警模块通知维护人进行人工干预。
[0017]进一步的,告警模块存储维护人信息,并设定基于时间的告警模式。夜间预警会采取电话唤醒的模式,避免维护人因酣睡错过警情。
[0018]进一步的,自愈模块设定的维护周期内,故障告警以及自我修复机制停滞工作,避免在维护期间内造成误报。
[0019]进一步的,通信组件记录检测接口检测的业务程序故障的起始时间,检测模块记录服务器故障的起始时间,方便进行相关日志的分析与调取。帮助IT维护人员进一步的进行相关持续改进工作。
[0020]还包括数据库,业务程序的检测接口的地址、服务器IP地址和业务程序名称均存储在数据库中,由数据库统一进行管理。检测模块将检测结果进行记录统一录入数据库,方便后期进行结果分析。
[0021]进一步的,业务程序的存活状态检测还包括自愈模块进行对服务器硬件的运行状态进行信息采集和存活状态的检测。
[0022]进一步的,自愈运维系统采用python语言开发,服务器上装有python解释器即可,自愈运维系统可基于crontab等系统或第三方定时任务启动工具管理,当自愈运维系统运行时,仅对单次运行产生系统开销,运行结束后即释放服务器占用资源,每次运行都是一次新的运行周期。作为一款维护类产品,程序本身的稳定性和可靠性要求十分苛刻,本程序以脚本方式运行,脚本方式运行程序仅会对于单次任务产生系统开销,任务结束后即释放服务器占用资源,每次启动运行都是一次新的运行周期,以脚本运行的方式进行不断的任务重制与事物刷新,更大程度的提高了系统的可用性,更不会造成内存积压或溢出,大大的减少本自愈系统的维护成本并提高了可靠性。
[0023]本专利技术还公开一种主动式服务自愈运维方法,包括以下步骤:
[0024]步骤1:自愈运维系统启动后会调用数据库读取维护清单,并判断该维护清单内的服务器是否在服务器维护周期内,若在服务器维护周期内则将该服务器踢出检测清单。其余服务器进入服务检测流程。服务器的维护周期特指服务器升级所导致的服务器停止提供相关服务内容的时间空窗期。
[0025]步骤2:主程序调用通信模块进行服务连通性以及服务器硬件性能探测,并把探测结果记录到数据库中,当所有机器连通性检测完毕后,开始调用业务检测模块根据设定的维护周期对服务器状态和业务程序的状态进行检测(该过程中,程序都是并发同步完成的):业务程序通过spring

boot

stater

actuator健康监控开放检测接口;服务器状态检
测包括:通信组件控制检测模块根据设定周期对服务器的内存、cpu使用情况、服务器的存活情况进行检测;
[0026]业务程序的存活状态检测包括:通信组件控制检测模块根据设定周期对检测接口进行监听完成。
[0027]步骤3:业务检测模块对业务的检测接口进行多次探测,并记录每一次探测结果,如果每次结果均为正常则仅将结果记录进数据库。如果有异常,则启动自愈模块和告警模块,自愈模块对业务程序进行重启操作,并通过告警模块通知到维护人;在业务程序重启过程中,若服务器高负荷导致业务程序重启失败,自愈模块采取延迟启动的方式并进行多次尝试;
[0028]步骤4:对进行重启的业务程序进行时间记录,记录最后一次的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种主动式服务自愈运维系统,其特征在于:包括自愈模块、检测模块、通信组件、检测接口、告警模块;自愈运维系统采取可配置的定时状态检测机制,根据设定的维护周期对服务器状态和业务程序的状态进行检测:业务程序通过spring

boot

stater

actuator健康监控开放检测接口,通信组件控制检测模块对业务程序进行健康监控,通信组件采取可配置的定时状态检测机制;当检测模块判断服务器状态和/或业务程序的状态存在故障,将异常信息传递给自愈模块;自愈模块对异常信息进行若干次校验,若判断异常信息为误报或网络闪断,则排除异常信息,由检测模块记录服务运行状态;当自愈模块判断业务程序故障时,对业务程序进行重启操作,并通过告警模块通知到维护人;在业务程序重启过程中,若服务器高负荷导致业务程序重启失败,自愈模块采取延迟启动的方式并进行多次尝试,当业务程序重启超过最大启动次数,告警模块通知维护人进行人工干预。2.根据权利要求1所述的主动式服务自愈运维系统,其特征在于:服务器状态检测包括:通信组件控制检测模块根据设定周期对服务器的内存、cpu使用情况、服务器的存活情况进行检测;业务程序的存活状态检测包括:通信组件控制检测模块根据设定周期对检测接口进行监听完成。3.根据权利要求2所述的主动式服务自愈运维系统,其特征在于:告警模块存储维护人信息,并设定基于时间的告警模式。4.根据权利要求2所述的主动式服务自愈运维系统,其特征在于:自愈模块设定的维护周期内,故障告警以及自我修复机制停滞工作,避免在维护期间内造成误报。5.根据权利要求1至4中任意一项所述的主动式服务自愈运维系统,其特征在于:还包括数据库,业务程序的检测接口的地址、服务器IP地址和业务程序名称均存储在数据库中,由数据库统一进行管理。6.根据权利要求5所述的主动式服务自愈运维系统,其特征在于:通信组件记录检测接口检测的业务程序故障的起始时间,检测模块记录服务器故障的起始时间。7.根据权利要求2所述的主动式服务自愈运维系统,其特征在于:业务程序的存活状态检测还包括自愈模块进行对服务器硬件的运行状态进行信息采集和存活状态的检测。8.根据权利要求2所述的主动式服务自愈运维系...

【专利技术属性】
技术研发人员:陈康
申请(专利权)人:南京壹证通信息科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1