集群资源伸缩方法、装置及容器集群管理系统与流程

文档序号:31734427发布日期:2022-10-05 03:10阅读:67来源:国知局
集群资源伸缩方法、装置及容器集群管理系统与流程

1.本公开涉及自动驾驶技术领域,具体涉及一种集群资源伸缩方法、装置及容器集群管理系统。


背景技术:

2.随着容器化技术的日益成熟及普及,主流机器学习平台普遍使用容器集群管理系统(kubernetes,简称k8s)作为业务容器化的基础设施。而在k8s系统的资源调度过程中,面临着严重的资源碎片化问题。
3.相关技术,为了解决资源碎片化问题,可以通过垂直容器组自动扩缩容(vertical pod autoscaler,简称vpa)技术,根据容器资源使用率,自动设置容器资源的资源规格,以实现集群资源的垂直伸缩。但是相关技术中的vpa技术,在对集群资源进行垂直伸缩时,需要将当前正在运行的容器组(pod)删除,再根据计算得到的新的资源规格信息,创建新的容器组,而删除当前的容器组会导致该容器组中的服务中断,从而影响服务的质量,在业务负载变化较快的场景下,该集群资源垂直伸缩方式对容器组管理的灵活性差。


技术实现要素:

4.本公开提供了一种集群资源伸缩方法、装置及容器集群管理系统。
5.根据本公开的一方面,提供了一种集群资源伸缩方法,应用于容器集群管理系统中的调度组件,所述容器集群管理系统还包括接口服务组件以及至少一个工作节点上的节点代理组件;所述接口服务组件支持容器组的资源规格更新功能;所述方法包括:响应于监测到所述接口服务组件对目标容器组的资源规格信息进行更新的事件,且确定所述目标容器组具有原地更新标识,校验所述目标容器组是否满足原地更新条件;在确定所述目标容器组满足所述原地更新条件的情况下,删除所述目标容器组具有的所述原地更新标识,以使所述目标容器组所在工作节点上的节点代理组件,响应于监测到所述事件,且确定所述目标容器组不具有所述原地更新标识,对所述目标容器组的更新后资源规格信息进行生效。
6.根据本公开的另一方面,提供了一种集群资源伸缩方法,应用于容器集群管理系统中的节点代理组件,所述容器集群管理系统还包括接口服务组件以及调度组件;所述接口服务组件支持容器组的资源规格更新功能;所述方法包括:响应于监测到所述接口服务组件对目标容器组的资源规格信息进行更新的事件,且确定所述目标容器组不具有原地更新标识,对所述目标容器组的更新后资源规格信息进行生效;所述目标容器组设置于所述节点代理组件所在工作节点上;其中,所述原地更新标识,是所述调度组件响应于监测到所述事件,且确定所述目标容器组具有所述原地更新标识,校验所述目标容器组是否满足原地更新条件后,确定所述目标容器组满足所述原地更新条件的情况下删除的。
7.根据本公开的另一方面,提供了一种集群资源伸缩装置,应用于容器集群管理系统中的调度组件,所述容器集群管理系统还包括接口服务组件以及至少一个工作节点上的
节点代理组件;所述接口服务组件支持容器组的资源规格更新功能;所述装置包括:校验模块,用于响应于监测到所述接口服务组件对目标容器组的资源规格信息进行更新的事件,且确定所述目标容器组具有原地更新标识,校验所述目标容器组是否满足原地更新条件;第一处理模块,用于在确定所述目标容器组满足所述原地更新条件的情况下,删除所述目标容器组具有的所述原地更新标识,以使所述目标容器组所在工作节点上的节点代理组件,响应于监测到所述事件,且确定所述目标容器组不具有所述原地更新标识,对所述目标容器组的更新后资源规格信息进行生效。
8.根据本公开的另一方面,提供了一种集群资源伸缩装置,应用于容器集群管理系统中的节点代理组件,所述容器集群管理系统还包括接口服务组件以及调度组件;所述接口服务组件支持容器组的资源规格更新功能;所述装置包括:第二处理模块,用于响应于监测到所述接口服务组件对目标容器组的资源规格信息进行更新的事件,且确定所述目标容器组不具有原地更新标识,对所述目标容器组的更新后资源规格信息进行生效;所述目标容器组设置于所述节点代理组件所在工作节点上;其中,所述原地更新标识,是所述调度组件响应于监测到所述事件,且确定所述目标容器组具有所述原地更新标识,校验所述目标容器组是否满足原地更新条件后,确定所述目标容器组满足所述原地更新条件的情况下删除的。
9.根据本公开的另一方面,提供了一种容器集群管理系统,包括接口服务组件,用于对目标容器组的资源规格信息进行更新,并生成对所述目标容器组的资源规格信息进行更新的事件;调度组件,用于执行本公开第一方面实施例所述的集群资源伸缩方法;至少一个工作节点上的节点代理组件,用于执行本公开第二方面实施例所述的集群资源伸缩方法。
10.根据本公开的另一方面,提供了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本公开第一方面实施例所述的方法,或者执行本公开第二方面实施例所述的方法。
11.根据本公开的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行本公开第一方面实施例所述的方法,或者执行本公开第二方面实施例所述的方法。
12.根据本公开的另一方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现本公开上述第一方面实施例所述的方法,或者实现本公开上述第二方面实施例所述的方法。
13.本公开的技术方案,应用于容器集群管理系统中的调度组件,容器集群管理系统还包括接口服务组件以及至少一个工作节点上的节点代理组件,通过设置接口服务组件支持容器组的资源规格更新功能,调度组件响应于监测到接口服务组件对目标容器组的资源规格信息进行更新的事件,且确定目标容器组具有原地更新标识,校验目标容器组是否满足原地更新条件,在确定目标容器组满足原地更新条件的情况下,删除目标容器组具有的原地更新标识,以使目标容器组所在工作节点上的节点代理组件,响应于监测到事件,且确定目标容器组不具有原地更新标识,对目标容器组的更新后资源规格信息进行生效,从而能够通过容器集群管理系统中的调度组件与接口服务组件、节点代理组件协作实现集群资源的垂直伸缩,且由于无需删除当前正在运行的容器组,从而避免了当前正在运行的服务
被中断,在业务负载变化较快的场景下,仍能保证服务的质量,对容器组管理的灵活性高。
14.应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
15.附图用于更好地理解本方案,不构成对本公开的限定。其中:
16.图1为本公开实施例一所提供的集群资源伸缩方法的流程示意图;
17.图2为本公开实施例二所提供的集群资源伸缩方法的流程示意图;
18.图3为本公开实施例三所提供的集群资源伸缩方法的流程示意图;
19.图4为本公开实施例所提供的容器集群管理系统中各组件之间的交互示意图;
20.图5为本公开实施例四所提供的集群资源伸缩装置的流程示意图;
21.图6为本公开实施例五所提供的集群资源伸缩装置的流程示意图;
22.图7为本公开实施例六所提供的容器集群管理系统的结构图;
23.图8是根据一示例性实施例示出的一种电子设备的框图。
具体实施方式
24.以下结合附图对本公开的示范性实施例做出说明,其中包括本技术实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
25.本公开提出一种集群资源伸缩方法、装置、容器集群管理系统、电子设备及存储介质。其中,方法应用于容器集群管理系统中的调度组件,容器集群管理系统还包括接口服务组件以及至少一个工作节点上的节点代理组件,通过设置接口服务组件支持容器组的资源规格更新功能,调度组件响应于监测到接口服务组件对目标容器组的资源规格信息进行更新的事件,且确定目标容器组具有原地更新标识,校验目标容器组是否满足原地更新条件,在确定目标容器组满足原地更新条件的情况下,删除目标容器组具有的原地更新标识,以使目标容器组所在工作节点上的节点代理组件,响应于监测到事件,且确定目标容器组不具有原地更新标识,对目标容器组的更新后资源规格信息进行生效,从而能够通过容器集群管理系统中的调度组件与接口服务组件、节点代理组件协作实现集群资源的垂直伸缩,且由于无需删除当前正在运行的容器组,从而避免了当前正在运行的服务被中断,在业务负载变化较快的场景下,仍能保证服务的质量,对容器组管理的灵活性高。
26.可以理解的是,在自动驾驶技术领域,可以利用大量的人工智能算法模型实现相应的功能。比如,可以利用轨迹预测模型,预测车辆周围行人的行驶轨迹,或者利用图像识别模型识别车辆周围的环境图像,以确定车辆周围是否有障碍物等。其中,自动驾驶领域所使用的轨迹预测模型、图像识别模型等人工智能算法模型运行于机器学习平台,人工智能算法模型的训练过程及训练完成后的应用过程,需要调度机器学习平台的中央处理器(central processing unit,简称cpu)、内存等资源来实现。机器学习平台普遍使用k8s系统作为业务容器化的基础设施,而在k8s系统的资源调度过程中,相关技术为了解决资源碎片化问题而使用的vpa技术,在对集群资源进行垂直伸缩时,需要将当前正在运行的容器组
删除,这会导致该容器组中的服务中断,从而影响人工智能算法模型的训练效率及模型性能。
27.本公开实施例提出的集群资源伸缩方法可以应用于自动驾驶领域。比如,调度基于k8s的机器学习平台中的cpu、内存等资源,对自动驾驶领域所使用的人工智能算法模型进行训练的过程中,可以采用本公开实施例的集群资源伸缩方法,通过k8s系统中的调度组件与接口服务组件、节点代理组件协作,实现集群资源的原地垂直伸缩,由于能够根据容器资源使用率对资源进行垂直扩容,且过程中无需删除当前正在运行的容器组,避免了当前正在运行的服务被中断,从而能够提高人工智能算法模型的训练效率。在人工智能算法模型训练完成后的应用过程中,比如模型运算量很大的情况时,也可以采用本公开实施例的集群资源伸缩方法,通过k8s系统中的调度组件与接口服务组件、节点代理组件协作,实现集群资源的原地垂直扩容,且由于过程中无需删除当前正在运行的容器组,避免了当前正在运行的服务被中断,从而能够提高人工智能算法模型的模型性能,比如提高图像识别模型的识别效率、提高轨迹预测模型的轨迹预测效率等。
28.为了对本公开实施例进行清楚说明,首先对本公开实施例中涉及的技术名词进行解释。
29.容器组(pod),指一个由相关容器和卷组成的容器组,为k8s中的一种资源对象。
30.容器(container),是一种操作系统虚拟化形式。
31.节点(node),是一个运行着k8s相关模块的物理机或虚拟机,用户部署的应用可以在其上面被部署运行。其中,节点可以包括控制节点(或称主节点)以及工作节点(或称从节点)。
32.接口服务组件(kube-apiserver),为k8s最重要的核心组件之一,负责k8s各资源的认证和鉴权,校验等操作,同时也是k8s中其他模块(或组件)之间数据交互和通讯的枢纽。
33.调度组件(kube-scheduler),为k8s平台的资源调度组件,用于将用户部署的应用放置到合适的节点上。
34.节点代理组件(kubelet),为k8s中的重要组件,主要功能是获取用户部署的应用所期望的规格和状态,并调用相应的容器平台接口达到期望。
35.副本集控制组件(replicaset controller),是k8s中的一种pod副本控制器,主要作用是控制由其管理的pod,使pod副本的数量始终维持在预设的个数。副本集控制组件通过对副本集(replicaset)资源、pod两种资源对象的监测,当这两种资源对象发生变化时会触发副本集控制组件对相应的eplicaset资源对象进行调谐操作,从而完成replicaset期望副本数的调谐。
36.部署控制组件(deployment controller),为k8s中常用的对象类型,它解决了replicaset更新的诸多问题,实现了pod副本滚动更新、回滚以及扩容等高级功能。部署控制组件为部署(deployment)资源对应的控制器,可以管理副本集资源,副本集控制组件可以管理容器组。即,容器组可以由部署控制组件通过副本集控制组件进行管理。
37.vpa,根据容器资源使用率自动设置中央处理器(central processing unit,简称cpu)和内存的限制,从而允许在node上进行适当的调度,以便为每个pod提供适当的资源。vpa系统,为实现vpa技术的系统。
38.水平容器组自动扩缩容(horizontal pod autoscaler,简称hpa),是一种对k8s的pod副本数进行自动水平扩缩容机制,也是使用最广泛的一种自动扩缩容机制。
39.资源规格,是对用户所申请资源规格和模板的客观描述,资源规格主要用于规范用户对申请资源时的配置。
40.资源规格信息,可以包括cpu的limit(限制)和request(请求)、内存的limit和request、图像处理器(graphics processing unit,简称gpu)的limit和request、副本个数、亲和性等信息。其中,limit,为限制每个任务能够请求的最大资源数量;request,为请求的资源上限数量,即容器创建后至少给该容器的资源。
41.容器组的资源规格原地更新(或容器组的资源的原地垂直伸缩),指在不删除容器组的情况下,直接修改容器组的资源规格信息。
42.下面参考附图描述本公开实施例的集群资源伸缩方法、装置、容器集群管理系统、电子设备及存储介质。
43.图1为本公开实施例一所提供的集群资源伸缩方法的流程示意图。
44.本公开实施例提供的该集群资源伸缩方法,应用于容器集群管理系统中的调度组件,可以由集群资源伸缩装置执行,以实现集群资源的原地垂直伸缩,且避免当前正在运行的服务被中断,在业务负载变化较快的场景下,仍能保证服务的质量,提高容器组管理的灵活性。其中,该集群资源伸缩装置,可以为容器集群管理系统中的调度组件,也可以被配置在该调度组件中,本公开对此不作限制。本公开实施例以该集群资源伸缩装置,为容器集群管理系统中的调度组件为例进行说明。
45.其中,容器集群管理系统除了包括调度组件,还包括接口服务组件以及至少一个工作节点上的节点代理组件。接口服务组件支持容器组的资源规格更新功能。
46.可以理解的是,相关技术中的k8s系统,对于已创建的容器组,并不支持对容器组的资源规格信息进行修改,在接口服务组件接收到对容器组的资源规格信息进行修改的请求时,接口服务组件会报错。本公开实施例中,为了实现在不删除容器组的情况下,直接对容器组的资源规格信息进行修改,需要放开容器集群管理系统中,各组件对容器组的资源规格信息进行修改的限制,使得容器集群管理系统中各组件支持容器组的资源规格更新功能。
47.如图1所示,该集群资源伸缩方法可以包括以下步骤:
48.步骤101,响应于监测到接口服务组件对目标容器组的资源规格信息进行更新的事件,且确定目标容器组具有原地更新标识,校验目标容器组是否满足原地更新条件。
49.其中,目标容器组,为需要更新对应的资源规格信息的容器组,其可以为由部署控制组件通过副本集控制组件进行管理的一个或多个容器组,也可以为不由副本集控制组件管理的一个或多个容器组,本公开对此不作限制。
50.其中,原地更新标识,用于表示需要对对应的目标容器组的资源规格进行原地更新。即在不删除目标容器组的情况下,直接修改目标容器组的资源规格信息。
51.在示例实施例中,vpa系统根据容器资源使用率,确定目标容器组的资源规格信息需要更新时,可以为目标容器组创建原地更新标识,并向接口服务组件发送对目标容器组的资源规格信息的更新请求,更新请求中携带目标容器组的目标资源规格信息,即更新后资源规格信息,且目标容器组具有原地更新标识。接口服务组件接收到vpa系统发送的对目
标容器组的资源规格信息的更新请求后,即可根据目标资源规格信息,对目标容器组的资源规格信息进行更新,并产生对目标容器组的资源规格信息进行更新的事件。
52.调度组件可以实时监测接口服务组件中的事件,并响应于监测到接口服务组件对目标容器组的资源规格信息进行更新的事件,且确定目标容器组具有原地更新标识,校验目标容器组是否满足原地更新条件。
53.其中,原地更新条件,可以根据需要设置。比如,原地更新条件可以设置为:目标容器组所在工作节点中具有足够资源量。比如,更新后资源规格信息可以包括目标资源量,即目标容器组资源伸缩后的资源量,相应的,可以设置原地更新条件为,目标容器组所在工作节点中的可用资源量,不低于目标资源量。
54.需要说明的是,接口服务组件是k8s中其他组件之间数据交互和通讯的枢纽,其他组件可以从接口服务组件获取目标容器组的更新后资源规格信息等信息,并通过接口服务组件进行数据交互和通讯。相应的,本公开实施例中,调度组件可以从接口服务组件获取更新后资源规格信息中包括的目标资源量,并将调度组件中存储的目标容器组所在工作节点中的可用资源量,与目标资源量进行比较,从而校验目标容器组是否满足原地更新条件。
55.步骤102,在确定目标容器组满足原地更新条件的情况下,删除目标容器组具有的原地更新标识,以使目标容器组所在工作节点上的节点代理组件,响应于监测到事件,且确定目标容器组不具有原地更新标识,对目标容器组的更新后资源规格信息进行生效。
56.在示例实施例中,目标容器组所在工作节点上的节点代理组件,可以实时监测接口服务组件中的事件,在监测到接口服务组件对目标容器组的资源规格信息进行更新的事件,并确定目标容器组具有原地更新标识的情况下,表示调度组件还未完成对目标容器组是否满足原地更新条件的校验过程,此时目标容器组所在工作节点上的节点代理组件不执行动作。
57.在调度组件确定目标容器组满足原地更新条件的情况下,可以删除目标容器组具有的原地更新标识,并向接口服务组件发送通知消息,以使接口服务组件删除目标容器组具有的原地更新标识。相应的,目标容器组所在工作节点上的节点代理组件,响应于监测到接口服务组件对目标容器组的资源规格信息进行更新的事件,且确定目标容器组不具有原地更新标识,则可以对目标容器组的更新后资源规格信息进行生效。
58.由此,可以实现通过容器集群管理系统中的调度组件与接口服务组件、节点代理组件协作实现集群资源的原地垂直伸缩,且由于无需删除当前正在运行的容器组,从而避免了当前正在运行的服务被中断,在业务负载变化较快的场景下,仍能保证服务的质量,对容器组管理的灵活性高。
59.另外,可以理解的是,对集群资源进行垂直伸缩时,将正在运行的容器组删除,会导致该容器组上的业务负载转接到其它容器组上,从而导致运行在其它容器组上的服务的质量降低,因此通过删除容器组的方式来实现资源垂直伸缩的方法,会增加集群的扰动。而本公开实施例中的集群资源伸缩方法,由于无需删除当前正在运行的容器组,从而避免了集群的扰动。并且,由于无需删除正在运行的容器组,从而与hpa技术并不冲突,可以实现与hpa技术的兼容。
60.综上,本公开实施例提供的集群资源伸缩方法,通过设置接口服务组件支持容器组的资源规格更新功能,调度组件响应于监测到接口服务组件对目标容器组的资源规格信
息进行更新的事件,且确定目标容器组具有原地更新标识,校验目标容器组是否满足原地更新条件,在确定目标容器组满足原地更新条件的情况下,删除目标容器组具有的原地更新标识,以使目标容器组所在工作节点上的节点代理组件,响应于监测到事件,且确定目标容器组不具有原地更新标识,对目标容器组的更新后资源规格信息进行生效,从而能够通过容器集群管理系统中的调度组件与接口服务组件、节点代理组件协作实现集群资源的垂直伸缩,且由于无需删除当前正在运行的容器组,从而避免了当前正在运行的服务被中断,在业务负载变化较快的场景下,仍能保证服务的质量,对容器组管理的灵活性高。
61.需要说明的是,本公开实施例提出的集群资源伸缩方法可以应用于自动驾驶领域。比如,基于k8s系统的机器学习平台中,运行了图像识别模型等多个人工智能算法模型。在车辆的自动驾驶过程中,利用图像识别模型识别车辆周围的环境图像,以确定车辆周围是否有障碍物等时,需要调用机器学习平台中的cpu、内存等资源。
62.在环境图像数量增多的情况下,vpa系统可以确定需要增大目标容器组的cpu和内存的request,即目标容器组的资源规格信息需要更新,并向接口服务组件发送对目标容器组的资源规格信息的更新请求,更新请求中携带目标容器组的目标资源规格信息。接口服务组件接收到vpa系统发送的对目标容器组的资源规格信息的更新请求后,即可根据目标资源规格信息,对目标容器组的资源规格信息进行更新,并产生对目标容器组的资源规格信息进行更新的事件。调度组件响应于监测到接口服务组件对目标容器组的资源规格信息进行更新的事件,且确定目标容器组具有原地更新标识,可以校验目标容器组是否满足原地更新条件,并在确定目标容器组满足原地更新条件的情况下,删除目标容器组具有的原地更新标识,以使目标容器组所在工作节点上的节点代理组件,响应于监测到上述事件,且确定目标容器组不具有原地更新标识,对目标容器组的更新后资源规格信息进行生效。
63.由此,通过k8s系统中的调度组件与接口服务组件、节点代理组件协作,可以实现目标容器组的资源的原地垂直扩容,从而利用更多的资源进行图像识别,且由于过程中无需删除当前正在运行的容器组,避免了当前正在运行的服务被中断,从而提高了图像识别模型的识别效率。
64.下面结合图2,对本公开实施例提供的集群资源伸缩方法进行进一步说明。
65.图2为本公开实施例二所提供的集群资源伸缩方法的流程示意图。
66.如图2所示,该集群资源伸缩方法可包括如下步骤:
67.步骤201,响应于监测到接口服务组件对目标容器组的资源规格信息进行更新的事件,且确定目标容器组具有原地更新标识,校验目标容器组是否满足原地更新条件。
68.其中,更新后资源规格信息包括目标资源量;原地更新条件,可以包括:目标容器组所在工作节点中的可用资源量,不低于目标资源量。
69.在示例实施例中,容器集群管理系统还包括副本集控制组件及部署控制组件,目标容器组,为由部署控制组件通过副本集控制组件进行管理的一个或多个容器组的情况下,接口服务组件对目标容器组的资源规格信息进行更新的事件,可以是接口服务组件在接收到对部署资源的资源规格信息进行更新的请求之后生成的。
70.其中,接口服务组件生成对目标容器组的资源规格信息进行更新的事件的过程可以包括:
71.接口服务组件,根据接收到的对部署资源的资源规格信息进行更新的请求,对部
署资源的资源规格信息进行更新;其中,该请求可以为vpa系统发送的;
72.部署控制组件,响应于监测到接口服务组件对部署资源的资源规格信息进行更新,向接口服务组件发送对部署控制组件管理的副本集资源的资源规格信息的更新请求;
73.接口服务组件,响应于接收到对部署控制组件管理的副本集资源的资源规格信息的更新请求,对副本集资源的资源规格信息进行更新;
74.副本集控制组件,响应于监测到接口服务组件对副本集资源的资源规格信息进行更新,向接口服务组件发送对副本集控制组件管理的目标容器组的资源规格信息的更新请求;
75.接口服务组件,响应于接收到对副本集控制组件管理的目标容器组的资源规格信息的更新请求,对目标容器组的资源规格信息进行更新,并生成对目标容器组的资源规格信息进行更新的事件。
76.另外,部署控制组件,响应于监测到接口服务组件对部署资源的资源规格信息进行更新,可以为目标容器组创建原地更新标识,并在向接口服务组件发送对部署控制组件管理的副本集资源的资源规格信息的更新请求时,将原地更新标识同时发送至接口服务组件。
77.相应的,步骤201中的原地更新标识,可以是部署控制组件,响应于监测到接口服务组件对部署资源的资源规格信息进行更新,为目标容器组创建的。步骤201中的事件,可以是接口服务组件响应于接收到副本集控制组件发送的,对所管理的目标容器组的资源规格信息的更新请求,对目标容器组的资源规格信息进行更新而生成的;其中,更新请求,是副本集控制组件,响应于监测到接口服务组件对副本集资源的资源规格信息进行更新发送的。
78.需要说明的是,在接口服务组件根据接收到的对部署资源的资源规格信息进行更新的请求,生成对目标容器组的资源规格信息进行更新的事件的情况下,目标容器组,为副本集控制组件管理的所有容器组。在副本集控制组件管理的目标容器组的数量为多个的情况下,按照上述方式,依次对各目标容器组的资源规格信息进行更新。由此,通过不对各目标容器组的资源规格信息同时进行更新,可以保证业务不会中断。
79.步骤202,在确定目标容器组满足原地更新条件的情况下,删除目标容器组具有的原地更新标识,以使目标容器组所在工作节点上的节点代理组件,响应于监测到事件,且确定目标容器组不具有原地更新标识,对目标容器组的更新后资源规格信息进行生效。
80.其中,步骤202的具体实现过程及原理,可以参考上述实施例的描述,此处不再赘述。
81.步骤203,在确定目标容器组满足原地更新条件的情况下,更新已存储的目标容器组的资源规格信息,以及更新已存储的目标容器组所在工作节点中的可用资源量。
82.在示例实施例中,调度组件可以在确定目标容器组满足原地更新条件的情况下,将之前已存储的目标容器组的资源规格信息,更新为目标容器组的更新后资源规格信息,并利用之前已存储的目标容器组所在工作节点中的可用资源量,与目标容器组的更新后资源规格信息,确定目标容器组的资源规格信息更新后的该工作节点中的可用资源量,并利用确定的该工作节点中的可用资源量,更新之前已存储的目标容器组所在工作节点中的可用资源量,从而实现对目标容器组所在工作节点中的可用资源量以及目标容器组资源规格
信息的实时更新。
83.步骤204,在确定目标容器组不满足原地更新条件的情况下,删除目标容器组,以使副本集控制组件根据目标容器组的更新后资源规格信息,创建对应的容器组。
84.在示例实施例中,对于不满足原地更新条件的目标容器组,调度组件可以删除目标容器组,并向即可服务组件发送通知消息。相应的,管理该目标容器组的副本集控制组件可以从接口服务组件监测到该目标容器组被删除,进而根据目标容器组的更新后资源规格信息创建对应的容器组。其中,删除目标容器组后,根据目标容器组的更新后资源规格信息,创建对应的容器组的过程,可以参考相关技术,此处不再赘述。
85.综上,调度组件响应于监测到接口服务组件对目标容器组的资源规格信息进行更新的事件,且确定目标容器组具有原地更新标识,校验目标容器组是否满足原地更新条件,在确定目标容器组满足原地更新条件的情况下,删除目标容器组具有的原地更新标识,以使目标容器组所在工作节点上的节点代理组件,响应于监测到事件,且确定目标容器组不具有原地更新标识,对目标容器组的更新后资源规格信息进行生效,并更新已存储的目标容器组的资源规格信息,以及更新已存储的目标容器组所在工作节点中的可用资源量,在确定目标容器组不满足原地更新条件的情况下,删除目标容器组,以使副本集控制组件根据目标容器组的更新后资源规格信息,创建对应的容器组,从而能够通过容器集群管理系统中的调度组件与接口服务组件、节点代理组件协作,灵活实现集群资源的原地垂直伸缩或非原地垂直伸缩,避免在目标容器组不满足原地更新条件的情况下,长时间等待对目标容器组的资源规格信息进行原地更新而影响服务的质量。
86.本公开实施例还提供一种集群资源伸缩方法,该集群资源伸缩方法,应用于容器集群管理系统中的节点代理组件,可以由集群资源伸缩装置执行,以实现集群资源的原地垂直伸缩,且避免当前正在运行的服务被中断,在业务负载变化较快的场景下,仍能保证服务的质量,提高容器组管理的灵活性。下面对应用于容器集群管理系统中的节点代理组件中的集群资源伸缩方法进行说明。
87.其中,该集群资源伸缩装置,可以为容器集群管理系统中的节点代理组件,也可以被配置在该节点代理组件中,本公开对此不作限制。本公开实施例以该集群资源伸缩装置,为容器集群管理系统中的节点代理组件为例进行说明。
88.其中,容器集群管理系统还包括接口服务组件以及调度组件;接口服务组件支持容器组的资源规格更新功能。
89.图3为本公开实施例三所提供的集群资源伸缩方法的流程示意图。
90.如图3所示,该集群资源伸缩方法可包括如下步骤:
91.步骤301,响应于监测到接口服务组件对目标容器组的资源规格信息进行更新的事件,且确定目标容器组不具有原地更新标识,对目标容器组的更新后资源规格信息进行生效;目标容器组设置于节点代理组件所在工作节点上。
92.其中,原地更新标识,是调度组件响应于监测到事件,且确定目标容器组具有原地更新标识,校验目标容器组是否满足原地更新条件后,确定目标容器组满足原地更新条件的情况下删除的。
93.其中,目标容器组,为需要更新对应的资源规格信息的容器组,其可以为由部署控制组件通过副本集控制组件进行管理的一个或多个容器组,也可以为不由副本集控制组件
管理的一个或多个容器组,本公开对此不作限制。
94.其中,原地更新标识,用于表示需要对对应的目标容器组的资源规格进行原地更新。即在不删除目标容器组的情况下,直接修改目标容器组的资源规格信息。
95.在示例实施例中,接口服务组件对目标容器组的资源规格信息进行更新的事件,可以是接口服务组件根据vpa系统向接口服务组件发送的,对目标容器组的资源规格信息的更新请求生成的,也可以是接口服务组件在接收到对部署资源的资源规格信息进行更新的请求之后生成的,本公开对此不作限制。
96.其中,步骤301的具体实现过程,可以参考上述实施例的描述,此处不再赘述。
97.在示例实施例中,节点代理组件可以调用相关的接口,比如容器运行时接口(container runtime interface,简称cri),实现对目标容器组的更新后资源规格信息的生效。
98.在示例实施例中,目标容器组中包括多个容器;步骤301中对目标容器组的更新后资源规格信息进行生效,可以包括:
99.根据目标容器组的更新后资源规格信息,依次更新目标容器组中各容器的资源规格信息,以及更新目标容器组的资源规格信息。
100.其中,目标容器组中各容器的更新后资源规格信息,可以根据目标容器组的更新后资源规格信息确定。比如,根据目标容器组的limit和request,以及目标容器组中各容器的limit之和等于目标容器组的limit,目标容器组中各容器的request之和等于目标容器组的request,可以确定目标容器组中各容器组的limit和request。
101.在示例实施例中,容器的资源规格信息可以包括内存的资源规格信息,由于内存为不可压缩资源,回收需要时间,则在更新容器的内存的资源规格信息时,可以通过阶梯式的更新方式,逐次更新内存的资源规格信息。相应的,依次更新目标容器组中各容器的资源规格信息,可以包括:对于每个容器,通过阶梯式的更新方式,逐次更新内存的资源规格信息。
102.其中,假设更新后内存的资源规格信息包括目标内存,阶梯式的更新方式,即每次仅增大或缩小预设大小的内存,直至将内存更新至目标内存。
103.在示例实施例中,节点代理组件在对目标容器组的更新后资源规格信息进行生效后,可以将目标容器组的状态信息发送至接口服务组件。其中,状态信息可以包括表示目标容器组的资源规格信息是否更新成功的信息,以及目标容器组的更新后资源规格信息等。
104.综上,本公开实施例提供的集群资源伸缩方法,通过设置接口服务组件支持容器组的资源规格更新功能,节点代理组件响应于监测到接口服务组件对目标容器组的资源规格信息进行更新的事件,且确定目标容器组不具有原地更新标识,对目标容器组的更新后资源规格信息进行生效;目标容器组设置于节点代理组件所在工作节点上;原地更新标识,是调度组件响应于监测到事件,且确定目标容器组具有原地更新标识,校验目标容器组是否满足原地更新条件后,确定目标容器组满足原地更新条件的情况下删除的,从而能够通过容器集群管理系统中的调度组件与接口服务组件、节点代理组件协作实现集群资源的垂直伸缩,且由于无需删除当前正在运行的容器组,从而避免了当前正在运行的服务被中断,在业务负载变化较快的场景下,仍能保证服务的质量,对容器组管理的灵活性高。
105.需要说明的是,本公开实施例提出的集群资源伸缩方法可以应用于自动驾驶领
域。比如,基于k8s系统的机器学习平台中,运行了轨迹预测模型等多个人工智能算法模型。在车辆的自动驾驶过程中,利用轨迹预测模型预测车辆周围行人的行驶轨迹时,需要调用机器学习平台中的cpu、内存等资源。
106.在车辆周围行人的数量增多的情况下,vpa系统可以确定需要增大目标容器组的cpu和内存的request,即目标容器组的资源规格信息需要更新,并向接口服务组件发送对目标容器组的资源规格信息的更新请求,更新请求中携带目标容器组的目标资源规格信息。接口服务组件接收到vpa系统发送的对目标容器组的资源规格信息的更新请求后,即可根据目标资源规格信息,对目标容器组的资源规格信息进行更新,并产生对目标容器组的资源规格信息进行更新的事件。调度组件响应于监测到接口服务组件对目标容器组的资源规格信息进行更新的事件,且确定目标容器组具有原地更新标识,可以校验目标容器组是否满足原地更新条件,并在确定目标容器组满足原地更新条件的情况下,删除目标容器组具有的原地更新标识。目标容器组所在工作节点上的节点代理组件,响应于监测到上述事件,且确定目标容器组不具有原地更新标识,即可对目标容器组的更新后资源规格信息进行生效。
107.由此,通过k8s系统中的调度组件与接口服务组件、节点代理组件协作,可以实现目标容器组的资源的原地垂直扩容,从而利用更多的资源对车辆周围行人的轨迹进行预测,且由于过程中无需删除当前正在运行的容器组,避免了当前正在运行的服务被中断,从而提高了轨迹预测模型的轨迹预测效率。
108.下面结合图4,对本公开实施例中容器集群管理系统中各组件协作实现集群资源伸缩方法的过程进行说明。
109.参考图4,容器集群管理系统中包括调度组件、接口服务组件、副本集控制组件、部署控制组件以及某个工作节点上的节点代理组件。其中,图4中为了便于表示,将部署控制组件和副本集控制组件统称为控制组件。
110.接口服务组件响应于接收到对部署资源的资源规格信息的更新请求(步骤401),可以对部署资源的资源规格信息进行更新(步骤402)。部署控制组件,响应于监测到接口服务组件对部署资源的资源规格信息进行更新(步骤403),可以与副本集控制组件协作更新目标容器组的资源规格信息,并为目标容器组创建原地更新标识(步骤404)。具体的,部署控制组件可以向接口服务组件发送对部署控制组件管理的副本集资源的资源规格信息的更新请求(步骤405),接口服务组件响应于接收到对部署控制组件管理的副本集资源的资源规格信息的更新请求,可以对副本集资源的资源规格信息进行更新。副本集控制组件,响应于监测到接口服务组件对副本集资源的资源规格信息进行更新(步骤403),可以向接口服务组件发送对副本集控制组件管理的目标容器组的资源规格信息的更新请求(步骤405)。接口服务组件响应于接收到对副本集控制组件管理的目标容器组的资源规格信息的更新请求,可以对目标容器组的资源规格信息进行更新,并生成对目标容器组的资源规格信息进行更新的事件。
111.调度组件响应于监测到接口服务组件对目标容器组的资源规格信息进行更新的事件(步骤406),且确定目标容器组具有原地更新标识,可以校验目标容器组是否满足原地更新条件,在确定目标容器组满足原地更新条件的情况下,可以删除目标容器组具有的原地更新标识,并且更新已存储的目标容器组的资源规格信息,以及更新已存储的目标容器
组所在工作节点中的可用资源量(步骤407),并且,调度组件可以向接口服务组件返回通知消息(步骤408)。
112.目标容器组所在工作节点上的节点代理组件,响应于监测到接口服务组件对目标容器组的资源规格信息进行更新的事件(步骤409),且确定目标容器组不具有原地更新标识,可以对目标容器组的更新后资源规格信息进行生效(步骤410),并向接口服务组件返回目标容器组的状态信息(步骤411)。
113.由此,通过设置接口服务组件支持容器组的资源规格更新功能,调度组件响应于监测到接口服务组件对目标容器组的资源规格信息进行更新的事件,且确定目标容器组具有原地更新标识,校验目标容器组是否满足原地更新条件,在确定目标容器组满足原地更新条件的情况下,删除目标容器组具有的原地更新标识,以使目标容器组所在工作节点上的节点代理组件,响应于监测到事件,且确定目标容器组不具有原地更新标识,对目标容器组的更新后资源规格信息进行生效,从而能够通过容器集群管理系统中的调度组件与接口服务组件、节点代理组件协作实现集群资源的垂直伸缩,且由于无需删除当前正在运行的容器组,从而避免了当前正在运行的服务被中断,在业务负载变化较快的场景下,仍能保证服务的质量,对容器组管理的灵活性高。
114.为了实现上述实施例,本公开提出一种集群资源伸缩装置。
115.图5为本公开实施例四所提供的集群资源伸缩装置的流程示意图。
116.如图5所示,该集群资源伸缩装置500应用于容器集群管理系统中的调度组件,容器集群管理系统还包括接口服务组件以及至少一个工作节点上的节点代理组件;接口服务组件支持容器组的资源规格更新功能;集群资源伸缩装置500包括:校验模块510和第一处理模块520。
117.其中,校验模块510,用于响应于监测到接口服务组件对目标容器组的资源规格信息进行更新的事件,且确定目标容器组具有原地更新标识,校验目标容器组是否满足原地更新条件;
118.第一处理模块520,用于在确定目标容器组满足原地更新条件的情况下,删除目标容器组具有的原地更新标识,以使目标容器组所在工作节点上的节点代理组件,响应于监测到事件,且确定目标容器组不具有原地更新标识,对目标容器组的更新后资源规格信息进行生效。
119.其中,该集群资源伸缩装置500可以为容器集群管理系统中的调度组件,也可以被配置在该调度组件中,本公开对此不作限制。
120.作为本公开实施例的一种可能的实现方式,容器集群管理系统还包括副本集控制组件及部署控制组件;目标容器组,由部署控制组件通过副本集控制组件进行管理;
121.原地更新标识,是部署控制组件,响应于监测到接口服务组件对部署资源的资源规格信息进行更新,为目标容器组创建的;
122.事件,是接口服务组件响应于接收到副本集控制组件发送的,对所管理的目标容器组的资源规格信息的更新请求,对目标容器组的资源规格信息进行更新而生成的;更新请求,是副本集控制组件,响应于监测到接口服务组件对副本集资源的资源规格信息进行更新发送的。
123.作为本公开实施例的一种可能的实现方式,更新后资源规格信息包括目标资源
量;原地更新条件,包括:
124.目标容器组所在工作节点中的可用资源量,不低于目标资源量。
125.作为本公开实施例的一种可能的实现方式,集群资源伸缩装置500还包括:
126.更新模块,用于在确定目标容器组满足原地更新条件的情况下,更新已存储的目标容器组的资源规格信息,以及更新已存储的目标容器组所在工作节点中的可用资源量。
127.作为本公开实施例的一种可能的实现方式,集群资源伸缩装置500还包括:
128.删除模块,用于在确定目标容器组不满足原地更新条件的情况下,删除目标容器组,以使副本集控制组件根据目标容器组的更新后资源规格信息,创建对应的容器组。
129.其中,上述实施例对应用于调度组件中的集群资源伸缩方法的解释说明,也适用于本公开实施例提供的集群资源伸缩装置,此处不再赘述。
130.本公开实施例的集群资源伸缩装置,通过设置接口服务组件支持容器组的资源规格更新功能,集群资源伸缩装置响应于监测到接口服务组件对目标容器组的资源规格信息进行更新的事件,且确定目标容器组具有原地更新标识,校验目标容器组是否满足原地更新条件,在确定目标容器组满足原地更新条件的情况下,删除目标容器组具有的原地更新标识,以使目标容器组所在工作节点上的节点代理组件,响应于监测到事件,且确定目标容器组不具有原地更新标识,对目标容器组的更新后资源规格信息进行生效,从而能够通过容器集群管理系统中的调度组件与接口服务组件、节点代理组件协作实现集群资源的垂直伸缩,且由于无需删除当前正在运行的容器组,从而避免了当前正在运行的服务被中断,在业务负载变化较快的场景下,仍能保证服务的质量,对容器组管理的灵活性高。
131.为了实现上述实施例,本公开提出另一种集群资源伸缩装置。
132.图6为本公开实施例五所提供的集群资源伸缩装置的流程示意图。
133.如图6所示,该集群资源伸缩装置600应用于容器集群管理系统中的节点代理组件,容器集群管理系统还包括接口服务组件以及调度组件;接口服务组件支持容器组的资源规格更新功能;
134.集群资源伸缩装置600包括:第二处理模块610,用于响应于监测到接口服务组件对目标容器组的资源规格信息进行更新的事件,且确定目标容器组不具有原地更新标识,对目标容器组的更新后资源规格信息进行生效;目标容器组设置于节点代理组件所在工作节点上;
135.其中,原地更新标识,是调度组件响应于监测到事件,且确定目标容器组具有原地更新标识,校验目标容器组是否满足原地更新条件后,确定目标容器组满足原地更新条件的情况下删除的。
136.其中,该集群资源伸缩装置600,可以为容器集群管理系统中的节点代理组件,也可以被配置在该节点代理组件中,本公开对此不作限制。
137.作为本公开实施例的一种可能的实现方式,第二处理模块610,包括:
138.处理单元,用于根据目标容器组的更新后资源规格信息,依次更新目标容器组中各容器的资源规格信息,以及更新目标容器组的资源规格信息。
139.作为本公开实施例的一种可能的实现方式,容器的资源规格信息包括内存的资源规格信息;处理单元,用于:
140.对于每个容器,通过阶梯式的更新方式,逐次更新内存的资源规格信息。
141.其中,上述实施例对应用于节点代理组件中的集群资源伸缩方法的解释说明,也适用于本公开实施例提供的集群资源伸缩装置,此处不再赘述。
142.本公开实施例的集群资源伸缩装置,通过设置接口服务组件支持容器组的资源规格更新功能,响应于监测到接口服务组件对目标容器组的资源规格信息进行更新的事件,且确定目标容器组不具有原地更新标识,对目标容器组的更新后资源规格信息进行生效;目标容器组设置于节点代理组件所在工作节点上;原地更新标识,是调度组件响应于监测到事件,且确定目标容器组具有原地更新标识,校验目标容器组是否满足原地更新条件后,确定目标容器组满足原地更新条件的情况下删除的,从而能够通过容器集群管理系统中的调度组件与接口服务组件、节点代理组件协作实现集群资源的垂直伸缩,且由于无需删除当前正在运行的容器组,从而避免了当前正在运行的服务被中断,在业务负载变化较快的场景下,仍能保证服务的质量,对容器组管理的灵活性高。
143.为了实现上述实施例,本公开提出一种容器集群管理系统。图7为本公开实施例六所提供的容器集群管理系统的结构图。
144.如图7所示,容器集群管理系统包括:接口服务组件710、调度组件720、至少一个工作节点730上的节点代理组件740。其中,图7中以工作节点为2个为例进行示意。
145.接口服务组件710,用于对目标容器组的资源规格信息进行更新,并生成对目标容器组的资源规格信息进行更新的事件;
146.调度组件720,用于执行第一方面实施例的集群资源伸缩方法;
147.至少一个工作节点730上的节点代理组件740,用于执行第二方面实施例的集群资源伸缩方法。
148.作为本公开实施例的一种可能的实现方式,容器集群管理系统还包括:部署控制组件及副本集控制组件;目标容器组,由部署控制组件通过副本集控制组件进行管理;
149.部署控制组件,用于响应于监测到接口服务组件710对部署资源的资源规格信息进行更新,向接口服务组件710发送对部署控制组件管理的副本集资源的资源规格信息的更新请求;
150.副本集控制组件,用于响应于监测到接口服务组件710对副本集资源的资源规格信息进行更新,向接口服务组件710发送对副本集控制组件管理的目标容器组的资源规格信息的更新请求;
151.接口服务组件710,还用于响应于接收到对部署控制组件管理的副本集资源的资源规格信息的更新请求,对副本集资源的资源规格信息进行更新,以及响应于接收到对副本集控制组件管理的目标容器组的资源规格信息的更新请求,对目标容器组的资源规格信息进行更新。
152.其中,上述实施例中关于集群资源伸缩方法的实施例的说明,也适用于本公开实施例中的容器集群管理系统,此处不再赘述。
153.本公开实施例的容器集群管理系统,通过设置接口服务组件支持容器组的资源规格更新功能,调度组件响应于监测到接口服务组件对目标容器组的资源规格信息进行更新的事件,且确定目标容器组具有原地更新标识,校验目标容器组是否满足原地更新条件,在确定目标容器组满足原地更新条件的情况下,删除目标容器组具有的原地更新标识,目标容器组所在工作节点上的节点代理组件,响应于监测到事件,且确定目标容器组不具有原
地更新标识,对目标容器组的更新后资源规格信息进行生效,从而能够通过容器集群管理系统中的调度组件与接口服务组件、节点代理组件协作实现集群资源的垂直伸缩,且由于无需删除当前正在运行的容器组,从而避免了当前正在运行的服务被中断,在业务负载变化较快的场景下,仍能保证服务的质量,对容器组管理的灵活性高。
154.为了实现上述实施例,本公开提出一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述实施例所述的集群资源伸缩方法。
155.为了实现上述实施例,本公开还提出一种存储有计算机指令的非瞬时计算机可读存储介质,计算机指令用于使所述计算机执行上述实施例所述的集群资源伸缩方法。
156.为了实现上述实施例,本公开还提出一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现上述实施例所述的集群资源伸缩方法。
157.为了实现上述实施例,本公开提出一种电子设备。
158.图8是根据一示例性实施例示出的一种电子设备的框图。例如,电子设备800可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
159.参照图8,终端设备800可以包括以下一个或多个组件:处理组件802,存储器804,电力组件806,多媒体组件808,音频组件810,输入/输出接口812,传感器组件814,以及通信组件816。
160.处理组件802通常控制电子设备800的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件802可以包括一个或多个处理器820来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件802可以包括一个或多个模块,便于处理组件802和其他组件之间的交互。例如,处理组件802可以包括多媒体模块,以方便多媒体组件808和处理组件802之间的交互。
161.存储器804被配置为存储各种类型的数据以支持在电子设备800的操作。这些数据的示例包括用于在电子设备800上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器804可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(sram),电可擦除可编程只读存储器(eeprom),可擦除可编程只读存储器(eprom),可编程只读存储器(prom),只读存储器(rom),磁存储器,快闪存储器,磁盘或光盘。
162.电力组件806为电子设备800的各种组件提供电力。电力组件806可以包括电源管理系统,一个或多个电源,及其他与为电子设备800生成、管理和分配电力相关联的组件。
163.多媒体组件808包括在所述电子设备800和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(lcd)和触摸面板(tp)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件808包括一个前置摄像头和/或后置摄像头。当电子设备800处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置
摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
164.音频组件810被配置为输出和/或输入音频信号。例如,音频组件810包括一个麦克风(mic),当电子设备800处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器804或经由通信组件816发送。在一些实施例中,音频组件810还包括一个扬声器,用于输出音频信号。
165.输入/输出接口812为处理组件802和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
166.传感器组件814包括一个或多个传感器,用于为电子设备800提供各个方面的状态评估。例如,传感器组件814可以检测到电子设备800的打开/关闭状态,组件的相对定位,例如所述组件为电子设备800的显示器和小键盘,传感器组件814还可以检测电子设备800或电子设备800一个组件的位置改变,用户与电子设备800接触的存在或不存在,电子设备800方位或加速/减速和电子设备800的温度变化。传感器组件814可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件814还可以包括光传感器,如cmos或ccd图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件814还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
167.通信组件816被配置为便于电子设备800和其他设备之间有线或无线方式的通信。电子设备800可以接入基于通信标准的无线网络,如wifi,4g或5g,或它们的组合。在一个示例性实施例中,通信组件816经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件816还包括近场通信(nfc)模块,以促进短程通信。例如,在nfc模块可基于射频识别(rfid)技术,红外数据协会(irda)技术,超宽带(uwb)技术,蓝牙(bt)技术和其他技术来实现。
168.在示例性实施例中,电子设备800可以被一个或多个应用专用集成电路(asic)、数字信号处理器(dsp)、数字信号处理设备(dspd)、可编程逻辑器件(pld)、现场可编程门阵列(fpga)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述任一实施例所述的方法。
169.在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器804,上述指令可由电子设备800的处理器820执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是rom、随机存取存储器(ram)、cd-rom、磁带、软盘和光数据存储设备等。
170.在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本公开的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
171.此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者
隐含地包括至少一个该特征。在本公开的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
172.流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本公开的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本公开的实施例所属技术领域的技术人员所理解。
173.在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式光盘只读存储器(cdrom)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
174.应当理解,本公开的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。
175.本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
176.此外,在本公开各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
177.上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本公开的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本公开的限制,本领域的普通技术人员在本公开的范围内可以对上述实施例进行变化、修改、替换和变型。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1