System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及服务器扩容,特别是涉及一种kubernetes集群的容器伸缩系统、方法和设备。
技术介绍
1、随着“互联网+”、“新基建”等战略的提出,以开源技术作为“营养液”,借助微服务化、容器以及迭代等一些列原生化应用操作,在各行业掀起了信息化建设热潮。采用云计算的形式,进行信息化集约建设,统一在云上提供开箱即用的数据库、中间件等云服务变得越来越流行,大大降低了信息化建设的成本,使得最终用户获取信息化服务更加便捷。
2、随着云原生技术的高速发展,金融、能源、通信、政务等关键行业的应用逐步采用云原生技术进行应用改造或新建。而云原生应用一般通过容器进行封装。在容器的运行过程中通常需要根据应用程序的资源使用情况进行容器的弹性伸缩(扩缩容),以实现资源的合理利用。
3、传统的技术方案中,一般通过定期获取cpu、内存等资源的资源负载水位进行容器的弹性伸缩。然而这种方式难以保证伸缩感知的及时性。
技术实现思路
1、基于此,有必要针对上述技术问题,提供一种能够保证容器弹性伸缩的及时性的kubernetes集群的容器伸缩系统、方法和设备。
2、一种kubernetes集群的容器伸缩系统,系统包括部署于kubernetes集群的计算节点和控制节点,计算节点部署有至少一个待监控应用,控制节点部署有伸缩控制模块以及应用程序编程接口服务,其中,
3、计算节点用于采集至少一个待监控应用的数据处理状态指标,并将至少一个待监控应用的数据处理状态指标通过异步的方式上报
4、伸缩控制模块用于当至少一个待监控应用中的目标应用的数据处理状态指标满足弹性伸缩条件时,向应用程序编程接口服务发送目标应用所在容器的扩容或者缩容请求;
5、应用程序编程接口服务用于根据扩容请求创建目标应用的副本或者根据缩容请求删除目标应用的副本,以进行目标应用所在容器的扩容或者缩容操作。
6、在其中一个实施例中,上述的计算节点用于将数据处理状态指标通过异步的方式上报至伸缩控制模块,包括:
7、上述的计算节点用于将数据处理状态指标存入消息队列;
8、上述的伸缩控制模块用于从消息队列读取处理状态指标,以便将数据处理状态指标通过异步的方式上报至伸缩控制模块。
9、在其中一个实施例中,上述的伸缩控制模块包括事件接收模块以及伸缩控制器,其中,
10、上述的计算节点用于将至少一个待监控应用的数据处理状态指标上报至事件接收模块;
11、上述的事件接收模块用于将至少一个待监控应用的数据处理状态指标的取值分别与预设阈值进行比较,当目标应用的比较结果满足弹性伸缩条件时,向伸缩控制器发送扩容或者缩容请求;
12、上述的伸缩控制器用于向应用程序编程接口服务转发扩容或者缩容请求。
13、在其中一个实施例中,上述的数据处理状态指标包括关键请求处理时延,计算节点还部署有事件上报模块,事件接收模块用于将至少一个待监控应用的数据处理状态指标的取值分别与预设阈值进行比较,当目标应用的比较结果满足弹性伸缩条件时,向伸缩控制器发送扩容或者缩容请求,包括:
14、事件上报模块用于采集至少一个待监控应用的关键请求处理时延,并将至少一个待监控应用的关键请求处理时延通过异步的方式上报至事件接收模块;
15、事件接收模块用于将至少一个待监控应用的关键请求处理时延的取值分别与预设阈值进行比较,当目标应用的关键请求处理时延的取值大于预设阈值时,向伸缩控制器发送目标应用所在容器的扩容请求;
16、伸缩控制器用于向应用程序编程接口服务转发目标应用所在容器的扩容请求;
17、应用程序编程接口服务用于根据扩容请求执行目标应用所在容器的扩容操作。
18、在其中一个实施例中,上述的控制节点还部署有工作负载控制器,应用程序编程接口服务用于根据扩容请求创建目标应用的副本或者根据缩容请求删除目标应用的副本,以进行目标应用所在容器的扩容或者缩容操作,包括:
19、应用程序编程接口服务用于根据扩容或者缩容请求修改目标应用的副本数的数据记录;
20、工作负载控制器用于当检测到数据记录中目标应用的副本数增加时,根据增加的数目在目标应用所在容器中创建目标应用的副本,以进行扩容操作;
21、工作负载控制器还用于当检测到数据记录中目标应用的副本数减少时,根据减少的数目在目标应用所在容器中删除目标应用的副本,以进行缩容操作。
22、在其中一个实施例中,上述的应用程序编程接口服务用于根据扩容或者缩容请求修改目标应用的副本数的数据记录,包括:
23、应用程序编程接口服务用于根据扩容或者缩容请求以及预先设定的伸缩步长,对目标应用的副本数的数据记录进行修改。
24、在其中一个实施例中,相邻的两次操作的时间间隔大于预设的冷却时间。
25、一种kubernetes集群的容器伸缩方法,上述的kubernetes集群包括计算节点和控制节点,计算节点部署有至少一个待监控应用,控制节点部署有伸缩控制模块以及应用程序编程接口服务,上述的方法包括:
26、计算节点采集至少一个待监控应用的数据处理状态指标,并将数据处理状态指标通过异步的方式上报至伸缩控制模块;
27、伸缩控制模块在至少一个待监控应用中的目标应用的数据处理状态指标满足弹性伸缩条件时,向应用程序编程接口服务发送目标应用所在容器的扩容或者缩容请求;
28、应用程序编程接口服务根据扩容请求创建目标应用的副本或者根据缩容请求删除目标应用的副本,以进行目标应用所在容器的扩容或者缩容操作。
29、一种kubernetes集群的容器伸缩装置,上述的kubernetes集群包括计算节点和控制节点,上述的计算节点部署有至少一个待监控应用,控制节点部署有伸缩控制模块以及应用程序编程接口服务,上述的装置包括:
30、计算节点,用于采集至少一个待监控应用的数据处理状态指标,并将数据处理状态指标通过异步的方式上报至伸缩控制模块;
31、伸缩控制模块,用于在至少一个待监控应用中的目标应用的数据处理状态指标满足弹性伸缩条件时,向应用程序编程接口服务发送目标应用所在容器的扩容或者缩容请求;
32、应用程序编程接口服务,用于根据扩容请求创建目标应用的副本或者根据缩容请求删除目标应用的副本,以进行目标应用所在容器的扩容或者缩容操作。
33、一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:
34、计算节点采集至少一个待监控应用的数据处理状态指标,并将数据处理状态指标通过异步的方式上报至伸缩控制模块;
35、伸缩控制模块在至少一个待监控应用中的目标应用的数据处理状态指标满足弹性伸缩条件时,向应用程序编程接口服务发送目标应用所在容器的扩容或者缩容请求;本文档来自技高网...
【技术保护点】
1.一种Kubernetes集群的容器伸缩系统,其特征在于,所述系统包括部署于所述Kubernetes集群的计算节点和控制节点,所述计算节点部署有至少一个待监控应用,所述控制节点部署有伸缩控制模块以及应用程序编程接口服务,其中,
2.根据权利要求1所述的方法,其特征在于,所述计算节点用于将所述数据处理状态指标通过异步的方式上报至所述伸缩控制模块,包括:
3.根据权利要求1所述的方法,其特征在于,所述伸缩控制模块包括事件接收模块以及伸缩控制器,其中,
4.根据权利要求3所述的方法,其特征在于,所述数据处理状态指标包括关键请求处理时延,所述计算节点还部署有事件上报模块,所述事件接收模块用于将所述至少一个待监控应用的数据处理状态指标的取值分别与预设阈值进行比较,当所述目标应用的比较结果满足所述弹性伸缩条件时,向所述伸缩控制器发送所述扩容或者缩容请求,包括:
5.根据权利要求1所述的方法,其特征在于,所述控制节点还部署有工作负载控制器,所述应用程序编程接口服务用于根据所述扩容请求创建所述目标应用的副本或者根据所述缩容请求删除所述目标应用的副
6.根据权利要求5所述的方法,其特征在于,所述应用程序编程接口服务用于根据所述扩容或者缩容请求修改所述目标应用的副本数的数据记录,包括:
7.根据权利要求5所述的方法,其特征在于,相邻的两次操作的时间间隔大于预设的冷却时间。
8.一种Kubernetes集群的容器伸缩方法,其特征在于,所述Kubernetes集群包括计算节点和控制节点,所述计算节点部署有至少一个待监控应用,所述控制节点部署有伸缩控制模块以及应用程序编程接口服务,所述方法包括:
9.一种Kubernetes集群的容器伸缩装置,其特征在于,所述Kubernetes集群包括计算节点和控制节点,所述计算节点部署有至少一个待监控应用,所述控制节点部署有伸缩控制模块以及应用程序编程接口服务,所述装置包括:
10.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求8中所述方法的步骤。
11.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求8中所述的方法的步骤。
...【技术特征摘要】
1.一种kubernetes集群的容器伸缩系统,其特征在于,所述系统包括部署于所述kubernetes集群的计算节点和控制节点,所述计算节点部署有至少一个待监控应用,所述控制节点部署有伸缩控制模块以及应用程序编程接口服务,其中,
2.根据权利要求1所述的方法,其特征在于,所述计算节点用于将所述数据处理状态指标通过异步的方式上报至所述伸缩控制模块,包括:
3.根据权利要求1所述的方法,其特征在于,所述伸缩控制模块包括事件接收模块以及伸缩控制器,其中,
4.根据权利要求3所述的方法,其特征在于,所述数据处理状态指标包括关键请求处理时延,所述计算节点还部署有事件上报模块,所述事件接收模块用于将所述至少一个待监控应用的数据处理状态指标的取值分别与预设阈值进行比较,当所述目标应用的比较结果满足所述弹性伸缩条件时,向所述伸缩控制器发送所述扩容或者缩容请求,包括:
5.根据权利要求1所述的方法,其特征在于,所述控制节点还部署有工作负载控制器,所述应用程序编程接口服务用于根据所述扩容请求创建所述目标应用的副本或者根据所述缩容请求删除所述目标应用的副本,以进行所述目标应用所在容器的扩容或者缩容操作...
【专利技术属性】
技术研发人员:黄伟,吴栋,
申请(专利权)人:济南浪潮数据技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。