一种容器重调度方法、装置、设备、存储介质制造方法及图纸

技术编号:36400142 阅读:21 留言:0更新日期:2023-01-18 10:06
本申请公开了一种容器重调度方法、装置、设备、介质,涉及计算机技术领域,包括:当服务实例触发容器重调度操作时,从调用链路拓扑图中确定出与服务实例亲密关系值最大的关联服务作为目标服务;判断服务实例与目标服务是否均进行容器重调度操作,得到相应的判断结果;若判断结果为均进行容器重调度操作,利用目的节点对服务实例与目标服务进行容器重调度;若判断结果不是均进行容器重调度操作,将服务实例所在容器节点作为目的节点,对服务实例进行容器重调度。当触发容器重调度操作时,基于微服务架构现代化应用微服务之间实际的调用链路数据,确定关联服务,优先将有实际调用关系的服务尽量调用到同一个或者相近物理/网络拓扑的计算节点。扑的计算节点。扑的计算节点。

【技术实现步骤摘要】
一种容器重调度方法、装置、设备、存储介质


[0001]本专利技术涉及计算机
,特别涉及一种容器重调度方法、装置、设备、存储介质。

技术介绍

[0002]随着“互联网+”、“新基建”等战略的提出,以开源技术作为“营养液”,借助微服务化、容器、迭代、DevOps、AIOps等一些列原生化应用操作,在各行业掀起了信息化建设热潮。采用云计算的形式,进行信息化集约建设,统一在云上提供开箱即用的数据库、中间件等云服务变得越来越流行,大大降低了信息化建设的成本,使得最终用户获取信息化服务更加便捷。随着微服务架构的流行,现代化应用逐步模块化解耦,单个应用的微服务数量越来越多,基于已有的K8s(Kubernetes,容器集群管理系统)调度模型中,无法保证有业务关联关系的服务调度到相同或者相近的节点上,往往是每个单独的服务均由容器封装,均受容器管理系统对容器进行调度管理,会增加服务间的网络延迟和资源开销,降低性能。
[0003]综上,如何将有业务关联关系的应用服务尽量调度到相同或邻近的计算节点,实现容器重调度,降低应用整体的网络开销,实现性能提升,加速云原生发展与落地是本领域有待解决的技术问题。

技术实现思路

