技术新讯 > 计算推算,计数设备的制造及其应用技术 > 服务宕机治理系统和方法与流程  >  正文

服务宕机治理系统和方法与流程

  • 国知局
  • 2024-07-31 23:16:41

本发明涉及网络通信,尤其是涉及一种服务宕机治理系统和方法。

背景技术:

1、随着云计算架构的日趋复杂和业务负载的持续增长,现代数据中心对服务操作的安全性和效率提出了更高的要求。

2、传统ssh(英文全拼为secure shell,中文为安全外壳)作为远程管理和服务治理的主要工具,在面对大规模、分布式环境下的运维挑战时,其安全性及效能已显现出局限性。

3、鉴于此,亟需一种高效、安全的服务宕机治理方案。

技术实现思路

1、针对以上至少一个技术问题,本发明实施例提供一种服务宕机治理系统和方法。

2、根据第一方面,本发明实施例提供的服务宕机治理系统包括:

3、服务状态监控模块,用于实时监测多个服务节点各自的服务运行数据;

4、服务监控系统,与调度中心和所述服务状态监控模块均通信连接,用于周期性地从所述服务状态监控模块中获取所述多个服务节点各自的服务运行数据,根据每一个服务节点的服务运行数据分析该服务节点上的服务是否出现宕机,并将每一个服务节点的服务运行数据和分析结果传递至所述调度中心;

5、所述调度中心,与每一个服务节点上部署的服务启停客户端通信连接,用于根据各个服务节点各自对应的所述分析结果,生成调度任务,并将所述调度任务发送至出现服务宕机的服务节点上的服务启停客户端;

6、所述服务启停客户端,用于在接收到所述调度中心发送来的调度任务时,确定需要重启的服务,对需要重启的服务执行服务重启策略,并将执行结果返回给所述调度中心;

7、所述调度中心还用于:根据各个服务启停客户端返回的所述执行结果,形成待通知内容,将所述待通知内容存储至数据库,通过消息通知服务对所述数据库中的待通知内容进行遍历,并将遍历到的待通知内容推送至相关人员。

8、在一个实施例中,所述服务状态监控模块部署nginx负载均衡平台上,所述nginx负载均衡平台独立于各个服务节点;所述服务状态监控模块具体用于:通过心跳检测机制来检测每一个服务节点上的各个服务的运行状态,并将各个服务的运行状态作为该服务节点的服务运行数据。

9、在一个实施例中,所述服务监控系统具体用于:从所述数据库中查询监控模块列表,所述监控模块列表中包括至少一个待监控的服务状态监控模块;根据每一个待监控的服务状态监控模块的ip地址,周期性地从该待监控的服务状态监控模块中获取其所监测的各个服务节点的服务运行数据;根据每一个待监控的服务状态监控模块所监测的每一个服务节点的服务运行数据和预先设置的宕机判断阈值,分析该服务节点上是否存在宕机的服务,得到分析结果;将所述服务运行数据和所述分析结果通过回调方法函数传递至所述调度中心。

10、在一个实施例中,所述调度中心具体用于:定时调度所述服务监控系统,以使所述服务监控系统周期性的从所述监控模块列表中每一个待监控的服务状态监控模块中获取其所监测的各个服务节点的服务运行数据。

11、在一个实施例中,所述调度中心具体用于:将接收到的结果转化为统一的结果对象;若所述结果对象的类型为所述分析结果,则针对每一个出现服务宕机的服务节点生成对应的所述调度任务,每一个出现服务宕机的服务节点对应的所述调度任务中包括该服务节点上出现宕机的服务,并将每一个出现服务宕机的服务节点对应的所述调度任务发送至该出现服务宕机的服务节点上的所述服务启停客户端。

12、在一个实施例中,所述服务启停客户端具体用于:从配置文件中获取能够执行重启命令的服务集合;接收所述调度中心传递来的调度任务,从所述调度任务中获取出现宕机的服务;若出现宕机的服务位于所述服务集合中,则从所述配置文件中获取该出现宕机的服务对应的启停指令;根据所述启停指令,对出现宕机的服务执行杀掉执行脚本以杀掉该服务,以及对被杀掉的服务执行启动进行脚本以启动该服务;将对每一个出现宕机的服务的处理记录进行封装,并将封装后的处理记录作为所述执行结果回传至所述调度中心。

13、在一个实施例中,所述服务启停客户端还用于:在对出现宕机的服务执行杀掉执行脚本之前,将出现宕机的服务的进程内存信息进行保存。

14、在一个实施例中,所述调度中心具体用于:将接收到的结果转化为统一的结果对象;若所述结果对象的类型为所述执行结果,则根据所述执行结果形成启停记录,对该重启的服务的启停时间进行更新;根据所述执行结果判断是否需要进行相关的消息推送,若是则形成待通知内容;其中,所述消息通知服务查询所述数据库中的待通知内容,根据所述待通知内容构建推送信息,查询对应服务的运维人员列表,查询对应服务的信息推送方式,按照对应的信息推送方式将所述推送信息发送至对应的运维人员列表中的每一个运维人员。

15、在一个实施例中,所述服务状态监控模块的数量为多个,每一个所述服务状态监控模块用于实时监测分布式服务环境中的部分服务节点各自的服务运行数据,且各个服务状态监控模块能够共同实现对所述分布式服务环境中的全部服务节点的服务运行数据的监控;

16、所述服务监控系统的数量为多个,且每一个服务监控系统与至少一个服务状态监控模块通信连接,且各个服务监控系统能够覆盖全部服务状态监控模块;其中,所述数据库中存储有每一个服务监控系统通信连接的各个服务状态监控模块所形成的监控模块列表。

17、根据第二方面,本发明实施例提供的服务宕机治理方法基于第一方面提供的服务宕机治理系统实现,所述方法包括:

18、通过服务状态监控模块实时监测多个服务节点各自的服务运行数据;

19、通过服务监控系统周期性地从所述服务状态监控模块中获取所述多个服务节点各自的服务运行数据,根据每一个服务节点的服务运行数据分析该服务节点上的服务是否出现宕机,并将每一个服务节点的服务运行数据和分析结果传递至所述调度中心;

20、通过所述调度中心根据各个服务节点各自对应的所述分析结果,生成调度任务,并将所述调度任务发送至出现服务宕机的服务节点上的服务启停客户端;

21、通过所述服务启停客户端在接收到所述调度中心发送来的调度任务时,确定需要重启的服务,对需要重启的服务执行服务重启策略,并将执行结果返回给所述调度中心;

22、通过所述调度中心根据各个服务启停客户端返回的所述执行结果,形成待通知内容,将所述待通知内容存储至数据库,通过消息通知服务对所述数据库中的待通知内容进行遍历,并将遍历到的待通知内容推送至相关人员。

23、本发明实施例提供的服务宕机治理系统和方法,服务状态监控模块实时监测服务节点的服务运行数据,服务监控系统周期性地从服务状态监控模块中获取服务节点的服务运行数据,然后基于服务运行数据分析服务节点上的服务是否出现宕机,将服务运行数据和分析结果传递至所述调度中心。调度中心根据所述分析结果生成调度任务,将调度任务发送至出现服务宕机的服务节点上的服务启停客户端,这样所述服务启停客户端会根据调度任务确定需要重启的服务,对需要重启的服务执行服务重启策略,并将执行结果返回给所述调度中心。所述调度中心根据执行结果形成待通知内容,将待通知内容存储至数据库,通过消息通知服务对所述数据库中的待通知内容进行遍历,并待通知内容推送至相关人员。也就是说,通过服务状态监控模块实时监控服务节点,然后由服务监控系统分析是否存在服务宕机,调度中心进行集中调度和控制,且由部署在服务节点上的服务启停客户端对出现宕机的服务进行重启,进而调度中心通过数据库对执行结果进行统一管理,通过消息通知服务进行消息推送。可见,本发明实施例实现了从监控、分析、调度、重启到通知的一体化闭环管理,可以实现对服务状态的实时不间断监测和自动重启功能,显著提升了云计算环境下服务运维工作的安全性、可靠性和响应速度。而且,由于服务启停客户端在服务节点上直接运行,依托调度中心提供的任务调度功能,不仅能确保服务操作过程中的数据安全与完整性,而且极大地提升了服务异常处理速度和整体运维效率。还有,本发明实施例通过数据库统一存储执行结果,实现了集中式的数据库存储,便于管理和追溯。再有,通过消息推送服务可以高效地向运维人员发送相关信息,提升了系统的通知能力和响应速度,确保相关责任人能够在第一时间获取并处理服务异常情况,增强了运维人员对服务状态变化的及时应对能力。可见,本发明实施例可以高效处理服务异常,保障服务系统的高可用性与稳定性,从而极大地提升了服务治理工作的普适性和效率。

本文地址:https://www.jishuxx.com/zhuanli/20240730/196765.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。