基于包管理的资源配置方法、装置、存储介质和电子设备与流程

xiaoxiao9月前  50


本发明涉及集群部署,尤其涉及一种基于包管理的资源配置方法、装置、存储介质和电子设备。


背景技术:

1、helm是kubernetes(k8s)集群的包管理器,即作为在k8s集群上部署和管理应用程序的工具,提供描述k8s集群的资源配置方法,helm chart为包含应用程序资源配置的文件集合,通过使用helm chart包中的values.yaml文件或者使用自定义的value文件进行资源配置。其中,待部署的应用程序的cpu、内存、持久化存储卷大小等资源参数值及资源对象配置在values.yaml文件或value文件中,在进行应用程序部署时,依据资源参数值部署helmchart包中的各应用程序。但该方法,在value.yaml文件中,各资源参数默认值均是由开发helm chart包的开发人员设置的,在实际部署时,容易出现k8s集群资源不足的问题,尤其是在一次部署多个helm chart包时,使得部署失败,部署效率较低。


技术实现思路

1、有鉴于此,本发明提供一种基于包管理的资源配置方法、装置、存储介质和电子设备。

2、具体地,本发明是通过如下技术方案实现的:

3、根据本发明的第一方面,提供一种基于包管理的资源配置方法,基于包管理的资源配置方法包括:

4、解析待发布的资源规格部署工具包,获取所述资源规格部署工具包中的资源规格配置文件;

5、在所述资源规格部署工具包中构建节点规格文件,提取所述资源规格配置文件中的资源规格配置项及该资源规格配置项对应的值,写入所述节点规格文件,得到资源规格部署更新工具包;

6、依据发布的所述资源规格部署更新工具包中的节点规格文件以及预先设置的资源计算策略,获取部署所述资源规格部署更新工具包的预估资源量;

7、依据部署所述资源规格部署更新工具包的预估资源量以及部署所述资源规格部署更新工具包的集群的资源量,确定部署所述资源规格部署更新工具包的资源规格,依据所述资源规格部署所述资源规格部署更新工具包。

8、可选地,所述依据发布的所述资源规格部署更新工具包中的节点规格文件以及预先设置的资源计算策略,获取部署所述资源规格部署更新工具包的预估资源量,包括:

9、解析所述资源规格部署更新工具包,获取所述节点规格文件;

10、解析所述节点规格文件,获取资源对象;

11、依据所述资源对象、所述节点规格文件中各资源规格配置项对应的值及预先设置的资源计算策略,获取所述预估资源量。

12、可选地,所述依据所述资源对象、所述节点规格文件中各资源规格配置项对应的值及预先设置的资源计算策略,获取所述预估资源量,包括:

13、针对每一资源,遍历各资源对象,依据该资源对象对应的资源规格配置项对应的值、资源对象对应的副本数,计算该资源对象的预估资源量,获取各资源对象的预估资源量的和值,得到该资源的预估资源量。

14、可选地,所述依据部署所述资源规格部署更新工具包的预估资源量以及部署所述资源规格部署更新工具包的集群的资源量,确定部署所述资源规格部署更新工具包的资源规格,包括:

15、获取所述集群的cpu资源量、内存资源量和持久化存储卷资源量;

16、确定部署所述资源规格部署更新工具包的预估资源量中的cpu预估资源量、内存预估资源量和持久化存储卷预估资源量是否分别小于或等于所述cpu资源量、内存资源量和持久化存储卷资源量,若均是,确定部署所述资源规格部署更新工具包的预估资源量为部署所述资源规格部署更新工具包的资源规格。

17、可选地,所述方法还包括:

18、在所述节点规格文件中配置所述资源规格部署工具包中待部署的各应用程序的资源规格选项,所述资源规格选项用于所述资源规格部署工具包选取不同的资源规格配置项。

19、可选地,所述方法还包括:

20、若否,将节点规格文件中的当前资源规格选项调降至下一资源规格选项,执行所述依据所述资源规格部署更新工具包中的节点规格文件以及预先设置的资源计算策略,获取部署所述资源规格部署更新工具包的预估资源量的步骤。

21、可选地,所述依据部署所述资源规格部署更新工具包的预估资源量以及部署所述资源规格部署更新工具包的集群的资源量,确定部署所述资源规格部署更新工具包的资源规格,包括:

22、获取所述集群的cpu资源量、内存资源量和持久化存储卷资源量;

23、分别计算各部署所述资源规格部署更新工具包的预估资源量,cpu预估资源量的和值、内存预估资源量的和值和持久化存储卷预估资源量的和值;

24、若cpu预估资源量的和值、内存预估资源量的和值或持久化存储卷预估资源量的和值大于对应的所述cpu资源量、内存资源量和持久化存储卷资源量;