[0004]有鉴于此,本专利技术的目的在于提供一种容器重调度方法、装置、设备、存储介质,能够将有业务关联关系的应用服务尽量调度到相同或邻近的计算节点,实现容器重调度,降低应用整体的网络开销,实现性能提升,加速云原生发展与落地。其具体方案如下:
[0005]第一方面,本申请公开了一种容器重调度方法,包括:
[0006]当服务实例触发容器重调度操作时,从调用链路拓扑图中确定出与所述服务实例亲密关系值最大的关联服务作为目标服务;
[0007]判断所述服务实例与所述目标服务是否均进行容器重调度操作,以得到相应的判断结果;
[0008]若所述判断结果为均进行容器重调度操作,则利用目的节点对所述服务实例与所述目标服务进行容器重调度;
[0009]若所述判断结果不是均进行容器重调度操作,则将所述服务实例所在容器节点作为目的节点,对所述服务实例进行容器重调度。
[0010]可选的,所述当服务实例触发容器重调度操作时,从调用链路拓扑图中确定出与所述服务实例亲密关系值最大的关联服务作为目标服务之前,还包括:
[0011]采集各个服务的调用数据,基于所述调用数据生成各个服务之间的调用链路拓扑图。
[0012]可选的,所述采集各个服务的调用数据之前,还包括:
[0013]对包含云原生应用的资源声明、部署顺序声明、工作负载类型声明的描述声明进
行部署,并开启对所述云原生应用的服务治理。
[0014]可选的,所述基于所述调用数据生成各个服务之间的调用链路拓扑图,包括:
[0015]基于所述调用数据绘制各个微服务组件的流量拓扑关系,基于所述流量拓扑关系生成携带各个服务之间的亲密关系值的调用链路拓扑图。
[0016]可选的,所述对包含云原生应用的资源声明、部署顺序声明、工作负载类型声明的描述声明进行部署之前,还包括:
[0017]解析云原生应用,以得到所述云原生应用的各个微服务组件;
[0018]对所述微服务组件注入服务治理流量组件,对服务流量进行记录,生成用于访问调用数据的基础数据。
[0019]可选的,所述基于所述流量拓扑关系生成携带各个服务之间的亲密关系值的调用链路拓扑图过程中,还包括:
[0020]记录各个服务之间的调用频次,基于所述调用频次生成各个服务之间的亲密关系值。
[0021]可选的,所述的容器重调度方法,还包括:
[0022]当产生新的访问请求时,确定与所述访问请求存在关联的对应服务,并增加所述对应服务之间的亲密关系值。
[0023]第二方面,本申请公开了一种容器重调度装置,包括:
[0024]服务确定模块,用于当服务实例触发容器重调度操作时,从调用链路拓扑图中确定出与所述服务实例亲密关系值最大的关联服务作为目标服务;
[0025]结果判断模块,用于判断所述服务实例与所述目标服务是否均进行容器重调度操作,以得到相应的判断结果;
[0026]第一容器调度模块,用于若所述判断结果为均进行容器重调度操作,则利用目的节点对所述服务实例与所述目标服务进行容器重调度;
[0027]第二容器调度模块,用于若所述判断结果不是均进行容器重调度操作,则将所述服务实例所在容器节点作为目的节点,对所述服务实例进行容器重调度。
[0028]第三方面,本申请公开了一种电子设备,包括:
[0029]存储器,用于保存计算机程序;
[0030]处理器,用于执行所述计算机程序,以实现前述公开的容器重调度方法的步骤。
[0031]第四方面,本申请公开了一种计算机可读存储介质,用于存储计算机程序;其中,所述计算机程序被处理器执行时实现前述公开的容器重调度方法的步骤。
[0032]由此可见,本申请公开了一种容器重调度方法,包括:当服务实例触发容器重调度操作时,从调用链路拓扑图中确定出与所述服务实例亲密关系值最大的关联服务作为目标服务;判断所述服务实例与所述目标服务是否均进行容器重调度操作,以得到相应的判断结果;若所述判断结果为均进行容器重调度操作,则利用目的节点对所述服务实例与所述目标服务进行容器重调度;若所述判断结果不是均进行容器重调度操作,则将所述服务实例所在容器节点作为目的节点,对所述服务实例进行容器重调度。可见,当触发容器重调度操作时,基于微服务架构现代化应用微服务之间实际的调用链路数据,确定关联服务,然后优先将有实际调用关系的服务尽量调用到同一个或者相近物理/网络拓扑的计算节点,降低服务间的网络访问延迟,提高吞吐量,提高应用性能。
附图说明
[0033]为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
[0034]图1为本申请公开的一种容器重调度方法流程图;
[0035]图2为本申请公开的一种具体的容器重调度方法流程图;
[0036]图3为本申请公开的一种基于K8s的容器重调度方法流程图;
[0037]图4为本申请公开的一种容器重调度装置结构示意图;
[0038]图5为本申请公开的一种电子设备结构图。
具体实施方式
[0039]下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0040]随着“互联网+”、“新基建”等战略的提出,以开源技术作为“营养液”,借助微服务化、本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种容器重调度方法,其特征在于,包括:当服务实例触发容器重调度操作时,从调用链路拓扑图中确定出与所述服务实例亲密关系值最大的关联服务作为目标服务;判断所述服务实例与所述目标服务是否均进行容器重调度操作,以得到相应的判断结果;若所述判断结果为均进行容器重调度操作,则利用目的节点对所述服务实例与所述目标服务进行容器重调度;若所述判断结果不是均进行容器重调度操作,则将所述服务实例所在容器节点作为目的节点,对所述服务实例进行容器重调度。2.根据权利要求1所述的容器重调度方法,其特征在于,所述当服务实例触发容器重调度操作时,从调用链路拓扑图中确定出与所述服务实例亲密关系值最大的关联服务作为目标服务之前,还包括:采集各个服务的调用数据,基于所述调用数据生成各个服务之间的调用链路拓扑图。3.根据权利要求2所述的容器重调度方法,其特征在于,所述采集各个服务的调用数据之前,还包括:对包含云原生应用的资源声明、部署顺序声明、工作负载类型声明的描述声明进行部署,并开启对所述云原生应用的服务治理。4.根据权利要求2所述的容器重调度方法,其特征在于,所述基于所述调用数据生成各个服务之间的调用链路拓扑图,包括:基于所述调用数据绘制各个微服务组件的流量拓扑关系,基于所述流量拓扑关系生成携带各个服务之间的亲密关系值的调用链路拓扑图。5.根据权利要求3所述的容器重调度方法,其特征在于,所述对包含云原生应用的资源声明、部署顺序声明、工作负载类型声明的描述声明进行部署之前,还包括:解析云原生应用,以得到所述云原生应用的各个微服务组...

【专利技术属性】
技术研发人员:黄伟吴栋
申请(专利权)人:郑州云海信息技术有限公司
类型:发明
国别省市:

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

1