一种适用于云平台的容器组调度方法转让专利

申请号 : CN201611015647.7

文献号 : CN106506655B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 钟健波杨松季统凯

申请人 : 国云科技股份有限公司

摘要 :

本发明涉及云计算技术领域,特别是一种适用于云平台的容器组的调度方法。本发明首先创建一个容器镜像,用于创建容器组;容器组是以同一个镜像创建的容器集合;然后按照调度、拓展策略,由调度器进行调度、拓展。本发明解决了云平台中容器资源使用效率低,管理工作量大的问题,提高容器运行的稳定性。通过容器组来对同样类型的容器管理分配资料,提高物理资源的利用率,减少运维成本,提高运维人员的工作效率;根据不同的调度策略设置,可以满足客户不同场景的需要。

权利要求 :

1.一种适用于云平台的容器组的调度方法,其特征在于:所述的方法包括容器组创建和调度;具体包括以下步骤:步骤1:创建并上传一个容器镜像,用于创建云平台中的容器对象;

步骤2:选择步骤1中上传的镜像创建容器组,设置容器组内容器个数;

步骤3:设置容器组的调度策略,包括cpu使用率,内存使用量,磁盘io,网络io;

步骤4:设置容器组的扩展策略,根据访问量、容器负载决定扩展、缩减;

步骤5:调度器获取云平台中所有容器组并遍历容器组,获取容器组的调度策略;

步骤6:判断容器组内是否有容器宕机,若有则分配物理节点重新创建容器;

步骤7:根据容器组调度策略,调度器比较物理节点是否符合调度条件,若符合执行步骤8,否则执行步骤10;

步骤8:调度器获取容器组配置,分配适合调度的物理节点返回到容器组进行调度;

步骤9:调度器根据分配物理节点使用容器镜像创建一个新的容器,创建完成后从原有容器组中删除一个容器;

步骤10:调度器获取容器组负载、访问量,判断是否符合扩展、缩减预设值;若符合执行步骤11,否则执行步骤15;

步骤11:调度器判断需要扩展,执行步骤12;判断需要缩减,执行步骤14;

步骤12:调度器获取容器组配置,分配适合调度的物理节点返回到容器组进行调度;

步骤13:调度器根据分配物理节点使用容器镜像创建一个新的容器;

步骤14:调度器获取容器组中负载最低容器并关闭;

步骤15:结束。

2.根据权利要求1所述的方法,其特征在于:容器镜像是上传后可以在云平台中所有的物理节点都读取到的镜像;

容器组内容器个数是指容器组初始化时创建的容器个数。

3.根据权利要求1或2所述的方法,其特征在于:所述的调度器判断容器组中容器宿主物理节点cpu,内存,磁盘io,网络io是否符合调度策略设置的阈值;当符合时,根据调度策略在其余的物理节点中根据对应设置选择最优的物理节点进行调度;在目标物理节点中使用指定镜像创建容器纳入容器组中;

所述的调度器在扩展、缩减时,当符合扩展时,根据策略在其余的物理节点中选择最优的物理节点进行创建;当符合缩减时,根据策略选取最优容器进行关闭。

4.根据权利要求1或2所述的方法,其特征在于:所述的调度器通过监控模块定时汇报物理节点的cpu使用率,内存使用量,磁盘io,网络io到调度器;并收集容器组中容器的负载,容器ip访问量到调度器。

5.根据权利要求3所述的方法,其特征在于:所述的调度器通过监控模块,由监控模块定时汇报物理节点的cpu使用率,内存使用量,磁盘io,网络io到调度器;并收集容器组中容器的负载,容器ip访问量到调度器。

说明书 :

一种适用于云平台的容器组调度方法

技术领域

[0001] 本发明涉及云计算技术领域,特别是一种适用于云平台的容器组调度方法。

背景技术

[0002] 云平台管理容器的方法是通过对单个应用运行环境进行打包再创建的方法来实现应用的快速部署运行的。由于用户应用需求的多样性,这种单个的容器创建方法已经不能满足需求,且会带来以下的问题:
[0003] 一是运维管理人员需要耗费大量时间用于对云平台的容器管理,每当有容器宕机或者其他问题时,运维人员必须马上进行处理,从宕机到恢复容器正常,时间不能确定。
[0004] 二是生成环境中容器部署的应用运行在低峰和高峰期间占用相同的资源,导致物理资源的利用率不高。
[0005] 为了减轻运维人员管理负担,缩减运维成本,增强平台资源的充分合理利用,提高产品稳定性,需要一种适用于云平台的容器组调度方法。

发明内容

[0006] 本发明在于提供一种适用于云平台的容器组调度方法,解决了云平台单个容器使用物理节点资源效率低下、应用稳定持续运行,运维难度大的问题。
[0007] 本发明解决上述技术问题的技术方案是:包括如下步骤:
[0008] 所述的方法包括容器组创建和调度;具体包括以下步骤:
[0009] 步骤1:创建并上传一个容器镜像,用于创建云平台中的容器对象;
[0010] 步骤2:选择步骤1中上传的镜像创建容器组,设置容器组内容器个数;
[0011] 步骤3:设置容器组的调度策略,包括cpu使用率,内存使用量,磁盘io,网络io;
[0012] 步骤4:设置容器组的扩展策略,根据访问量、容器负载决定扩展、缩减;
[0013] 步骤5:调度器获取云平台中所有容器组并遍历容器组,获取容器组的调度策略;
[0014] 步骤6:判断容器组内是否有容器宕机,若有则分配物理节点重新创建容器;
[0015] 步骤7:根据容器组调度策略,调度器比较物理节点是否符合调度条件,若符合执行步骤8,否则执行步骤10;
[0016] 步骤8:调度器获取容器组配置,分配适合调度的物理节点返回到容器组进行调度;
[0017] 步骤9:调度器根据分配物理节点使用容器组镜像创建一个新的容器,创建完成后从原有容器组中删除一个容器;
[0018] 步骤10:调度获取容器组负载、访问量,判断是否符合扩展、缩减预设值;若符合执行步骤11,否则执行步骤15;
[0019] 步骤11:调度器判断需要扩展,执行步骤12,;判断需要缩减,执行步骤14:
[0020] 步骤12:调度器获取容器组配置,分配适合调度的物理节点返回到容器组进行调度;
[0021] 步骤13:调度器根据分配物理节点使用容器组镜像创建一个新的容器;
[0022] 步骤14:调度器获取容器组中负载最低容器并关闭;
[0023] 步骤15:结束。
[0024] 容器镜像是上传后可以在云平台中所有的物理节点都读取到的镜像;容器组内容器个数是指容器组初始化时创建的容器个数。
[0025] 所述的调度器判断容器组中容器宿主物理节点cpu,内存,磁盘io,网络io等是否符合调度策略设置的阈值;当符合时,根据调度策略在其余的物理节点中根据对应设置选择最优的物理节点进行调度;在目标物理节点中使用指定镜像创建容器纳入容器组中;
[0026] 所述的调度器在扩展、缩减时,当符合扩展时,根据策略在其余的物理节点中选择最优的物理节点进行创建;当符合缩减时,根据策略选取最优容器进行关闭。
[0027] 所述的调度器通过监控模块,由监控模块定时汇报物理节点的cpu使用率,内存使用量,磁盘io,网络io到调度器;并收集容器组中容器的负载,容器ip访问量到调度器。
[0028] 本发明解决了云平台中容器资源使用效率低,管理工作量大的问题,提高容器运行的稳定性。通过容器组来对同样类型的容器管理分配资料,提高物理资源的利用率,减少运维成本,提高运维人员的工作效率;根据不同的调度策略设置,可以满足客户不同场景的需要。

附图说明

[0029] 下面结合附图对本发明进一步说明:
[0030] 图1为本发明方法创建容器组流程图;
[0031] 图2为本发明方法容器组调度流程图。
[0032] 具体实施方法
[0033] 如图1、2所示,本发明首先创建一个容器组,初始化容器组内容器数量,设置容器调度策略,设置容器扩展缩减策略:
[0034]
[0035] 对于需要调度的容器组,调用下面方法分配可用的物理节点用于调度创建新的容器。
[0036]
[0037]
[0038]
[0039]
[0040]
[0041]