一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

信息处理系统及方法、网络方案推荐组件及方法与流程

2022-03-13 21:47:53 来源:中国专利 TAG:


1.本发明涉及一种信息处理系统及方法、网络方案推荐组件及方法,特别是涉及在云计算领域中实现基于机器学习的自动化容器网络选择的信息处理系统及方法、网络方案推荐组件及方法。


背景技术:

2.随着云计算平台技术、容器技术的发展,容器技术所具备的快速部署、弹性伸缩、可移植性、轻量、高可用、高资源利用率的优势,使得容器已成为云上应用分发的标准。
3.容器化应用通常需要部署在多节点的集群环境中,但部署容器化应用时面临多节点间网络通信的问题。针对多节点间网络通信,不同的企业开发出多种解决方案,如weave、flannel、calico、macvlan等。由于这些网络方案在隔离方案、数据包转发效率等性能方面的支撑各有不同,因此适用于不同的应用场景。
4.然而,在当前技术背景下,存在如下问题。用户在进行多主机网络互通时,要在多种网络方案中进行选择,用户需要了解容器化应用对网络的需求及各种网络方案的差异后进行网络方案的选择。容器化应用对网络的需求包括网络时延、带宽、网络启动时间等。另外,各种网络方案之间的差异包括网络协议的不同、网络包的大小、吞吐量的不同、隔离性、网络的cpu负载的不同等。


技术实现要素:

