一种部署pod的方法及装置制造方法及图纸

技术编号:28836688 阅读:63 留言:0更新日期:2021-06-11 23:33
本申请涉及云计算技术领域,公开了一种部署pod的方法及装置,解决按照pod中容器在工作时使用的资源的最大值来为pod分配资源造成资源浪费的问题。管理节点接收部署调度域的指令,指令包括调度域占用的每种类型的资源的数量;选择用于部署调度域的业务节点,并向业务节点发送部署调度域的指令,指令包括调度域占用的每种类型的资源的数量;根据调度域的关联信息,向业务节点发送部署pod的指令,指令包括pod的数量,每个pod包括的容器的数量,用于pod使用资源的调度域的标识。不必再按照pod中每个容器在工作时使用的资源的最大值来为pod分配资源。多个pod均可以使用调度域中的资源,可以减少资源的浪费。

【技术实现步骤摘要】
一种部署pod的方法及装置
本申请实施例涉及云计算
,尤其涉及一种部署pod的方法及装置。
技术介绍
各种虚拟机技术开启了云计算时代,而容器作为下一代虚拟化技术,正在逐渐兴起。容器是一个虚拟环境容器,可以看做一种轻量级的虚拟机,两者都可以对应用进行隔离。但容器不同于虚拟机,两者的主要区别在于:虚拟机依赖于虚拟机管理系统(Hypervisor),利用Hypervisor,在主操作系统之上运行多个不同的从操作系统,每个从操作系统可以看作是一个虚拟机,而容器由容器引擎管理。虚拟机启动需要数分钟,而容器可以在数毫秒内启动。目前,在容器编排领域,最流行的是kubernetes(K8S)容器集群管理系统(以下简称管理系统)。K8S可以构建容器的部署服务,pod是K8S的基本部署单位,一个pod由一组工作在同一节点的容器构成。在现有技术中,管理人员向管理系统下发部署pod的指令,指令中可以包括:pod的数量,每个pod包含的容器的数量,每个容器在工作时使用的每种类型的资源的最大值等信息。以部署一个pod为例,说明为pod分配资源的方式:针对每种类型的资源,管理系统确定pod包含的多个容器在工作时使用该种类型的资源的最大值的和值,所述和值即pod使用该种类型的资源的理论资源值。管理系统挑选合适的业务节点部署pod,业务节点为部署的pod分配对应理论资源值的资源。例如一个pod包括两个容器,一个容器a在工作时,理论上最多使用2个cpu,另一容器b在工作时,理论上最多使用1个cpu,则业务节点为该pod分配3个cpu。如果两个容器在不同时间点使用资源,理论上业务节点为该pod分配2个cpu就足够容器a和容器b够用,则按照每个容器在工作时使用的资源的最大值来分配3个cpu,会造成资源浪费。
技术实现思路
本申请实施例提供一种部署pod的方法及装置,用以解决目前按照pod中每个容器在工作时使用的资源的最大值来为pod分配资源,而造成资源浪费的问题。第一方面,提供了一种部署pod的方法,可以应用于管理节点。管理节点可以接收管理人员或租户或者用户下发的部署调度域的指令,所述指令包括调度域占用的每种类型的资源的数量,所述调度域占用的资源用于至少一个pod使用。然后,管理节点选择用于部署调度域的业务节点,并向所述业务节点发送部署调度域的指令,所述指令包括调度域占用的每种类型的资源的数量。管理节点接收部署pod的指令,所述指令包括pod的数量,每个pod包括的容器的数量,以及调度域的关联信息。进一步地,管理节点根据所述调度域的关联信息,向所述业务节点发送部署pod的指令,所述指令包括pod的数量,每个pod包括的容器的数量,以及用于所述pod使用资源的调度域的标识。需要注意的是,管理节点接收部署调度域的指令与接收部署pod的指令的先后顺序可以不限制。通过先在业务节点上部署调度域,为pod预留一部分资源。进而,在部署pod时,使pod使用调度域中的资源,不必再按照pod中每个容器在工作时使用的资源的最大值来为pod分配资源。多个pod中的容器均可以使用调度域中的资源,从而减少资源的浪费。在一种可能的实现中,针对所述用于所述pod使用的调度域占用的任一类型的资源,该资源的数量小于所有的所述容器在工作时需要该类型的资源的最大值的和值,且不小于任一所述容器在工作时需要该类型的资源的最大值,保证能够支持所有的所述容器在不同时间点工作时的正常工作。以进一步减少资源浪费。在一种可能的实现中,所述调度域的关联信息为调度域的标识或调度域的类型或业务节点的标识。则管理节点可以根据调度域的标识或调度域的类型或业务节点的标识,确定出部署pod的业务节点以及调度域。通过多种方式,可以灵活地确定出用于部署pod的业务节点以及调度域,提高体验效果。在一种可能的实现中,管理节点在向所述业务节点发送部署调度域的指令之后,可以对资源列表中所述业务节点中每种类型的资源的剩余量进行更新,以及对资源池中每种类型的资源的剩余量进行更新,资源池中包括多个业务节点。以实现正确记录资源的使用情况,进一步提高资源利用率。在一种可能的实现中,管理节点可以根据资源最优策略,在多个业务节点中选择用于部署调度域的业务节点;或者,管理节点接收到的部署调度域的指令中还包括业务节点的标识,管理节点可以将所述标识对应的业务节点作为用于部署调度域的业务节点。在一种可能的实现中,如果调度域占用的每种类型的资源的数量包括调度域占用的cpu的数量;管理节点接收到的部署调度域的指令还可以包括:用于pod中的容器隔离使用的cpu的数量和/或用于pod中的容器共享使用的cpu的数量。管理节点接收的部署pod的指令也可以包括:与其它容器隔离使用cpu的第一容器标识。这样,业务节点将调度域中的对应数量的cpu分配给第一容器独享,第一容器与其它容器不会共享这些cpu,可以提高第一容器的性能。在一种可能的实现中,管理节点可以接收删除调度域的指令,所述指令包括调度域的标识。然后管理节点确定是否存在pod使用所述标识的调度域中的资源;如果存在,则发出不能删除所述调度域的提示信息;如果不存在,则可以向部署所述调度域的业务节点发送删除所述调度域的指令。管理节点向业务节点发送的删除调度域的指令中包括待删除的调度域的标识。第二方面,提供了一种部署pod的方法,可以应用于业务节点。业务节点可以接收管理节点发送的部署调度域的指令,所述指令包括调度域占用的每种类型的资源的数量,然后所述业务节点根据所述部署调度域的指令,部署所述调度域,部署的所述调度域中包括对应数量的对应类型的资源。业务节点还可以接收管理节点发送的部署pod的指令,所述部署pod的指令可以包括pod的数量,每个pod包括的容器的数量,以及用于所述pod使用资源的调度域的标识。然后业务节点可以部署对应数量的pod,每个pod包括对应数量的容器。并且业务节点控制任一所述容器在工作时使用所述调度域中的资源。通过先在业务节点上部署调度域,为pod预留一部分资源。进而,在部署pod时,使pod使用调度域中的资源,不必再按照pod中每个容器在工作时使用的资源的最大值来为pod分配资源。多个pod中的容器均可以使用调度域中的资源,从而减少资源的浪费。在一种可能的实现中,针对所述用于所述pod使用的调度域占用的任一类型的资源,该资源的数量小于所有的所述容器在工作时需要该类型的资源的最大值的和值,且不小于任一所述容器在工作时需要该类型的资源的最大值,保证能够支持所有的所述容器在不同时间点工作时的正常工作。以进一步减少资源量浪费。在一种可能的实现中,如果调度域占用的每种类型的资源的数量包括调度域占用的cpu的数量;业务节点接收到的部署调度域的指令还可以包括:用于pod中的容器隔离使用的cpu的数量和/或用于pod中的容器共享使用的cpu的数量。业务节点接收的部署pod的指令也可以包括:与其它容器隔离使用cpu的第一容器标识。接而,所述业务节点控制所述第一容器在工作时使用所述调度域中的用于隔离使用的cpu,并本文档来自技高网
...

