本技术属于微服务,具体涉及一种服务等级目标管理方法、系统、电子设备及存储介质。
背景技术:
1、鉴于微服务架构的应用程序具有更高的性能,可实现更多的功能,相对地,其管理工作也相对更为复杂,需要对微服务的运行状况和服务质量进行衡量,以及确定微服务的应用程序是否达到了预期的性能要求。因此,业界或开源社区便提出了服务等级指标(service level indicator,sli)与服务等级目标(service level objectives,slo)等概念。
2、其中,服务等级指标是衡量服务运行状况的指标,用来描述服务的特定性能指标,例如请求成功率、延迟时间、吞吐量等等。服务等级目标是指服务等级的目标值或值范围,是基于服务等级指标定义的,用于描述服务应该达到的性能目标,提供了一种形式化的方式,来描述、衡量和监测微服务应用程序的性能、质量和可靠性。服务等级目标通常包括一个指标和一个目标值,例如请求成功率应该达到99.9%,qps(queries per second,每秒查询率)>100k等。
3、为了对微服务进行更好地管理,还可以对各微服务的服务等级目标进行管理,以能够更精确地描述服务运行状况。但是,基于现有的服务等级目标管理方法,还无法基于用户配置的服务等级目标配置信息,对不同的工作负载制定不同的服务等级指标类型及服务等级目标,不能实现更为精确地服务目标等级管理。
技术实现思路
1、本技术提出一种服务等级目标管理方法、系统、电子设备及存储介质,能够基于用户配置的服务等级目标配置信息,对不同的工作负载确定不同的服务等级指标类型及服务等级目标。
2、本技术第一方面实施例提出了一种服务等级目标管理方法,包括:
3、获取用户对各微服务定义的服务等级目标配置信息,以及当前运行的工作负载的监测指标数据和工作负载上下文信息;所述工作负载是指实现所述微服务的具体应用程序;所述工作负载上下文信息是指执行工作负载过程中,与所述工作负载相关的环境信息和状态信息;
4、根据所述服务等级目标配置信息和所述工作负载上下文信息,生成相应的服务等级目标规则数据;所述服务等级目标规则数据包括服务等级目标元数据、服务等级指标规则以及服务告警规则;
5、基于所述监测指标数据和所述服务等级目标规则数据,对微服务进行服务等级目标管理。
6、在本技术一些实施例中,所述获取用户对各微服务定义的服务等级目标配置信息,以及当前运行的工作负载的监测指标数据和工作负载上下文信息,包括:
7、获取用户对各微服务定义的面向用户的服务等级目标配置信息,并将所述面向用户的服务等级目标配置信息转化为面向服务的服务等级目标配置信息;
8、获取服务网格代理收集的监测指标数据和元数据上报器上报的工作负载元数据,并基于所述工作负载元数据生成工作负载上下文信息;所述工作负载元数据用于描述工作负载的属性和特征。
9、所述根据所述服务等级目标配置信息和所述工作负载上下文信息,生成相应的服务等级目标规则数据,包括:
10、基于所述服务等级目标配置信息,确定一个或多个服务等级目标规则生成插件;
11、调用所述服务等级目标规则生成插件,基于所述服务等级目标配置信息和所述工作负载上下文信息,分别生成相应的服务等级目标规则数据。
12、在本技术一些实施例中,所述基于所述服务等级目标配置信息,确定一个或多个服务等级目标规则生成插件,包括:
13、确定所述服务等级目标配置信息中的插件类型信息,以及插件配置信息;
14、基于所述插件类型信息,自预设的插件集中选取对应的服务等级目标规则生成插件;以及根据所述插件配置信息生成新的服务等级目标规则生成插件。
15、在本技术一些实施例中,所述基于所述服务等级目标配置信息和所述工作负载上下文信息,分别生成相应的服务等级目标规则数据,包括:
16、基于所述服务等级目标配置信息和所述工作负载上下文信息,确定所述服务等级目标元数据;
17、根据所述服务等级目标配置信息和所述工作负载上下文信息,将相关内容添加至所述服务等级目标规则生成插件提供的服务等级目标规则生成模板,生成相应的服务等级指标规则和服务告警规则。
18、在本技术一些实施例中,所述基于所述监测指标数据和所述服务等级目标规则数据,对微服务进行服务等级目标管理,包括:
19、根据所述服务等级目标规则数据中的服务等级指标规则,以及所述监测指标数据,生成工作负载当前的服务等级指标数据;
20、基于所述服务等级指标数据,及所述服务等级目标规则数据中的服务等级目标元数据和服务告警规则,对处理所述工作负载的微服务进行服务等级目标管理。
21、在本技术一些实施例中,所述基于所述服务等级指标数据,以及所述服务等级目标规则数据中的服务等级目标元数据和服务告警规则,对处理所述工作负载的微服务进行服务等级目标管理,包括:
22、基于所述工作负载当前的服务等级指标数据,以及所述服务等级目标规则数据中的服务告警规则,确定用户配置的服务等级目标是否满足所述服务告警规则;
23、在用户配置的服务等级目标满足所述服务告警规则的情况下,生成对所述微服务的服务告警信息,并基于所述服务等级目标规则中的服务等级目标元数据,对所述服务告警信息进行补充描述。
24、本技术第二方面实施例提出了一种服务等级目标管理系统,包括:
25、数据获取模块,用于获取用户对各微服务定义的服务等级目标配置信息,以及当前运行的工作负载的监测指标数据和工作负载上下文信息;所述工作负载是指实现所述微服务的具体应用程序;所述工作负载上下文信息是指执行工作负载过程中,与所述工作负载相关的环境信息和状态信息;
26、规则生成模块,用于根据所述服务等级目标配置信息和所述工作负载上下文信息,生成相应的服务等级目标规则数据;所述服务等级目标规则数据包括服务等级目标元数据、服务等级指标规则以及服务告警规则;
27、目标管理模块,用于基于所述监测指标数据和所述服务等级目标规则数据,对微服务进行服务等级目标管理。
28、本技术第三方面的实施例提供了一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器运行所述计算机程序以实现上述第一方面所述的方法。
29、本技术第四方面的实施例提供了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行实现上述第一方面所述的方法。
30、本技术实施例中提供的技术方案,至少具有如下技术效果或优点:
31、在本技术实施例中,先获取用户对应用程序各微服务定义的服务等级目标配置信息,以及当前运行的工作负载的监测指标数据和工作负载上下文信息。然后根据服务等级目标配置信息和工作负载上下文信息,生成相应的服务等级目标规则数据;并基于监测指标数据和服务等级目标规则数据,对应用程序的微服务进行服务等级目标管理。如此,该方法可基于用户配置的服务等级目标配置信息,根据不同的工作负载上下文信息,生成相应的服务等级目标规则数据,并基于工作负载的监测指标数据,对生成的服务等级目标规则数据进行分析,从而可以基于用户配置的服务等级目标配置信息,对不同的工作负载确定不同的服务等级指标类型及服务等级目标,继而实现更为精确地服务目标等级管理。
32、本技术附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变的明显,或通过本技术的实践了解到。