25、依据各所述资源规格部署更新工具包中待部署的应用程序的优先级,对所述资源规格部署更新工具包的节点规格文件中资源规格配置项对应的值进行编辑,执行所述依据所述资源规格部署更新工具包中的节点规格文件以及预先设置的资源计算策略,获取部署所述资源规格部署更新工具包的预估资源量的步骤。

26、本技术方案中的基于包管理的资源配置方法,通过提取资源规格部署工具包的资源规格配置文件中的资源规格配置项及该资源规格配置项对应的值,写入节点规格文件,依据节点规格文件以及预先设置的资源计算策略,对部署资源规格部署更新工具包所需的资源进行预估,依据预估资源量及集群的资源量,确定部署资源规格部署更新工具包的资源规格。这样,通过在部署资源规格部署工具包前,对部署资源规格部署工具包所需的集群资源进行资源估算,避免集群资源不足,导致部署失败的情况发生,从而提升部署的效率。

27、根据本发明的第二方面,提供一种基于包管理的资源配置装置,基于包管理的资源配置装置包括:

28、配置文件解析模块,用于解析待发布的资源规格部署工具包,获取所述资源规格部署工具包中的资源规格配置文件;

29、规格文件创建模块,用于在所述资源规格部署工具包中构建节点规格文件,提取所述资源规格配置文件中的资源规格配置项及该资源规格配置项对应的值,写入所述节点规格文件,得到资源规格部署更新工具包;

30、资源量预估模块,用于依据发布的所述资源规格部署更新工具包中的节点规格文件以及预先设置的资源计算策略,获取部署所述资源规格部署更新工具包的预估资源量;

31、部署处理模块,用于依据部署所述资源规格部署更新工具包的预估资源量以及部署所述资源规格部署更新工具包的集群的资源量,确定部署所述资源规格部署更新工具包的资源规格,依据所述资源规格部署所述资源规格部署更新工具包。

32、根据本发明的第三方面,提供一种存储介质,其上存储有计算机程序,程序被处理器执行时实现第一方面的任意可能的实现方式中的基于包管理的资源配置方法的步骤。

33、根据本发明的第四方面,提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现第一方面的任意可能的实现方式中的基于包管理的资源配置方法的步骤。


技术特征:

1.一种基于包管理的资源配置方法,其特征在于,包括:

2.根据权利要求1所述的基于包管理的资源配置方法,其特征在于,所述依据发布的所述资源规格部署更新工具包中的节点规格文件以及预先设置的资源计算策略,获取部署所述资源规格部署更新工具包的预估资源量,包括:

3.根据权利要求2所述的基于包管理的资源配置方法,其特征在于,所述依据所述资源对象、所述节点规格文件中各资源规格配置项对应的值及预先设置的资源计算策略,获取所述预估资源量,包括:

4.根据权利要求1至3任一项所述的基于包管理的资源配置方法,其特征在于,所述依据部署所述资源规格部署更新工具包的预估资源量以及部署所述资源规格部署更新工具包的集群的资源量,确定部署所述资源规格部署更新工具包的资源规格,包括:

5.根据权利要求4所述的基于包管理的资源配置方法,其特征在于,所述方法还包括:

6.根据权利要求5所述的基于包管理的资源配置方法,其特征在于,所述方法还包括:

7.根据权利要求1至3任一项所述的基于包管理的资源配置方法,其特征在于,所述依据部署所述资源规格部署更新工具包的预估资源量以及部署所述资源规格部署更新工具包的集群的资源量,确定部署所述资源规格部署更新工具包的资源规格,包括:

8.一种基于包管理的资源配置装置,其特征在于,所述基于包管理的资源配置装置包括:

9.一种存储介质,其特征在于,存储介质上存储程序或指令,程序或指令被处理器运行时实现如权利要求1至7中任一项所述的基于包管理的资源配置方法的步骤。

10.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至7中任一项所述的基于包管理的资源配置方法的步骤。


技术总结
本发明涉及一种基于包管理的资源配置方法、装置、存储介质和电子设备,基于包管理的资源配置方法包括:解析资源规格部署工具包,获取资源规格配置文件;在资源规格部署工具包中构建节点规格文件,提取资源规格配置文件中的资源规格配置项及该资源规格配置项对应的值,写入节点规格文件,得到资源规格部署更新工具包;依据资源规格部署更新工具包中的节点规格文件以及预先设置的资源计算策略,获取部署资源规格部署更新工具包的预估资源量;依据部署资源规格部署更新工具包的预估资源量以及部署资源规格部署更新工具包的集群的资源量,确定部署资源规格部署更新工具包的资源规格,依据资源规格部署资源规格部署更新工具包。可以提升部署效率。

技术研发人员:张泽春
受保护的技术使用者:京东科技信息技术有限公司
技术研发日:
技术公布日:2024/9/23

最新回复(0)