【技术保护点】
1.一种部署pod的方法,其特征在于,所述方法包括:/n管理节点接收部署调度域的指令,所述指令包括调度域占用的每种类型的资源的数量,所述调度域占用的资源用于至少一个pod使用;/n管理节点选择用于部署调度域的业务节点,并向所述业务节点发送部署调度域的指令,所述指令包括调度域占用的每种类型的资源的数量;/n管理节点接收部署pod的指令,所述指令包括pod的数量,每个pod包括的容器的数量,以及调度域的关联信息;/n管理节点根据所述调度域的关联信息,向所述业务节点发送部署pod的指令,所述指令包括pod的数量,每个pod包括的容器的数量,以及用于所述pod使用资源的调度域的标识。/n

【技术特征摘要】
1.一种部署pod的方法,其特征在于,所述方法包括:
管理节点接收部署调度域的指令,所述指令包括调度域占用的每种类型的资源的数量,所述调度域占用的资源用于至少一个pod使用;
管理节点选择用于部署调度域的业务节点,并向所述业务节点发送部署调度域的指令,所述指令包括调度域占用的每种类型的资源的数量;
管理节点接收部署pod的指令,所述指令包括pod的数量,每个pod包括的容器的数量,以及调度域的关联信息;
管理节点根据所述调度域的关联信息,向所述业务节点发送部署pod的指令,所述指令包括pod的数量,每个pod包括的容器的数量,以及用于所述pod使用资源的调度域的标识。


2.如权利要求1所述的方法,其特征在于,针对所述用于所述pod使用的调度域占用的任一类型的资源,该资源的数量小于所有的所述容器在工作时需要该类型的资源的最大值的和值,且不小于任一所述容器在工作时需要该类型的资源的最大值。


3.如权利要求1或2所述的方法,其特征在于,所述调度域的关联信息为调度域的标识或调度域的类型或业务节点的标识。


4.如权利要求1-3任一项所述的方法,其特征在于,管理节点在向所述业务节点发送部署调度域的指令之后,还包括:
管理节点对资源列表中所述业务节点中每种类型的资源的剩余量进行更新,以及对资源池中每种类型的资源的剩余量进行更新,资源池中包括多个业务节点。


5.如权利要求1-4任一项所述的方法,其特征在于,管理节点选择用于部署调度域的业务节点,包括:
管理节点根据资源最优策略,在多个业务节点中选择用于部署调度域的业务节点;或者,
管理节点接收到的部署调度域的指令中还包括业务节点的标识,管理节点将所述标识对应的业务节点作为用于部署调度域的业务节点。


6.如权利要求1-5任一项所述的方法,其特征在于,如果调度域占用的每种类型的资源的数量包括调度域占用的cpu的数量;
所述部署调度域的指令还包括:用于pod中的容器隔离使用的cpu的数量和/或用于pod中的容器共享使用的cpu的数量;
所述部署pod的指令还包括:与其它容器隔离使用cpu的第一容器的标识。


7.如权利要求1-6任一项所述的方法,其特征在于,还包括:
管理节点接收删除调度域的指令,所述指令包括调度域的标识;
管理节点确定是否存在pod使用所述标识的调度域中的资源;
如果是,则发出不能删除所述调度域的提示信息;
如果否,则向部署所述调度域的业务节点发送删除所述调度域的指令。


8.一种部署pod的方法,其特征在于,所述方法包括:
业务节点接收管理节点发送的部署调度域的指令,所述指令包括调度域占用的每种类型的资源的数量;并部署所述调度域,所述调度域中包括对应数量的对应类型的资源;
业务节点接收管理节点发送的部署pod的指令,所述指令包括pod的数量,每个pod包括的容器的数量,以及用于所述pod使用资源的调度域的标识;
业务节点部署对应数量的pod,每个pod包括对应数量的容器;业务节点控制任一所述容器在工作时使用所述调度域中的资源。


9.如权利要求8所述的方法,其特征在于,针对所述用于所述pod使用的调度域占用的任一类型的资源,该资源的数量小于所有的所述容器在工作时需要该类型的资源的最大值的和值,且不小于任一所述容器在工作时需要该类型的资源的最大值。


10.如权利要求8或9所述的方法,其特征在于,如果调度域占用的每种类型的资源的数量包括调度域占用的cpu的数量;
所述部署调度域的指令还包括:用于pod中的容器隔离使用的cpu的数量和/或用于pod中的容器共享使用的cpu的数量;
所述部署pod的指令还包括:与其它容器隔离使用cpu的第一容器的标识;
所述业务节点控制任一所述容器在工作时使用所述调度域中的资源,包括:
所述业务节点控制所述第一容器在工作时使用所述调度域中的用于隔离使用的cpu,并控制第一容器外的其它容器在工作时使用所述调度域中除了用于隔离使用的cpu的其它cpu。


11.一种部署pod的装置,其特征在于,所述装置包括:
收发模块,用于接收部署调度域的指令,所述指令包括调度域占用的每种类型的资源的数量,所述调度域占用的资源用于至少一个pod使用;
处理模块,用于选择用于部署调度域的业务节点;
收发模块,还用于向所述业务节点发送部署调度域的指令,所述指令包括调度域占用的每种类型的资源的数量;以及接收部署pod的指令,所述指令包括pod的数量,每个pod包括的容器的数量,以及调度域的关联信息;并根据所述调度域的关联信息,向所述业务节点发送部署pod的指令,所述指令包括pod的数量,每个pod包括的容器的数量,以及用于所述pod使用资源的调度域的标识。


12.如权利要求11所述的...

【专利技术属性】
技术研发人员:张文博夏海
申请(专利权)人:西安华为技术有限公司
类型:发明
国别省市:陕西;61

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

1