G06F9/455
1.一种容器管理方法,其特征在于,所述容器管理方法包括:
在到达高峰时间时,向预先搭建的公有云裸金属资源池申请公有云集,并在所述公有云集上创建高峰部署单元,以拓展实例个数;
若所述公有云集上的高峰部署单元创建完成,则通过负载均衡器的预设流量入口将容器组调度到所述公有云集上的高峰部署单元;
在所述高峰时间后,回收所述公有云集中的高峰部署单元。
2.根据权利要求1所述的容器管理方法,其特征在于,所述在到达高峰时间时,向预先搭建的公有云裸金属资源池申请公有云集,并在所述公有云集上创建高峰部署单元,以拓展实例个数之前,所述方法包括:
接收资源池搭建指令,获取预设时间段的历史服务数据;
将各所述历史服务数据按照时间进行聚类分析,获得高峰时间,以根据所述高峰时间部署高峰部署单元;
分析所述高峰时间内的目标历史服务数据,获得高峰数量并输出,以供用户基于所述高峰数量配置映射关系;
获取基于所述高峰数量配置的映射关系,其中,所述映射关系是指私有云集与公有云集之间的对应关系;
根据所述映射关系申请公有云集,搭建所述私有云集对应的公有云集,形成公有云裸金属资源池。
3.根据权利要求2所述的容器管理方法,其特征在于,所述将各所述历史服务数据按照时间进行聚类分析,获得高峰时间,以根据所述高峰时间部署高峰部署单元,包括:
将各所述历史服务数据按照时间进行聚类分析,形成历史服务数据序列;
获取所述历史服务数据序列内单位时间对应历史服务数据的数据量,将所述数据量与预设阈值进行比较;
获取所述数据量高于预设阈值的目标单位时间,并将所述目标单位时间作为高峰时间,以根据所述高峰时间部署高峰部署单元。
4.根据权利要求1所述的容器管理方法,其特征在于,所述在到达高峰时间时,向预先搭建的公有云裸金属资源池申请公有云集,并在所述公有云集上创建高峰部署单元,以拓展实例个数,包括:
在到达高峰时间时,向预先搭建的公有云裸金属资源池申请公有云集,并判断所述公有云集是否具有部署权限;
若所述公有云集具有部署权限,则校验预设的生产部署单元关联的配置项和存储卷;
若所述生产部署单元关联的配置项和存储卷校验通过,则根据所述生产部署单元关联的配置项和存储卷,在所述公有云集创建高峰部署单元关联的配置项和存储卷,以拓展实例个数。
5.根据权利要求1所述的容器管理方法,其特征在于,所述在到达高峰时间时,向预先搭建的公有云裸金属资源池申请公有云集,并在所述公有云集上创建高峰部署单元,以拓展实例个数之后,所述方法包括:
在检测到生产部署单元更新时,更新所述生产部署单元对应的高峰部署单元;
在检测到所述生产部署单元关联的配置项和存储卷更新时,更新所述生产部署单元对应高峰部署单元的配置项和存储卷。
6.根据权利要求1所述的容器管理方法,其特征在于,所述在所述高峰时间后,回收所述公有云集中的高峰部署单元,包括:
在所述高峰时间后,查询所述公有云集中数据接口并删除;
若所述公有云集中数据接口删除完成,则删除高峰部署单元,及所述高峰部署单元对应的存储卷和配置项。
7.根据权利要求1-6所述的容器管理方法,其特征在于,所述在所述高峰时间后,回收所述公有云集中的高峰部署单元之后,所述方法包括:
在检测到所述公有云裸金属资源池对应的高峰资源创建更新时,回调镜像服务;
当生产镜像更新时,更新所述高峰部署单元的镜像。
8.一种容器管理装置,其特征在于,所述容器管理装置包括:
申请创建模块,用于在到达高峰时间时,向预先搭建的公有云裸金属资源池申请公有云集,并在所述公有云集上创建高峰部署单元,以拓展实例个数;
容器调度模块,用于若所述公有云集上的高峰部署单元创建完成,则通过负载均衡器的预设流量入口将容器组调度到所述公有云集上的高峰部署单元;
资源回收模块,用于在所述高峰时间后,回收所述公有云集中的高峰部署单元。
9.一种容器管理设备,其特征在于,所述容器管理设备包括:
一个或多个处理器;
存储器;以及
一个或多个应用程序,其中所述一个或多个应用程序被存储于所述存储器中,并配置为由所述处理器执行以实现权利要求1至7中任一项所述的容器管理方法。
10.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理器进行加载,以执行权利要求1至7任一项所述的容器管理方法中的步骤。
本申请涉及计算机技术领域,具体涉及一种容器管理方法、装置、设备和计算机可读存储介质。
kubernetes容器管理平台,是基于原生kubernetes提供以容器为核心的高性能、可扩展的容器管理服务;为容器化的应用提供快速创建、高效部署、资源调度、服务发现、动态伸缩和性能监控等一系列完整功能,使得开发、运维聚焦于业务系统本身。
业务系统开发平台会根据业务需求,部署生产服务集形成生产资源池,用于业务系统程序执行,但是业务系统的业务量通常是变化的,过多地部署生产服务集会造成资源浪费;正常部署或者部署过少,在业务量高峰的时候,会导致生产服务器集的压力过大,因此,现有的业务系统在综合考虑之后,通常预先采购服务器加到原有生产资源池上;当应用业务高峰期时,kubernetes容器管理平台会直接基于生产资源池,在生产部署单元上扩容实例,实现负载分流、分散节点压力,但在高峰期后,因为扩容资源与历史资源混合不好回收、回收不及时等问题,导致机器囤积、资源浪费等问题。
本申请提供一种容器管理方法、装置、设备和计算机可读存储介质,旨在解决现有的容器管理不方便,容器扩容操作不方便,不便于容器回收操作的技术问题。
一方面,本申请提供一种容器管理方法,所述容器管理方法包括以下步骤:
在到达高峰时间时,向预先搭建的公有云裸金属资源池申请公有云集,并在所述公有云集上创建高峰部署单元,以拓展实例个数;
若所述公有云集上的高峰部署单元创建完成,则通过负载均衡器的预设流量入口将容器组调度到所述公有云集上的高峰部署单元;
在所述高峰时间后,回收所述公有云集中的高峰部署单元。
在本申请一些实施例中,所述在到达高峰时间时,向预先搭建的公有云裸金属资源池申请公有云集,并在所述公有云集上创建高峰部署单元,以拓展实例个数之前,所述方法包括:
接收资源池搭建指令,获取预设时间段的历史服务数据;
将各所述历史服务数据按照时间进行聚类分析,获得高峰时间,以根据所述高峰时间部署高峰部署单元;
分析所述高峰时间内的目标历史服务数据,获得高峰数量并输出,以供用户基于所述高峰数量配置映射关系;
获取基于所述高峰数量配置的映射关系,其中,所述映射关系是指私有云集与公有云集之间的对应关系;
根据所述映射关系申请公有云集,搭建所述私有云集对应的公有云集,形成公有云裸金属资源池。
在本申请一些实施例中,所述将各所述历史服务数据按照时间进行聚类分析,获得高峰时间,以根据所述高峰时间部署高峰部署单元,包括:
将各所述历史服务数据按照时间进行聚类分析,形成历史服务数据序列;
获取所述历史服务数据序列内单位时间对应历史服务数据的数据量,将所述数据量与预设阈值进行比较;
获取所述数据量高于预设阈值的目标单位时间,并将所述目标单位时间作为高峰时间,以根据所述高峰时间部署高峰部署单元。
在本申请一些实施例中,所述在到达高峰时间时,向预先搭建的公有云裸金属资源池申请公有云集,并在所述公有云集上创建高峰部署单元,以拓展实例个数,包括:
在到达高峰时间时,向预先搭建的公有云裸金属资源池申请公有云集,并判断所述公有云集是否具有部署权限;
若所述公有云集具有部署权限,则校验预设的生产部署单元关联的配置项和存储卷;
若所述生产部署单元关联的配置项和存储卷校验通过,则根据所述生产部署单元关联的配置项和存储卷,在所述公有云集创建高峰部署单元关联的配置项和存储卷,以拓展实例个数。
在本申请一些实施例中,所述在到达高峰时间时,向预先搭建的公有云裸金属资源池申请公有云集,并在所述公有云集上创建高峰部署单元,以拓展实例个数之后,所述方法包括:
在检测到生产部署单元更新时,更新所述生产部署单元对应的高峰部署单元;
在检测到所述生产部署单元关联的配置项和存储卷更新时,更新所述生产部署单元对应高峰部署单元的配置项和存储卷。
在本申请一些实施例中,所述在所述高峰时间后,回收所述公有云集中的高峰部署单元,包括:
在所述高峰时间后,查询所述公有云集中数据接口并删除;
若所述公有云集中数据接口删除完成,则删除高峰部署单元,及所述高峰部署单元对应的存储卷和配置项。
在本申请一些实施例中,所述在所述高峰时间后,回收所述公有云集中的高峰部署单元之后,所述方法包括:
在检测到所述公有云裸金属资源池对应的高峰资源创建更新时,回调镜像服务;
当生产镜像更新时,更新所述高峰部署单元的镜像。
另一方面,本申请还提供一种容器管理装置,所述容器管理装置包括:
申请创建模块,用于在到达高峰时间时,向预先搭建的公有云裸金属资源池申请公有云集,并在所述公有云集上创建高峰部署单元,以拓展实例个数;
容器调度模块,用于若所述公有云集上的高峰部署单元创建完成,则通过负载均衡器的预设流量入口将容器组调度到所述公有云集上的高峰部署单元;
资源回收模块,用于在所述高峰时间后,回收所述公有云集中的高峰部署单元。
另一方面,本申请还提供一种容器管理设备,所述容器管理设备包括:
一个或多个处理器;
存储器;以及
一个或多个应用程序,其中所述一个或多个应用程序被存储于所述存储器中,并配置为由所述处理器执行以实现所述的容器管理方法。
另一方面,本申请还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器进行加载,以执行所述的容器管理方法中的步骤。
本申请提供的容器管理方法包括在到达高峰时间时,向预先搭建的公有云裸金属资源池申请公有云集,并在所述公有云集上创建高峰部署单元,以拓展实例个数;若所述公有云集上的高峰部署单元创建完成,则通过负载均衡器的预设流量入口将容器组调度到所述公有云集上的高峰部署单元;在所述高峰时间后,回收所述公有云集中的高峰部署单元;本申请实施例中通过在公有云集上部署高峰部署单元,而将生产应用实例部署在私有云集中,这样使得生产应用和高峰应用分开,在高峰时间可以实现方便高效地部署高峰部署单元,高峰时间时通过预设流量入口进行容器组调度,使得容器的调度更加灵活,减少服务器压力,使得容器管理更加智能;在高峰时间之后可以进行快速地回收公有云集中部署的高峰部署单元,使得高峰部署单元回收操作更加便捷,减少了由于回收不便,导致的机器囤积资源浪费的技术问题。
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的容器管理的场景示意图;
图2为本申请实施例中提供的容器管理方法中分析历史服务数据,以搭建公有云裸金属资源池的一个实施例流程示意图;
图3为本申请实施例中提供的容器管理方法的一个实施例流程示意图;
图4为本申请实施例中提供的容器管理方法中高峰部署单元更新的一个实施例流程示意图;
图5是本申请实施例中提供的容器管理方法中高峰部署单元镜像的一个实施例的流程示意图;
图6是本申请实施例中提供的容器管理装置的一个实施例结构示意图;
图7是本申请实施例中提供的容器管理设备的一个实施例结构示意图。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明包含的范围。
在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“厚度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个所述特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
在本申请中,“示例性”一词用来表示“用作例子、例证或说明”。本申请中被描述为“示例性”的任何实施例不一定被解释为比其它实施例更优选或更具优势。为了使本领域任何技术人员能够实现和使用本发明,给出了以下描述。在以下描述中,为了解释的目的而列出了细节。应当明白的是,本领域普通技术人员可以认识到,在不使用这些特定细节的情况下也可以实现本发明。在其它实例中,不会对公知的结构和过程进行详细阐述,以避免不必要的细节使本发明的描述变得晦涩。因此,本发明并非旨在限于所示的实施例,而是与符合本申请所公开的原理和特征的最广范围相一致。
本申请实施例提供一种容器管理方法、装置、设备及计算机可读存储介质,以下分别进行详细说明。
本发明实施例中的容器管理方法应用于容器管理装置,容器管理装置设置于容器管理设备,容器管理设备中设置有一个或多个处理器、存储器,以及一个或多个应用程序,其中一个或多个应用程序被存储于存储器中,并配置为由处理器执行以实现容器管理方法;容器管理设备可以是终端,例如,手机或平板电脑,容器管理设备还可以是一台服务器,或者多台服务器组成的服务集。
如图1所示,图1为本申请实施例容器管理的场景示意图,本发明实施例中容器管理场景中包括容器管理设备100(容器管理设备100中集成有容器管理装置),容器管理设备100中运行容器管理对应的计算机可读存储介质,以执行容器管理的步骤。
可以理解的是,图1所示容器管理的场景中的容器管理设备,或者容器管理设备中包含的装置并不构成对本发明实施例的限制,即,容器管理的场景中包含的设备数量、设备种类,或者各个设备中包含的装置数量、装置种类不影响本发明实施例中技术方案整体实现,均可以算作本发明实施例要求保护技术方案的等效替换或衍生。
本发明实施例中容器管理设备100主要用于在到达高峰时间时,向预先搭建的公有云裸金属资源池申请公有云集,并在所述公有云集上创建高峰部署单元,以拓展实例个数;若所述公有云集上的高峰部署单元创建完成,则通过负载均衡器的预设流量入口将容器组调度到所述公有云集上的高峰部署单元;在所述高峰时间后,回收所述公有云集中的高峰部署单元。
本发明实施例中该容器管理设备100可以是独立的容器管理设备,也可以是容器管理设备组成的容器管理设备网络或容器管理设备集,例如,本发明实施例中所描述的容器管理设备100,其包括但不限于计算机、网络主机、单个网络容器管理设备、多个网络容器管理设备集或多个容器管理设备构成的云容器管理设备。其中,云容器管理设备由基于云计算(CloudComputing)的大量计算机或网络容器管理设备构成。
本领域技术人员可以理解,图1中示出的应用环境,仅仅是与本申请方案一种应用场景,并不构成对本申请方案应用场景的限定,其他的应用环境还可以包括比图1中所示更多或更少的容器管理设备,或者容器管理设备网络连接关系,例如图1中仅示出1个容器管理设备,可以理解的,该容器管理的场景还可以包括一个或多个其他容器管理设备,具体此处不作限定;该容器管理设备100中还可以包括存储器,用于存储数据。
此外,本申请容器管理的场景中容器管理设备100可以设置显示装置,或者容器管理设备100中不设置显示装置与外接的显示装置200通讯连接,显示装置200用于输出容器管理设备中容器管理方法执行的结果。容器管理设备100可以访问后台数据库300(后台数据库可以是容器管理设备的本地存储器中,后台数据库还可以设置在云端),后台数据库300中保存有容器管理相关的信息。
需要说明的是,图1所示的容器管理的场景示意图仅仅是一个示例,本发明实施例描述的容器管理的场景是为了更加清楚的说明本发明实施例的技术方案,并不构成对于本发明实施例提供的技术方案的限定。
基于上述容器管理的场景,提出了容器管理方法的实施例,本实施例中容器管理方法包括:
在到达高峰时间时,向预先搭建的公有云裸金属资源池申请公有云集,并在所述公有云集上创建高峰部署单元,以拓展实例个数;
若所述公有云集上的高峰部署单元创建完成,则通过负载均衡器的预设流量入口将容器组调度到所述公有云集上的高峰部署单元;
在所述高峰时间后,回收所述公有云集中的高峰部署单元。
本实施例中的容器管理方法应用在容器管理设备,容器管理设备是指安装kubernetes容器管理应用程序的设备,容器管理设备的种类不作具体限定,容器管理设备可以是服务器或者是终端。
本实施例容器管理方法的步骤执行之前,容器管理设备预先分析历史服务数据,以根据历史服务数据搭建公有云裸金属资源池,容器管理设备通过向公云裸金属资源池申请公有云集执行扩容操作,然后将容器进行调度,以实现容器管理。
如图2所示,图2为本申请实施例中提供的容器管理方法中分析历史服务数据,并搭建公有云裸金属资源池的一个实施例流程示意图。
本实施例中容器管理设备分析历史服务数据,搭建公有云裸金属资源池,包括步骤201-204:
201,接收资源池搭建指令,获取预设时间段的历史服务数据。
容器管理设备接收资源池搭建指令,其中,资源池搭建指令的触发方式不作具体限定,即,资源池搭建指令可以用户主动触发的,还可以是容器管理设备自动触发的,容器管理设备在接收到资源池搭建指令之后,容器管理设备获取预设时间段的历史服务数据,其中,预设时间段可以根据具体场景设置,例如预设时间段设置为一个月或者一年,历史服务数据是可以是不同服务请求的相关信息,例如,服务时间,服务类型等等。
202,将各所述历史服务数据按照时间进行聚类分析,获得高峰时间,以根据所述高峰时间部署高峰部署单元;
容器管理设备将预设时间段中的历史服务数据进行聚类分析,形成各个类别的历史服务数据子集,容器管理设备获取历史服务数据子集中的数据量,容器管理设备将数据量高于预设阈值(预设阈值可以根据具体场景设置,例如平均值的1.5倍)的历史服务数据子集对应的时间作为高峰时间,这样容器管理设备可以根据高峰时间提前部署高峰部署单元。
本实施例中给出一种对历史服务数据进行聚类分析,获得高峰时间的具体实现方式包括:
(1)、将各所述历史服务数据按照时间进行聚类分析,形成历史服务数据序列;
(2)、获取所述历史服务数据序列内单位时间对应历史服务数据的数据量,将所述数据量与预设阈值进行比较;
(3)、获取所述数据量高于预设阈值的目标单位时间,并将所述目标单位时间作为高峰时间,以根据所述高峰时间部署高峰部署单元。
本实施例中容器管理设备将预设时间段中的服务数据按照时间的先后顺序进行排列,形成历史服务数据序列,然后容器管理设备从历史服务数据序列中依次提取单位时间的历史服务数据子集,例如单位时间为一个小时或一天,容器管理设备获取历史服务数据子集中的数据量,容器管理设备将数据量高于预设阈值(预设阈值可以根据具体场景设置,例如平均值的1.5倍)的单位时间作为高峰时间,这样容器管理设备可以根据高峰时间提前部署高峰部署单元,容器管理设备通过对历史服务数据进行分析,获得高峰时间,这样容器管理设备可以在高峰时间时进行自动地扩缩容。
203,分析所述高峰时间内的目标历史服务数据,获得高峰数量并输出,以供用户基于所述高峰数量配置映射关系。
容器管理设备分析高峰时间内的目标历史服务数据,获得高峰数量并输出,即,容器管理设备将目标历史服务数据的数据量减去预设阈值,获得高峰数量并输出,以供用户基于高峰数量配置映射关系,其中,所述映射关系为是指私有云集与公有云集之间的对应关系。
例如,目标历史服务数据的数据量为15万,预设阈值为10万,则高峰数据量为5万;用户根据高峰数量设置私有云集与公有云集之间的映射关系为1:0.5。
204,获取基于所述高峰数量配置的映射关系,根据所述映射关系申请公有云集,搭建所述私有云集对应的公有云集,形成公有云裸金属资源池。
容器管理设备获取基于高峰数量配置的映射关系,容器管理设备根据所述映射关系申请公有云集,搭建所述私有云集对应的公有云集,形成公有云裸金属资源池。
即,在通信技术中的云计算领域中,服务器分为虚拟服务器和物理服务器,其中,虚拟服务器有可能称为虚拟机,物理服务器又可称为裸金属服务器,裸金属服务器相比于虚拟机,具有计算能力强、低延时、用户独占等优点,私有云裸金属资源池是指业务系统相关的物理服务器,私有云裸金属资源池是业务系统需要搭建的,设备需要购买因此设备费用较高;公有云裸金属资源池是指公有的物理服务器;公有云裸金属资源池中的公有服务器可以是一些官方的业务平台的,设备不需要购买只是租用,设备费用降低。
本申请实施例中容器管理设备分析历史服务数据,获得高峰时间和高峰数量,以根据高峰数量搭建公有云裸金属资源池,使得公有云裸金属资源池的搭建符合需求,同时根据高峰时间部署高峰部署单元,通过搭建公有云裸金属资源池,这样在业务系统高峰时间可以进行容器调度,减少私有云服务器的压力,公有云裸金属服务器的调度指的是在一个公有云资源池里,从许多台机器中选择一台或多台机器供用户使用,选择的过程称之为调度,以方便容器管理,具体地:
如图3所示,图3为本申请实施例中提供的容器管理方法的一个实施例流程示意图,该容器管理方法包括如下步骤301~303:
301,在到达高峰时间时,向预先搭建的公有云裸金属资源池申请公有云集,并在所述公有云集上创建高峰部署单元,以拓展实例个数。
容器管理设备实时地进行监测,容器管理设备在到达高峰时间时,向预先搭建的公有云裸金属资源池申请公有云集,并在公有云集上创建高峰部署单元,以拓展实例个数。具体地,步骤301包括:
(1)、在到达高峰时间时,向预先搭建的公有云裸金属资源池申请公有云集,并判断所述公有云集是否具有部署权限;
(2)、若所述公有云集具有部署权限,则校验预设的生产部署单元关联的配置项和存储卷;
(3)、若所述生产部署单元关联的配置项和存储卷校验通过,则根据所述生产部署单元关联的配置项和存储卷,在所述公有云集创建高峰部署单元关联的配置项和存储卷,以拓展实例个数。
即,容器管理设备在到达高峰时间时,向预先搭建的公有云裸金属资源池申请公有云集,并判断所述公有云集是否具有部署权限;若所述公有云集不具有部署权限,容器管理设备则输出提示信息;若所述公有云集具有部署权限,则校验预设的生产部署单元关联的配置项和存储卷;若所述生产部署单元关联的配置项和存储卷校验不通过,容器管理设备输出提示信息;若所述生产部署单元关联的配置项和存储卷校验通过,容器管理设备则根据所述生产部署单元关联的配置项和存储卷,在所述公有云集创建高峰部署单元关联的配置项和存储卷,以拓展实例个数。
为了方便理解,本实施例中以一个容器管理设备进行高峰部署的实例进行说明,包括:
(1)生产环境可一键高峰的部署单元:容器管理设备在生产环境的部署单元,容器管理设备设置部署单元类型有生产-beta、dr、beta-dr、ISTIO。然后,容器管理设备根据生产环境的部署单元类型,设置高峰部署单元的类型为非-dr、非-beta、非ISTIO的生产正式节点,容器管理设备将生产环境的部署单元和非生产环境的高峰部署单元的信息进行汇总,形成部署单元列表,这样在高峰部署的时候可以根据部署单元列表进行一键高峰部署操作。
(2)可创建高峰资源的权限:容器管理设备权限信息由k8s自行维护。故做一个开关,判断在一键高峰时是否检验权限信息属于维护的高峰列表中:false则在一键高峰时任意系统编码下符合规则的部署单元都可以创建高峰部署单元。true则在部署单元进行一键高峰时,前端需要校验该部署单元所在的系统编码是否在维护的高峰系统编码列表中,是则可创建、否则不可“确定”提交到订单页面,并在弹窗底部提示用户“该部署单元所在系统编码XSS-CORE暂不支持高峰场景。”
(3)高峰部署单元的高峰比例:高峰比例可以根据高峰数量确定,高峰比例范围作为配置项写入数据库,可支持临时修改。目前暂定0%<高峰比<=200%。在一键高峰时,默认高峰比为50%即1:0.5,前端获取高峰比范围后,用户可在范围内进行修改。若超过限制范围,则在下方提示用户“高峰比输入范围为“0%<高峰比<=200%””。提示中的最大最小值从后端获取。高峰比:高峰部署单元的实例个数=向上取整(生产部署单元实例个数*高峰比)。即若生产部署单元的实例个数为5,高峰比为150%,则高峰实例个数为8个。若原生产部署单元有启用HPA(Horizontal Pod Autoscaling,容器水平收缩),则HPA的最大最小实例也按照比例扩展取整。
(4)可选高峰集:容器管理设备将生产部署单元所在安全区域,对应唯一的安全区域高峰集。
(5)在创建高峰资源时校验:需要校验生产部署单元所关联的配置项、存储卷,若有则在对应高峰集提前校验名称并创建配置项、存储卷,校验deployment名称(service名称),在创建部署单元后创建对应service。
容器管理设备service创建的步骤包括:创建生产部署单元->创建生产single/mix模式service->创建高峰部署单元->修改原有生产的single/mix模式service,可负载到高峰部署单元,原service名称不变,加上高峰标识;service的详情中可用区、集等信息还是展示原有生产的信息,绑定的部署单元加上高峰部署单元;创建生产部署单元->创建高峰部署单元->创建service的部署单元下拉列表不显示高峰部署单元,可创建生产single/mix模式service,判断对应生产部署单元是否有对应的高峰部署单元,所有则加到创建的service中,没有则不加。
本申请实施例中通过一键高峰功能,在高峰期扩容生产资源,在资源池在公有云裸金属资源池、不同的部署单元上分离原有生产资源、扩容高峰资源,便于后续资源跟踪、回收,提升利用率、降低成本。
302,若所述公有云集上的高峰部署单元创建完成,则通过负载均衡器的预设流量入口将容器组调度到所述公有云集上的高峰部署单元。
若公有云集上的高峰部署单元创建完成,容器管理设备则通过负载均衡器的预设流量入口将容器组调度到所述公有云集上的高峰部署单元,使得容器管理设备可以通过负载均衡器的流量入口,将流量引到高峰部署单元,减少私有云服务器的压力。
303,在所述高峰时间后,回收所述公有云集中的高峰部署单元。
在高峰时间后,容器管理设备回收所述公有云集中的高峰部署单元;具体地,步骤303包括:
(1)、在所述高峰时间后,查询所述公有云集中数据接口并删除;
(2)、若所述公有云集中数据接口删除完成,则删除高峰部署单元,及所述高峰部署单元对应的存储卷和配置项。
即,本实施例中容器管理设备在所述高峰时间后,容器管理设备查询所述公有云集中数据接口并删除;容器管理设备若所述公有云集中数据接口删除完成,则删除高峰部署单元,及所述高峰部署单元对应的存储卷和配置项,以完成高峰部署单元回收。
本实施例中容器管理方法在到达高峰时间时,向预先搭建的公有云裸金属资源池申请公有云集,并在所述公有云集上创建高峰部署单元,以拓展实例个数;若所述公有云集上的高峰部署单元创建完成,则通过负载均衡器的预设流量入口将容器组调度到所述公有云集上的高峰部署单元;在所述高峰时间后,回收所述公有云集中的高峰部署单元;本申请实施例中通过在公有云集上部署高峰部署单元,而将生产应用实例部署在私有云集中,这样使得生产应用和高峰应用分开,在高峰时间可以实现方便高效地部署高峰部署单元,高峰时间时通过预设流量入口进行容器组调度,使得容器的调度更加灵活,减少服务器压力,使得容器管理更加智能;在高峰时间之后可以进行快速地回收公有云集中部署的高峰部署单元,使得高峰部署单元回收操作更加便捷,减少了由于回收不便,导致的机器囤积资源浪费的技术问题。
如图4所示,图4为本申请实施例中提供的容器管理方法中高峰部署单元更新的一个实施例流程示意图。
在本申请一些实施例中,具体说明了生产部署单元更新时高峰部署单元同步更新包括如下步骤401~402:
401,在检测到生产部署单元更新时,更新所述生产部署单元对应的高峰部署单元;
402,在检测到所述生产部署单元关联的配置项和存储卷更新时,更新所述生产部署单元对应高峰部署单元的配置项和存储卷。
容器管理设备实时地检测生产部署单元的状态,容器管理设备在检测到生产部署单元更新时,容器管理设备更新生产部署单元对应的高峰部署单元;容器管理设备在检测到生产部署单元关联的配置项和存储卷更新时,容器管理设备更新所述生产部署单元对应高峰部署单元的配置项和存储卷。
即,当生产部署单元更新时,高峰部署单元需同时立即更新(除实例个数、HPA实例范围),高峰的部署状态取决于原本状态。当生产配置项、存储卷更新时,高峰对应也需要后台立即同时更新。配置项、存储卷单独创建:在创建后,挂载到生产部署单元时,若有对应的高峰部署单元,则高峰部署单元在进行挂载时需先创建高峰配置项、存储卷。
本实施例中容器管理设备实时地检测生产部署单元的状态,并根据生产部署单元实时更新高峰部署单元,实现生产和高峰同步,避免数据不同步导致容器调度错误。
参照图5,图5是本申请实施例中提供的容器管理方法中高峰部署单元镜像的一个实施例的流程示意图。
在本申请一些实施例中,具体说明了高峰部署单元镜像的包括如下步骤501~502:
501,在检测到所述公有云裸金属资源池对应的高峰资源创建更新时,回调镜像服务;
502,当生产镜像更新时,更新所述高峰部署单元的镜像。
容器管理设备在检测到所述公有云裸金属资源池对应的高峰资源创建更新时,回调镜像服务,使得生产环境和高峰环境的数据可以实现同步。当生产镜像更新时,更新所述高峰部署单元的镜像;本实施例中高峰资源创建更新后回调镜像服务。当生产镜像更新时,自行更新高峰部署单元的镜像,高峰部署单元状态取决于本身状态,若运行中则更新镜像并部署,若未部署则只更新镜像,实现生产和高峰数据同步。
如图6所示,图6是容器管理装置的一个实施例结构示意图。
为了更好实施本申请实施例中容器管理方法,在容器管理方法基础之上,本申请实施例中还提供一种容器管理装置,所述容器管理装置包括以下模块601-603:
申请创建模块601,用于在到达高峰时间时,向预先搭建的公有云裸金属资源池申请公有云集,并在所述公有云集上创建高峰部署单元,以拓展实例个数;
容器调度模块602,用于若所述公有云集上的高峰部署单元创建完成,则通过负载均衡器的预设流量入口将容器组调度到所述公有云集上的高峰部署单元;
资源回收模块603,用于在所述高峰时间后,回收所述公有云集中的高峰部署单元。
在本申请一些实施例中,所述的容器管理装置,包括:
接收资源池搭建指令,获取预设时间段的历史服务数据;
将各所述历史服务数据按照时间进行聚类分析,获得高峰时间,以根据所述高峰时间部署高峰部署单元;
分析所述高峰时间内的目标历史服务数据,获得高峰数量并输出,以供用户基于所述高峰数量配置映射关系;
获取基于所述高峰数量配置的映射关系,其中,所述映射关系是指私有云集与公有云集之间的对应关系;
根据所述映射关系申请公有云集,搭建所述私有云集对应的公有云集,形成公有云裸金属资源池。
在本申请一些实施例中,所述的容器管理装置,包括:
将各所述历史服务数据按照时间进行聚类分析,形成历史服务数据序列;
获取所述历史服务数据序列内单位时间对应历史服务数据的数据量,将所述数据量与预设阈值进行比较;
获取所述数据量高于预设阈值的目标单位时间,并将所述目标单位时间作为高峰时间,以根据所述高峰时间部署高峰部署单元。
在本申请一些实施例中,所述申请创建模块601,包括:
在到达高峰时间时,向预先搭建的公有云裸金属资源池申请公有云集,并判断所述公有云集是否具有部署权限;
若所述公有云集具有部署权限,则校验预设的生产部署单元关联的配置项和存储卷;
若所述生产部署单元关联的配置项和存储卷校验通过,则根据所述生产部署单元关联的配置项和存储卷,在所述公有云集创建高峰部署单元关联的配置项和存储卷,以拓展实例个数。
在本申请一些实施例中,所述的容器管理装置,包括:
在检测到生产部署单元更新时,更新所述生产部署单元对应的高峰部署单元;
在检测到所述生产部署单元关联的配置项和存储卷更新时,更新所述生产部署单元对应高峰部署单元的配置项和存储卷。
在本申请一些实施例中,所述的容器管理装置,包括:
在所述高峰时间后,查询所述公有云集中数据接口并删除;
若所述公有云集中数据接口删除完成,则删除高峰部署单元,及所述高峰部署单元对应的存储卷和配置项。
在本申请一些实施例中,所述的容器管理装置,包括:
在检测到所述公有云裸金属资源池对应的高峰资源创建更新时,回调镜像服务;
当生产镜像更新时,更新所述高峰部署单元的镜像。
本实施例中容器管理装置中在到达高峰时间时,向预先搭建的公有云裸金属资源池申请公有云集,并在所述公有云集上创建高峰部署单元,以拓展实例个数;若所述公有云集上的高峰部署单元创建完成,则通过负载均衡器的预设流量入口将容器组调度到所述公有云集上的高峰部署单元;在所述高峰时间后,回收所述公有云集中的高峰部署单元;本申请实施例中通过在公有云集上部署高峰部署单元,而将生产应用实例部署在私有云集中,这样使得生产应用和高峰应用分开,在高峰时间可以实现方便高效地部署高峰部署单元,高峰时间时通过预设流量入口进行容器组调度,使得容器的调度更加灵活,减少服务器压力,使得容器管理更加智能;在高峰时间之后可以进行快速地回收公有云集中部署的高峰部署单元,使得高峰部署单元回收操作更加便捷,减少了由于回收不便,导致的机器囤积资源浪费的技术问题。
本发明实施例还提供一种容器管理设备,如图7所示,图7是本申请实施例中提供的容器管理设备的一个实施例结构示意图。
容器管理设备集成了本发明实施例所提供的任一种容器管理装置,所述容器管理设备包括:
一个或多个处理器;
存储器;以及
一个或多个应用程序,其中所述一个或多个应用程序被存储于所述存储器中,并配置为由所述处理器执行上述容器管理方法实施例中任一实施例中所述的容器管理方法中的步骤。
具体来讲:容器管理设备可以包括一个或者一个以上处理核心的处理器701、一个或一个以上计算机可读存储介质的存储器702、电源703和输入单元704等部件。本领域技术人员可以理解,图7中示出的容器管理设备结构并不构成对容器管理设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
处理器701是该容器管理设备的控制中心,利用各种接口和线路连接整个容器管理设备的各个部分,通过运行或执行存储在存储器702内的软件程序和/或模块,以及调用存储在存储器702内的数据,执行容器管理设备的各种功能和处理数据,从而对容器管理设备进行整体监控。可选的,处理器701可包括一个或多个处理核心;优选的,处理器701可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器701中。
存储器702可用于存储软件程序以及模块,处理器701通过运行存储在存储器702的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器702可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、训练播放功能等)等;存储数据区可存储根据容器管理设备的使用所创建的数据等。此外,存储器702可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器702还可以包括存储器控制器,以提供处理器701对存储器702的访问。
容器管理设备还包括给各个部件供电的电源703,优选的,电源703可以通过电源管理系统与处理器701逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源703还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
该容器管理设备还可包括输入单元704,该输入单元704可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
尽管未示出,容器管理设备还可以包括显示单元等,在此不再赘述。具体在本实施例中,容器管理设备中的处理器701会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器702中,并由处理器701来运行存储在存储器702中的应用程序,从而实现各种功能,如下:
在到达高峰时间时,向预先搭建的公有云裸金属资源池申请公有云集,并在所述公有云集上创建高峰部署单元,以拓展实例个数;
若所述公有云集上的高峰部署单元创建完成,则通过负载均衡器的预设流量入口将容器组调度到所述公有云集上的高峰部署单元;
在所述高峰时间后,回收所述公有云集中的高峰部署单元。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
为此,本发明实施例提供一种计算机可读存储介质,该计算机可读存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random AccessMemory)、磁盘或光盘等。其上存储有计算机程序,所述计算机程序被处理器进行加载,以执行本发明实施例所提供的任一种容器管理方法中的步骤。例如,所述计算机程序被处理器进行加载可以执行如下步骤:
在到达高峰时间时,向预先搭建的公有云裸金属资源池申请公有云集,并在所述公有云集上创建高峰部署单元,以拓展实例个数;
若所述公有云集上的高峰部署单元创建完成,则通过负载均衡器的预设流量入口将容器组调度到所述公有云集上的高峰部署单元;
在所述高峰时间后,回收所述公有云集中的高峰部署单元。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见上文针对其他实施例的详细描述,此处不再赘述。
具体实施时,以上各个单元或结构可以作为独立的实体来实现,也可以进行任意组合,作为同一或若干个实体来实现,以上各个单元或结构的具体实施可参见前面的方法实施例,在此不再赘述。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
以上对本申请实施例所提供的一种容器管理方法进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
本文发布于:2023-04-15 06:20:45,感谢您对本站的认可!
本文链接:https://patent.en369.cn/patent/1/87626.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |