本文公开了一种探测基于Kubernetes部署的微服务的可用性的方法、系统及介质,涉及计算机应用技术领域。其中,通过前端页面获取用户配置的待探测的微服务的参数信息,所述参数信息被实时存入数据库进行持久化保存,所述参数信息包括data结构体和result结构体,其中,Data结构体是发起restful api请求时配置的微服务巡检信息,Result结构体是期待探测返回的预期结果;通过后台程序发起Restful API请求以执行对所述微服务的业务探测,得到业务状态结果;根据所述预期结果和得到的业务状态结果判断所述微服务的可用性。计算工作在后端实现,减少前端负载,对客户端友好。探测结果通过web界面可实时展示,供用户查询产品可用性情况。结果比对、分析工作尽量在后端完成,对客户端友好。
Methods, systems and media for detecting the availability of microservices deployed based on kubernetes
【技术实现步骤摘要】
探测基于Kubernetes部署的微服务的可用性的方法、系统及介质
本专利技术涉及计算机应用
,具体地,涉及一种探测基于Kubernetes部署的微服务的可用性的方法、系统及介质。
技术介绍
随着技术的发展,有人提出了一套围绕应用和微服务的云平台,支持私有化部署,具有高可用、统一管控、行业合规的特点,为客户提供数据化转型所需的自主可控、弹性伸缩的全栈服务能力。该平台采用开源Kubernetes容器编排引擎,提供业务容器化管理,支持应用自动化部署、弹性伸缩等功能。业务以微服务的方式运行,如何保证业务正常运行,需进行微服务可用性探测。传统的可用性探测主要用于传统X86(泛指一系列基于Intel8086且向后兼容的中央处理器指令集架构)系统,针对微服务的可用性拨测的功能还未成熟,不能进行业务的有效监控。在现在的运维工作中,运维人员需在生产环境上主动发起针对各产品的带有参数的http(超文本传输协议)请求调用接口,针对得到的返回结果,进行人工比对,从而判断出探测结果正常与否。现有的技术条件下,该方法稳健性差,探测正确性取决于输入的多个参数的正确性;效率较低,需人工手动在指定时间发起请求,人力成本较高,且耗时较长;结果判断较复杂,当接口返回参数较多时,人工一一比对判,需过滤无效信息,针对关键字段判断业务可用性,该过程较复杂,断错误率较高,耗时也较长;安全性较低,在生产环境每日定时进行人为操作,操作风险较高,易对生产数据及环境产生影响。人工运维的操作存在业务探测低效、运维风险高、安全性低的情况,故无法满足微服务业务可用性拨测的需求。
技术实现思路
鉴于现有技术存在的上述缺陷,本专利技术实施方式提供了一种探测基于Kubernetes部署的微服务的可用性的方法、系统及介质。在对本专利技术实施方式的
技术实现思路
进行具体说明之前,对本专利技术实施方式涉及的部分术语进行解释,如下:Kubernetes:一个开源的,用于管理云平台中多个主机上的容器化的应用;Restful:一种软件架构风格、设计风格,提供了一组设计原则和约束条件;DevOps:Developmentandoperations,一组过程、方法与系统的统称,促进开发、运营和质量保障的整合;Cronjob:cronjob管理基于时间的job,在给定时间点只运行一次,在给定时间点周期性地运行。一方面,本专利技术实施方式提供了一种探测基于Kubernetes部署的微服务的可用性的方法,包括:通过前端页面获取用户配置的待探测的微服务的参数信息,所述参数信息被实时存入数据库进行持久化保存,所述参数信息包括data结构体和result结构体,其中,Data结构体是发起restfulapi请求时配置的微服务巡检信息,Result结构体是期待探测返回的预期结果;通过后台程序发起RestfulAPI请求以执行对所述微服务的业务探测,得到业务状态结果;根据所述预期结果和得到的业务状态结果判断所述微服务的可用性。在本专利技术的一些实施方式中,根据所述预期结果和得到的业务状态结果判断所述微服务的可用性包括:从数据库获取所述预期结果;将所述预期结果与所述业务状态结果进行对比;根据所述对比的结果输出所述微服务的可用性的最终判断结果。在本专利技术的一些实施方式中,所述方法还包括:将最终判断结果存入数据库进行持久化保存。在本专利技术的一些实施方式中,所述方法还包括:通过短信、微信的方式向外部发送最终判断结果。在本专利技术的一些实施方式中,所述Data结构体包括:请求的域名或者IP地址、请求所带的参数及信息、请求的方式、请求的请求头信息;所述Result结构体包括:返回的状态码以及返回的信息。另一方面,本专利技术实施方式提供了一种探测基于Kubernetes部署的微服务的可用性的系统,包括:集成工具组件,其提供基础公共服务,所述基础公共服务包括http访问服务、日志服务、数据库服务和缓存服务;前端展现组件,用于提供用户配置参数用的前端页面和展现探测结果的结果展示页面;运营运维组件,用于执行下述操作:通过所述http访问服务从所述前端页面获取用户配置的待探测的微服务的参数信息,通过所述数据库服务将所述参数信息实时存入数据库进行持久化保存,所述参数信息包括data结构体和result结构体,其中,Data结构体是发起RestfulAPI请求时配置的微服务巡检信息,Result结构体是期待探测返回的预期结果;通过后台程序发起RestfulAPI请求以执行对所述微服务的业务探测,得到业务状态结果;根据所述预期结果和得到的业务状态结果判断所述微服务的可用性,并通过所述结果展示页面呈现判断结果。在本专利技术的一些实施方式中,所述系统还包括:定时任务组件,用于定时调用所述运营运维组件进行业务探测。在本专利技术的一些实施方式中,所述系统还包括:API组件,其包括所述运营运维组件使用的RestfulAPI接口。再一方面,本专利技术实施方式提供了一种探测基于Kubernetes部署的微服务的可用性的系统,包括:存储器,其上存储有计算机可读指令和数据;处理器,其用于执行所述计算机可读指令并读取所述数据以实现上述探测方法。又一方面,本专利技术实施方式提供了一种存储介质,其上存储有计算机可读指令,所述计算机可读指令被处理器执行以实现上述探测方法。采用本专利技术各种实施方式,可以实现以下有益效果:用户可以访问前端页面进行参数配置,使得业务的配置信息修改可动态自适应生效,采用微服务的思想,实现业务实例在可视化界面的弹性伸缩等,无需登录主机修改,用户可自主完成运维工作,无需开发人员支持,是DevOps的良好实践。每日定时自动探测业务情况,通过拨测及时探测业务可用性。计算工作在后端实现(包括数据的结果对比、分析),减少前端负载,对客户端友好。探测结果通过web界面可实时展示,供用户查询产品可用性情况。结果比对、分析工作尽量在后端完成,对客户端友好。附图说明图1是根据本专利技术实施方式的探测微服务可用性的系统的架构层次;图2是根据本专利技术实施方式的产品巡检的流程示意图;图3是根据本专利技术一种实施方式的一种探测基于Kubernetes部署的微服务的可用性的方法的流程图;图4是根据本专利技术另一种实施方式的一种探测基于Kubernetes部署的微服务的可用性的方法的流程图;图5是根据本专利技术又一种实施方式的一种探测基于Kubernetes部署的微服务的可用性的方法的流程图;图6是根据本专利技术一种实施方式的一种探测基于Kubernetes部署的微服务的可用性的系统的框图;图7是根据本专利技术另一种实施方式的一种探测基于Kubernetes部署的微服务的可用性的系统的框图;图8是根据本专利技术又一种实施方式的一种探测基于Kubernetes部署的微服务的可用性的本文档来自技高网...
【技术保护点】
1.一种探测基于Kubernetes部署的微服务的可用性的方法,其特征在于,所述方法包括:/n通过前端页面获取用户配置的待探测的微服务的参数信息,所述参数信息被实时存入数据库进行持久化保存,所述参数信息包括data结构体和result结构体,其中,Data结构体是发起restful api请求时配置的微服务巡检信息,Result结构体是期待探测返回的预期结果;/n通过后台程序发起Restful API请求以执行对所述微服务的业务探测,得到业务状态结果;/n根据所述预期结果和得到的业务状态结果判断所述微服务的可用性。/n
【技术特征摘要】
1.一种探测基于Kubernetes部署的微服务的可用性的方法,其特征在于,所述方法包括:
通过前端页面获取用户配置的待探测的微服务的参数信息,所述参数信息被实时存入数据库进行持久化保存,所述参数信息包括data结构体和result结构体,其中,Data结构体是发起restfulapi请求时配置的微服务巡检信息,Result结构体是期待探测返回的预期结果;
通过后台程序发起RestfulAPI请求以执行对所述微服务的业务探测,得到业务状态结果;
根据所述预期结果和得到的业务状态结果判断所述微服务的可用性。
2.根据权利要求1所述的方法,其特征在于,根据所述预期结果和得到的业务状态结果判断所述微服务的可用性包括:
从数据库获取所述预期结果;
将所述预期结果与所述业务状态结果进行对比;
根据所述对比的结果输出所述微服务的可用性的最终判断结果。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
将最终判断结果存入数据库进行持久化保存。
4.根据权利要求2所述的方法,其特征在于,所述方法还包括:
通过短信、微信的方式向外部发送最终判断结果。
5.根据权利要求1所述的方法,其特征在于,
所述Data结构体包括:请求的域名或者IP地址、请求所带的参数及信息、请求的方式、请求的请求头信息;
所述Result结构体包括:返回的状态码以及返回的信息。
6.一种探测基于Kubernetes部署的微服务的可用性的系统,其特征在于,所述系统包括:
集成工具组件,其...
【专利技术属性】
技术研发人员:韩梦乔,
申请(专利权)人:中国建设银行股份有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。