5.对于用户而言,在针对容器化应用进行网络方案的选择时,需要考虑的因素较为繁杂。尤其是对于短生命周期的应用而言,更需要对网络方案进行快速、准确的选择。如果对于短生命周期的应用继续采用人工的方式,则会为短生命周期的容器化应用的开发带来不便。
6.然而,目前尚未提出能够有效地解决上述问题的网络选择方案。
7.本发明是为了解决上述问题而完成的,其目的在于提供一种实现自动化容器网络选择的方案,结合ai算法对现有集群上的应用监控数据进行离线分析、部署,当新的应用进行部署时,通过在线处理,对应用快速、准确地推荐容器网络方案。
8.根据本发明的一个方面,提供一种信息处理系统,其特征在于,具备网络方案推荐组件和多节点集群,所述网络方案推荐组件取得所述多节点集群的监控数据,根据所述监控数据生成并部署自动化容器网络选择模型,并且根据来自所述多节点集群的调用请求,基于已部署的所述自动化容器网络选择模型而生成网络方案推荐信息并发送给所述多节点集群,所述多节点集群根据来自用户的应用部署请求,向所述网络方案推荐组件发送调用请求并从所述网络方案推荐组件取得所述网络方案推荐信息,基于所述网络方案推荐信息来选取适合应用的网络方案,向用户返回满足所述应用部署请求的负载节点。
9.根据本发明的另一个方面,提供一种网络方案推荐组件,其特征在于,具备策略制定单元和自动选择单元,所述策略制定单元通过对多节点集群的监控数据进行分析建模,
生成自动化容器网络选择模型,并将该自动化容器网络选择模型部署到所述自动选择单元,所述自动选择单元根据来自所述多节点集群的调用请求,结合已部署的所述自动化容器网络选择模型生成网络方案推荐信息,并发送给所述多节点集群。
10.根据本发明的另一个方面,提供一种信息处理方法,是用于具备网络方案推荐组件和多节点集群的信息处理系统的方法,其特征在于,包括:所述网络方案推荐组件取得所述多节点集群的监控数据,根据所述监控数据生成并部署自动化容器网络选择模型的步骤;所述多节点集群根据来自用户的应用部署请求,向所述网络方案推荐组件发送调用请求的步骤;所述网络方案推荐组件根据来自所述调用请求,基于已部署的所述自动化容器网络选择模型生成网络方案推荐信息,并发送给所述多节点集群的步骤;以及所述多节点集群基于从所述网络方案推荐组件取得的所述网络方案推荐信息,选取适合应用的网络方案,并向所述用户返回满足所述应用部署请求的负载节点的步骤。
11.根据本发明的另一个方面,提供一种网络方案推荐方法,是用于具备策略制定单元和自动选择单元的网络方案推荐组件的方法,其特征在于,具备:所述策略制定单元通过对多节点集群的监控数据进行分析建模,生成自动化容器网络选择模型,并将该自动化容器网络选择模型部署到所述自动选择单元的步骤;以及所述自动选择单元根据来自所述多节点集群的调用请求,结合已部署的所述自动化容器网络选择模型生成网络方案推荐信息,并发送给所述多节点集群的步骤。
12.根据本发明,能够采用机器学习算法进行自动化网络方案选择,对现有集群上的应用监控数据进行离线分析、部署,当新的应用进行部署时,通过在线处理,对应用进行容器网络方案快速、准确推荐。因此,不需要由用户指定网络方案,而能够自动地选择网络方案。
13.以下通过本发明的优选的实施方式的详细描述,本发明的其它特征及其优点将会变得清楚。
附图说明
14.构成说明书的一部分的附图描述了本发明的实施方式,并且连同说明书一起用于解释本发明的原理。
15.图1是示出本实施方式的用于实现基于机器学习的自动化容器网络选择的信息处理系统的整体结构的图。
16.图2是用于说明在信息处理系统中执行的处理的流程图。
17.图3是用于说明网络方案推荐组件执行的处理的流程图。
18.图4是用于说明策略制定单元执行的处理的流程图。
具体实施方式
19.下面,参照附图,详细地说明本发明的优选的实施方式。
20.在附图中,在功能上相同的要素有时也用相同的编号来显示。此外,附图示出依照本发明的原理的实施方式和结构例,但这些只是用于理解本发明,而绝非用于限定地解释本发明。本说明书的记述只不过是典型的例示,在任何意义下都并非限定本发明的权利要求书或者应用例。
21.在本实施方式中,为了使本领域技术人员实施本发明而充分详细地进行了说明,但需要理解其它实施方式也能够实现,能够不脱离本发明的技术思想的范围和精神而进行结构/构造的变更、各种要素的置换。因此,不应将以下的记述限定于此来解释。
22.另外,为了便于说明和观察,在附图中关于各结构单元的连接关系,仅示出了说明所需的连接关系,在产品方面未必示出所有的控制线、信息线等的连接关系。实际上,可以认为几乎所有的结构之间都可能通过有线或者无线等各种方式相互连接。
23.图1是示出本实施方式的用于实现基于机器学习的自动化容器网络选择的信息处理系统的整体结构的图。在图1中,信息处理系统主要包括网络方案推荐组件1、多节点集群2以及应用与平台监控系统3。关于多节点集群2,典型的例子是kubernetes集群。
24.在图1中,网络方案推荐组件1具备策略制定单元11和自动选择单元12。策略制定单元11通过对kubernetes集群2中的应用的监控数据进行分析建模,构建监控数据与应用之间的映射,生成自动化容器网络选择模型,并将其部署到自动选择单元12。自动选择单元12通过对用户的容器化应用的需求进行识别分析,结合部署在其上的自动化容器网络选择模型进行网络方案推荐,并将结果发送至kubernetes集群2,以便kubernetes集群2调度适合应用的网络方案。
25.kubernetes集群也被称为k8s集群,是一种编排容器的工具。kubernetes集群用于管理应用的全生命周期,在创建应用、应用的部署、应用提供服务、扩容缩容应用、应用更新等方面都非常方便,而且可以实现故障自愈。另外,kubernetes集群可以更快地更新新版本、打包应用,并且在更新的时候不用中断服务,即便服务器发生故障也不用停机。
26.在图1中,kubernetes集群2包括负责整个集群的管理和控制的作为集群控制节点的master节点、以及被分配工作负载的作为负载节点的node节点。master节点由pm/vm(物理机或虚拟机)组成,其中包括调度器(scheduler)等组件。node节点由pm/vm(物理机或虚拟机)组成,其中包括网络方案组件。在kubernetes集群2中,除了master节点以外的节点被称为node节点。
27.另外,虽然未图示,node节点还包括负责资源(pod)所对应的容器的创建、启停等任务的kubelet单元,kubelet单元与master节点密切协作,实现集群管理的基本功能。node节点可以在运行期间动态增加到kubernetes集群2中。在默认情况下,kubelet单元会向master节点注册自己。一旦node节点被纳入集群管理范围,kubelet单元就会定时向master节点汇报自身情况,例如操作系统、容器版本、cpu和内存情况、以及当前有哪些pod在运行等,这样master节点就可以掌握每个node节点的资源使用情况,并实现高效均衡的资源调度策略,长时间失联的node节点会被标记为不可用。
28.另外,在本实施方式中,在不影响原生kubernetes调度流程的前提下,可以对kubernetes集群做出如下修改。即,修改node节点中的kubelet,增加自动采集、上报节点网络类型;修改调度器,增加网络方案调度策略。这两种修改使得kubernetes集群将网络方案增加为上报采集的其中一类,使用者可更好的对网络方案进行原生调度设置。
29.另外,应用与平台监控系统3用于监控kubernetes集群2,从kubernetes集群2获取与应用及网络性能相关的监控数据,如应用带宽、包大小、吞吐量等。另外,用户4是容器化应用的开发者,用于向kubernetes集群2部署新的应用。
30.图2是用于说明在信息处理系统中执行的处理的流程图。
31.在步骤s1中,网络方案推荐组件1取得kubernetes集群2的监控数据,根据所取得的监控数据生成并部署自动化容器网络选择模型。
32.接下来,在步骤s2中,kubernetes集群2根据来自用户4的应用部署请求,向网络方案推荐组件1发送调用请求。
33.接下来,在步骤s3中,网络方案推荐组件1根据来自kubernetes集群2的调用请求,基于其上部署的自动化容器网络选择模型而生成网络方案推荐信息并发送给kubernetes集群2。
34.接下来,在步骤s4中,kubernetes集群2从网络方案推荐组件1取得网络方案推荐信息,基于该网络方案推荐信息来选取适合应用的网络方案,并向用户返回满足应用部署请求的node节点。
35.即,网络方案推荐组件1从应用与平台监控系统3获取kubernetes集群2的监控数据,生成自动化容器网络选择模型并进行部署。并且,网络方案推荐组件1根据来自kubernetes集群2的调用请求,基于所部署的自动化容器网络选择模型生成网络方案推荐信息,并发送给kubernetes集群2。另外,kubernetes集群2根据来自用户的应用部署请求,向网络方案推荐组件1发送调用请求并从网络方案推荐组件1取得网络方案推荐信息,基于网络方案推荐信息,利用master节点的调度器选取适合应用的网络方案,向用户4返回满足应用网络要求的node节点。
36.另外,kubernetes集群2能够通过对master节点中的调度器进行修改,增加网络方案类型或网络方案调度策略,使其能够检查各节点的网络方案类型,快速、准确地满足应用需求。
37.另外,kubernetes集群2能够通过修改node节点中的kubelet,使其增加自动采集、上报节点网络类型,从而使master节点可监控各节点网络方案类型,确保网络方案推荐组件1能够获取最新的监控数据。
38.图3是用于说明网络方案推荐组件执行的处理的流程图。下面,参照图3,详细说明网络方案推荐组件1执行的处理。
39.在步骤s11中,策略制定单元11通过对从应用与平台监控系统3获取的应用的监控数据进行分析建模,构建监控数据与应用之间的映射,建立自动化容器网络选择模型,并部署到自动选择单元12。此处,监控数据例如是应用带宽、包大小、吞吐量等。
40.接下来,在步骤s12中,自动选择单元12根据来自kubernetes集群2的调用请求,通过对用户的应用需求进行识别分析,结合部署在其上的模型进行网络方案推荐,并将结果发送至kubernetes集群2。kubernetes集群2中的master节点的调度器负责对相关网络方案的node节点进行调度。
41.图4是用于说明策略制定单元执行的处理的流程图。下面,参照图4,详细说明策略制定单元11执行的处理。
42.在步骤s21中,策略制定单元11提取应用类型、应用监控数据。具体地,策略制定单元11从应用与平台监控系统3提取与应用及网络性能相关的监控数据,如应用带宽、包大小、吞吐量等。
43.接下来,在步骤s22中,策略制定单元11对监控数据进行数据预处理,建立和应用相关的特征工程。
44.接下来,在步骤s23中,从训练集中使用bagging、bootstraping等算法,有放回采样取出m个样本,共进行n次采样,生成n个训练集。此处n和m为自然数。
45.接下来,在步骤s24中,分别对n个训练集进行训练,训练出n个决策树模型。
46.接下来,在步骤s25中,对于单个决策树模型,根据训练样本特征的个数进行相应次数的训练,每次分裂时根据信息增益比选择特征进行分裂。
47.接下来,在步骤s26中,每个决策树均进行分裂,直到节点上的所有样本数据都属于同一类。
48.接下来,在步骤s27中,将生成的多颗决策树组成随机森林。
49.接下来,在步骤s28中,将训练好的模型封装成api(application programming interface,应用程序接口)进行部署;
50.通过以上处理,策略制定单元11完成自动化容器网络选择模型的生成和部署。
51.根据本实施方式,能够采用机器学习算法进行自动化网络方案选择,对现有集群上的应用监控数据进行离线分析、部署,当新的应用进行部署时,通过在线处理,对应用进行容器网络方案快速、准确推荐。因此,不需要由用户指定网络方案,而能够自动地选择网络方案。
52.本领域技术人员应当知道,本发明中记载的结构可以被实施为系统、装置、方法或作为计算机程序产品的计算机可读媒体。因此,本发明可以被实施为各种形式,例如完全的硬件实施例、完全的软件实施例(包括固件、常驻软件、微程序代码等),或者也可实施为软件与硬件的实施形式,例如为电路、模块或系统。此外,本发明也可以以任何有形的媒体形式实施为计算机程序产品,其保存有计算机可执行的程序代码。
53.关于本发明的叙述,可以理解每一个流程图和/或框图中的每一个块,以及流程图和/或框图中的块的任何组合,根据需要也可以使用计算机程序指令来实施。这些计算机程序指令可供通用型计算机或特殊计算机的处理器或其它可编程数据处理装置所组成的机器来执行,而指令经由计算机或其它可编程数据处理装置处理以便实施流程图和/或框图中所说明的功能或操作。
54.在附图中显示的本发明的实施方式的各种功能及操作的流程图及框图中的每个块可表示一模块、区段、或部分的程序代码,其包括一个或多个可执行指令,以实施指定的逻辑功能。另外应当注意,在某些其它的实施例中,块所示的功能可以不按图中所示的顺序进行。举例来说,两个图示相连接的块事实上也可以同时执行,或根据所涉及的功能在某些情况下也可以按图标相反的顺序执行。此外还需注意,每个框图和/或流程图的块,以及框图和/或流程图中块的组合,可藉由基于专用硬件的系统来实施,或者藉由专用硬件与计算机指令的组合,来执行特定的功能或操作。
55.以上已经描述了本发明的各实施例,上述说明是示例性的,不限于所披露的各实施例。在不脱离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场技术的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献