CN105630607B - 一种资源池管理方法、容器创建方法及电子设备 - Google Patents

一种资源池管理方法、容器创建方法及电子设备 Download PDF

Info

Publication number
CN105630607B
CN105630607B CN201510981124.7A CN201510981124A CN105630607B CN 105630607 B CN105630607 B CN 105630607B CN 201510981124 A CN201510981124 A CN 201510981124A CN 105630607 B CN105630607 B CN 105630607B
Authority
CN
China
Prior art keywords
container
virtual port
port
container virtual
network
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201510981124.7A
Other languages
English (en)
Other versions
CN105630607A (zh
Inventor
石颖
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Lenovo Beijing Ltd
Original Assignee
Lenovo Beijing Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Lenovo Beijing Ltd filed Critical Lenovo Beijing Ltd
Priority to CN201510981124.7A priority Critical patent/CN105630607B/zh
Publication of CN105630607A publication Critical patent/CN105630607A/zh
Application granted granted Critical
Publication of CN105630607B publication Critical patent/CN105630607B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5055Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering software capabilities, i.e. software resources associated or available to the machine

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种资源池管理方法、容器创建方法及电子设备,所述资源池管理方法包括:建立与容器虚拟网对应的容器虚拟端口;建立与所述容器虚拟网对应的网络虚拟端口;建立所述容器虚拟端口与所述网络虚拟端口之间的对应关系;基于所述容器虚拟端口、所述网络虚拟端口和所述对应关系,生成与容器虚拟网对应的容器虚拟端口列表,其中,所述容器虚拟端口列表包括空闲的容器虚拟端口。

Description

一种资源池管理方法、容器创建方法及电子设备
技术领域
本发明涉及电子技术领域,特别涉及一种资源池管理方法、容器创建方法及电子设备。
背景技术
容器(container)相对于虚拟机(virtual machine;VM)而言,具有轻量化,镜像小,启动快,版本管理容易等优点,被认为是云计算的下一代技术。
目前,如图1所示,容器管理软件docker新增了容器虚拟网络功能,包括本地容器网络模块(Libnetwork)和远程网络驱动(Kuryr)两个组件,远程网络驱动通过调用云平台的网络控制器配置虚拟网络,然后,网络控制器再调用底层的网络驱动来实现网络虚拟端口的增加,并向容器管理软件提供容器虚拟网络服务。
在创建容器时,容器虚拟网络功能需要经过本地容器网络模块、远程网络驱动、网络控制器和底层的网络驱动等4层映射和绑定,给容器启动带来了较大的启动延时。并且,复杂的调用过程也增大了容器创建过程中出错的可能性和失败回滚的难度。
发明内容
本发明实施例提供一种资源池管理方法、容器创建方法及电子设备,用于解决现有技术中存在的,容器管理软件在创建容器时,网络侧需要通过多层映射和绑定,存在较大的启动延时的技术问题。
第一方面,本申请实施例提供一种资源池管理方法,包括:
建立与容器虚拟网对应的容器虚拟端口;
建立与所述容器虚拟网对应的网络虚拟端口;
建立所述容器虚拟端口与所述网络虚拟端口之间的对应关系;
基于所述容器虚拟端口、所述网络虚拟端口和所述对应关系,生成与容器虚拟网对应的容器虚拟端口列表,其中,所述容器虚拟端口列表包括空闲的容器虚拟端口。
可选的,所述方法还包括:
获取容器建立请求;
基于所述容器建立请求,从所述容器虚拟端口列表中确定出空闲的容器虚拟端口分配给所述容器。
可选的,所述方法还包括:
获取所述容器虚拟端口列表中的空闲的容器虚拟端口的端口个数;
在所述端口个数小于所述容器虚拟网的预定空闲端口个数时,建立所述容器虚拟网对应的容器虚拟端口,并建立所述容器虚拟网对应网络虚拟端口。
可选的,所述预定空闲端口个数为根据建立一个容器虚拟端口并通过所述容器虚拟端口绑定网络虚拟端口的时间和将一个空闲的容器虚拟端口分配给一个容器的时间确定的数值。
可选的,从所述容器虚拟端口列表中确定出空闲的容器虚拟端口分配给所述容器,包括:
获取所述容器建立请求中包含的容器虚拟网标识;
确定与所述容器虚拟网标识对应的容器虚拟端口列表;
若所述容器虚拟端口列表中存在空闲的容器虚拟端口,将所述空闲容器虚拟端口分配给所述容器。
第二方面,本申请实施例还提供一种容器创建方法,包括:
获取容器建立请求;
基于所述容器建立请求,从容器虚拟端口列表中确定出空闲的容器虚拟端口分配给所述容器;
其中,所述容器虚拟端口列表包括空闲的容器虚拟端口和与所述容器虚拟端口对应的网络虚拟端口。
第三方面,本申请实施例还提供一种电子设备,包括:
存储单元;
处理器,用于与容器虚拟网对应的容器虚拟端口;建立与所述容器虚拟网对应的网络虚拟端口;建立所述容器虚拟端口与所述网络虚拟端口之间的对应关系;基于所述容器虚拟端口、所述网络虚拟端口和所述对应关系,生成与容器虚拟网对应的容器虚拟端口列表,其中,所述容器虚拟端口列表包括空闲的容器虚拟端口。
可选的,所述处理器还用于:
获取容器建立请求;
基于所述容器建立请求,从所述容器虚拟端口列表中确定出空闲的容器虚拟端口分配给所述容器。
可选的,所述处理器还用于:
获取所述容器虚拟端口列表中的空闲的容器虚拟端口的端口个数;
在所述端口个数小于所述容器虚拟网的预定空闲端口个数时,建立所述容器虚拟网对应的容器虚拟端口,并建立所述容器虚拟网对应网络虚拟端口。
可选的,所述预定空闲端口个数为根据建立一个容器虚拟端口并通过所述容器虚拟端口绑定网络虚拟端口的时间和将一个空闲的容器虚拟端口分配给一个容器的时间确定的数值。
可选的,所述处理器具体用于:
获取所述容器建立请求中包含的容器虚拟网标识;
确定与所述容器虚拟网标识对应的容器虚拟端口列表;
若所述容器虚拟端口列表中存在空闲的容器虚拟端口,将所述空闲容器虚拟端口分配给所述容器。
第四方面,本申请实施例还提供一种电子设备,包括:
第一建立单元,用于建立与容器虚拟网对应的容器虚拟端口;
第二建立单元,用于建立与所述容器虚拟网对应的网络虚拟端口;
第三建立单元,用于建立所述容器虚拟端口与所述网络虚拟端口之间的对应关系;
生成单元,用于基于所述容器虚拟端口、所述网络虚拟端口和所述对应关系,生成与容器虚拟网对应的容器虚拟端口列表,其中,所述容器虚拟端口列表包括空闲的容器虚拟端口。
本申请实施例中的上述一个或多个技术方案,至少具有如下一种或多种技术效果:
本申请实施例的方案中,通过创建与容器虚拟网对应的容器虚拟端口和网络虚拟端口,并建立容器虚拟端口和网络虚拟端口之间的对应关系,然后,基于容器虚拟端口、网络虚拟端口和所述对应关系,生成与容器虚拟网对应的容器虚拟端口列表,其中,所述容器虚拟端口列表包括空闲的容器虚拟端口。空闲的容器虚拟端口的作用为:在请求创建容器时,可以直接分配容器虚拟端口列表中的空闲的容器虚拟端口给容器,而不需要通过远程网络驱动向网络控制器请求创建一个新的网络虚拟端口,从而避免了网络侧的操作流程,从而解决了现有技术中存在的,容器管理软件在创建容器时,网络侧需要通过多层映射和绑定,存在较大的启动延时的技术问题,实现了加快了容器启动速度,减小启动延时的技术效果。
并且,由于避免了网络侧的操作流程,也就避免了复杂的调用过程,减小了容器创建过程中出错的可能性和失败回滚的难度。
附图说明
图1为现有技术中的容器虚拟网络功能的示意图;
图2为本申请实施例中的资源池管理方法的流程示意图;
图3为本申请实施例中的虚拟化层的示意图;
图4A为本申请实施例中的容器虚拟网和网络虚拟网的映射表的示意图;
图4B为本申请实施例中的容器虚拟端口和网络虚拟端口的映射表的示意图;
图5为本申请实施例中的容器虚拟端口列表的示意图;
图6为本申请实施例中空闲的容器虚拟端口个数的控制方法流程图;
图7为本申请实施例中获取平均答复时延的方法流程示意图;
图8为本申请实施例中获取平均调用时间的方法流程示意图;
图9为本申请实施例中容器创建方法的流程示意图;
图10为本申请实施例中本地容器网络模块创建一个容器的流程示意图;
图11为本申请实施例中本地容器网络模块使用和维护资源池的流程示意图;
图12为本申请实施例中电子设备的硬件结构的示意图;
图13为本申请实施例中电子设备的功能模块的示意图。
具体实施方式
在本申请实施例提供的技术方案中,通过基于预先建立好的容器虚拟端口、网络虚拟端口以及容器虚拟端口和网络虚拟端口之间的对应关系,生成与容器虚拟网对应的容器虚拟端口列表,其中,所述容器虚拟端口列表包括空闲的容器虚拟端口,从而解决了现有技术中存在的,容器管理软件在创建容器时,网络侧需要通过多层映射和绑定,存在较大的启动延时的技术问题,实现了加快了容器启动速度,减小启动延时的技术效果。
下面结合附图对本申请实施例技术方案的主要实现原理、具体实施方式及其对应能够达到的有益效果进行详细的阐述。
本申请实施例中,电子设备可以为计算机,如:服务器,笔记本电脑,一体机或者台式电脑。这些计算机上可以安装容器管理软件并对容器进行管理。
如图2所示,为本申请实施例中资源池管理方法的流程示意图,包括:
步骤20:建立与容器虚拟网对应的容器虚拟端口。
步骤21:建立与所述容器虚拟网对应的网络虚拟端口。
步骤22:建立所述容器虚拟端口与所述网络虚拟端口之间的对应关系。
步骤23:基于所述容器虚拟端口、所述网络虚拟端口和所述对应关系,生成与容器虚拟网对应的容器虚拟端口列表,其中,所述容器虚拟端口列表包括空闲的容器虚拟端口。
在资源池管理方法进行说明之前,介绍本申请实施例中电子设备的虚拟化层,如图3所示,为本申请实施例中虚拟化层的示意图。其中,虚拟化层包括容器虚拟网和虚拟网,容器虚拟网和网络虚拟网通过虚拟网映射表对应,容器虚拟网中的容器虚拟端口与虚拟网中的网络虚拟端口通过虚拟端口映射表对应,如图4A所示,为容器虚拟网和网络虚拟网的映射表,如图4B所示,为容器虚拟端口和网络虚拟端口的映射表。其中,容器ID,容器虚拟网ID,网络虚拟网ID,容器虚拟端口ID以及网络虚拟端口ID都可以使用UUID(UniversallyUnique Identifier;通用唯一识别码)表示。
本地容器网络模块为每个容器虚拟网创建一个容器虚拟端口(vEth)资源池。可选的,资源池的生命周期和容器虚拟网的生命周期一致。
在容器虚拟端口资源池中,建立容器虚拟网对应的容器虚拟端口,以及容器虚拟网对应的网络虚拟端口,并建立容器虚拟端口和网络虚拟端口之间的对应关系。然后,基于容器虚拟端口、网络虚拟端口和对应关系,生成与容器虚拟网对应的容器虚拟端口列表,其中,所述容器虚拟端口列表包括空闲的容器虚拟端口。
具体的,本地容器网络模块创建资源池后,在资源池中创建容器虚拟端口,并通过远程网络驱动向网络控制器请求创建相应的网络虚拟端口。其中,网络虚拟端口与容器虚拟端口一一对应,也就是说,本地容器网络模块在资源池中创建了一个容器虚拟端口,就需要向网络控制器请求创建一个相应的网络虚拟端口。然后,建立容器虚拟端口与所述网络虚拟端口之间的对应关系,并基于建立的容器虚拟端口,网络虚拟端口和对应关系,生成容器虚拟端口列表,其中,所述容器虚拟端口列表包括空闲的容器虚拟端口。
空闲的容器虚拟端口的作用为:在请求创建容器时,可以直接分配容器虚拟端口列表中的空闲的容器虚拟端口给容器,而不需要通过远程网络驱动向网络控制器请求创建一个新的网络虚拟端口,从而避免了网络侧的操作流程。如图5所示,为容器虚拟端口列表的示意图,容器虚拟端口列表中包括空闲的容器虚拟端口,以及对应的网络虚拟端口。
本地容器网络模块在创建资源池后,可以对资源池中的空闲的容器虚拟端口的个数进行控制,如图6所示,包括以下步骤:
步骤60:获取所述容器虚拟端口列表中的空闲的容器虚拟端口的端口个数。
步骤61:在所述端口个数小于所述容器虚拟网的预定空闲端口个数时,建立所述容器虚拟网对应的容器虚拟端口,并建立所述容器虚拟网对应网络虚拟端口。
假设容器虚拟网中预定空闲端口个数为N,如果容器虚拟端口列表中的空闲的容器虚拟端口的端口个数小于N,则本地容器网络模块会创建新的容器虚拟端口,并向远程网络驱动发起新的REST(Representational State Transfer;表示性状态转移)请求,通过远程网络驱动向网络控制器请求创建相应的网络虚拟端口,直到容器虚拟端口列表中包含的空闲容器虚拟端口的个数为N。然后,将新创建的容器虚拟端口加入容器虚拟网,作为空闲的容器虚拟端口,并对容器虚拟端口列表进行更新。
如果空闲的容器虚拟端口的端口个数大于N,本地容器网络模块会删除容器虚拟端口,并向远程网络驱动发起新的REST请求,通过远程网络驱动向网络控制器请求删除相应的网络虚拟端口,直到容器虚拟端口列表中包含的空闲容器虚拟端口的个数为N。然后,对容器虚拟端口列表进行更新,从容器虚拟端口列表相应的容器虚拟端口和网络虚拟端口。
其中,N为正整数。N的值可以为预设值,如:N可以为2或3。N的值也可以为根据建立一个容器虚拟端口并通过所述容器虚拟端口绑定网络虚拟端口的时间和将一个空闲的容器虚拟端口分配给一个容器的时间确定的数值。
假设建立一个容器虚拟端口及通过所述容器虚拟端口绑定网络虚拟端口的时间为R_avg,将一个空闲的容器虚拟端口分配给一个容器的时间为r_avg,则N的值可以为R_avg/r_avg的值取整数。
通过所述容器虚拟端口绑定网络虚拟端口的时间是指:建立资源池时,本地容器网络模块向远程网络驱动发送创建容器虚拟端口的REST请求后的平均答复时延。如图7所示,为获取平均答复时延的方法流程示意图,包括以下步骤:
步骤71:本地容器网络模块向远程网络驱动发送创建容器虚拟端口的REST请求。
步骤72:等待REST答复并计时。
步骤73:判断是否收到REST答复。如果收到,执行步骤74;如果没收到,执行步骤75。
步骤74:计算当前时间窗口T内的平均答复时延R_avg;其中,时间窗口T可以进行设置,例如:将T设置为1小时或者2小时。
步骤75:判断是否超时。是,则流程结束;否,则返回执行步骤72。
建立一个容器虚拟端口的时间是指:建立资源池时,容器管理软件调用本地容器网络模块在现有容器虚拟网创建容器虚拟端口的平均调用时间。如图8所示,为获取平均调用时间的方法流程示意图,包括以下步骤:
步骤81:调用本地容器网络模块在现有容器虚拟网创建容器虚拟端口。
步骤82:记录调用执行时间。
步骤83:判断是否创建成功。如果创建成功,则执行步骤74;如果创建失败,则流程结束。
步骤84:计算当前时间窗口T内的平均调用时间r_avg;其中,时间窗口T可以进行设置,例如:将T设置为1小时或者2小时。
步骤85:更新N等于R_avg/r_avg的值取整数。
本申请实施例中,通过维持容器虚拟端口列表中包含的空闲的容器虚拟端口个数,以及对应的网络虚拟端口,能够减小容器的启动延时,并减少增加或者删除网络虚拟端口的操作次数。
接下来,对本申请实施例中容器创建方法进行说明,如图9所示,包括以下步骤:
步骤91:获取容器建立请求。其中,容器建立请求为用户通过容器管理软件发起的容器建立请求。
步骤92:基于所述容器建立请求,从所述容器虚拟端口列表中确定出空闲的容器虚拟端口分配给所述容器。
具体的,基于所述容器建立请求,容器管理软件调用本地容器网络模块创建容器虚拟端口,本地容器网络模块从容器虚拟端口列表中确定出空闲的容器虚拟端口,并将空闲的容器虚拟端口直接分配给所述容器。
如图10所示,为本地容器网络模块创建一个容器的流程示意图,包括以下步骤:
步骤101:本地容器网络模块收到创建容器虚拟端口的请求。其中,所述请求可以为RPC(Remote Procedure Call Protocol;远程过程调用协议)请求。
步骤102:本地容器网络模块创建容器的endpoint。
步骤103:从容器虚拟端口列表中确定出空闲的容器虚拟端口,并将空闲的容器虚拟端口直接分配给所述容器,即使用空闲虚拟端口和容器内的虚拟端口绑定,其中,容器内的虚拟端口是指容器内运行的业务端口。
步骤104:绑定空闲的容器虚拟端口和endpoint。
步骤105:返回答复;所述答复中包括容器的endpoint,容器创建成功。其中,所述答复可以为RPC答复。
接下来,对本地容器网络模块使用和维护资源池的方法进行说明,如图11所示,包括以下步骤:
步骤110:收到创建容器虚拟端口的请求;其中,所述请求可以为RPC请求。
步骤111:确定创建的容器属于现有的容器虚拟网还是属于新的容器虚拟网;如果属于现有的容器虚拟网,执行步骤112;如果属于新的容器虚拟网,执行步骤113。
步骤112:查找现有的容器虚拟网对应的容器虚拟端口资源池,获取容器虚拟端口列表,并执行步骤114。其中,可以通过获取容器建立请求中包含的容器虚拟网标识(即容器虚拟网ID),并基于所述容器虚拟网标识确定对应的容器虚拟端口列表。
步骤113:创建新的容器虚拟网,并执行步骤116。
步骤114:判断容器虚拟端口列表中是否存在空闲的容器虚拟端口;如果存在,执行步骤115;如果不存在,执行步骤117。
步骤115:将空闲的容器虚拟端口分配给容器,返回绑定好的endpoint。
步骤116:判断容器虚拟端口列表中空闲的容器虚拟端口的个数是否大于或者等于预定空闲端口个数N;如果小于,执行步骤117;如果大于或者等于,流程结束。
步骤117:向远程网络驱动发送创建容器虚拟端口的请求;其中,所述请求可以为REST请求。
基于同一发明构思,本申请实施例还提供一种电子设备,如图12所示,包括:
存储单元121;
处理器122,用于与容器虚拟网对应的容器虚拟端口;建立与所述容器虚拟网对应的网络虚拟端口;建立所述容器虚拟端口与所述网络虚拟端口之间的对应关系;基于所述容器虚拟端口、所述网络虚拟端口和所述对应关系,生成与容器虚拟网对应的容器虚拟端口列表,其中,所述容器虚拟端口列表包括空闲的容器虚拟端口。
可选的,所述处理器122还用于:
获取容器建立请求;
基于所述容器建立请求,从所述容器虚拟端口列表中确定出空闲的容器虚拟端口分配给所述容器。
可选的,所述处理器122还用于:
获取所述容器虚拟端口列表中的空闲的容器虚拟端口的端口个数;
在所述端口个数小于所述容器虚拟网的预定空闲端口个数时,建立所述容器虚拟网对应的容器虚拟端口,并建立所述容器虚拟网对应网络虚拟端口。
可选的,所述预定空闲端口个数为根据建立一个容器虚拟端口并通过所述容器虚拟端口绑定网络虚拟端口的时间和将一个空闲的容器虚拟端口分配给一个容器的时间确定的数值。
可选的,所述处理器122具体用于:
获取所述容器建立请求中包含的容器虚拟网标识;
确定与所述容器虚拟网标识对应的容器虚拟端口列表;
若所述容器虚拟端口列表中存在空闲的容器虚拟端口,将所述空闲容器虚拟端口分配给所述容器。
基于同一发明构思,本申请实施例还提供一种电子设备,如图13所示,包括:
第一建立单元131,用于建立与容器虚拟网对应的容器虚拟端口;
第二建立单元132,用于建立与所述容器虚拟网对应的网络虚拟端口;
第三建立单元133,用于建立所述容器虚拟端口与所述网络虚拟端口之间的对应关系;
生成单元134,用于基于所述容器虚拟端口、所述网络虚拟端口和所述对应关系,生成与容器虚拟网对应的容器虚拟端口列表,其中,所述容器虚拟端口列表包括空闲的容器虚拟端口。
可选的,所述电子设备还包括:
第一获取单元,用于获取容器建立请求;
分配单元,用于基于所述容器建立请求,从所述容器虚拟端口列表中确定出空闲的容器虚拟端口分配给所述容器。
可选的,所述电子设备还包括:
第二获取单元,用于获取所述容器虚拟端口列表中的空闲的容器虚拟端口的端口个数;
第四建立单元,用于在所述端口个数小于所述容器虚拟网的预定空闲端口个数时,建立所述容器虚拟网对应的容器虚拟端口,并建立所述容器虚拟网对应网络虚拟端口。
可选的,所述预定空闲端口个数为根据建立一个容器虚拟端口并通过所述容器虚拟端口绑定网络虚拟端口的时间和将一个空闲的容器虚拟端口分配给一个容器的时间确定的数值。
可选的,所述分配单元具体用于:
获取所述容器建立请求中包含的容器虚拟网标识;
确定与所述容器虚拟网标识对应的容器虚拟端口列表;
若所述容器虚拟端口列表中存在空闲的容器虚拟端口,将所述空闲容器虚拟端口分配给所述容器。
通过本申请实施例中的一个或多个技术方案,可以实现如下一个或多个技术效果:
本申请实施例的方案中,通过创建与容器虚拟网对应的容器虚拟端口和网络虚拟端口,并建立容器虚拟端口和网络虚拟端口之间的对应关系,然后,基于容器虚拟端口、网络虚拟端口和所述对应关系,生成与容器虚拟网对应的容器虚拟端口列表,其中,所述容器虚拟端口列表包括空闲的容器虚拟端口。空闲的容器虚拟端口的作用为:在请求创建容器时,可以直接分配容器虚拟端口列表中的空闲的容器虚拟端口给容器,而不需要通过远程网络驱动向网络控制器请求创建一个新的网络虚拟端口,从而避免了网络侧的操作流程,从而解决了现有技术中存在的,容器管理软件在创建容器时,网络侧需要通过多层映射和绑定,存在较大的启动延时的技术问题,实现了加快了容器启动速度,减小启动延时的技术效果。
并且,由于避免了网络侧的操作流程,也就避免了复杂的调用过程,减小了容器创建过程中出错的可能性和失败回滚的难度。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
具体来讲,本申请实施例中的资源池管理方法对应的计算机程序指令可以被存储在光盘,硬盘,U盘等存储介质上,当存储介质中的与资源池管理方法对应的计算机程序指令被一电子设备读取或被执行时,包括如下步骤:
建立与容器虚拟网对应的容器虚拟端口;
建立与所述容器虚拟网对应的网络虚拟端口;
建立所述容器虚拟端口与所述网络虚拟端口之间的对应关系;
基于所述容器虚拟端口、所述网络虚拟端口和所述对应关系,生成与容器虚拟网对应的容器虚拟端口列表,其中,所述容器虚拟端口列表包括空闲的容器虚拟端口。
可选的,所述存储介质中还存储有另外一些计算机指令,这些计算机指令在被执行时包括如下步骤:
获取容器建立请求;
基于所述容器建立请求,从所述容器虚拟端口列表中确定出空闲的容器虚拟端口分配给所述容器。
可选的,所述存储介质中还存储有另外一些计算机指令,这些计算机指令在被执行时包括如下步骤:
获取所述容器虚拟端口列表中的空闲的容器虚拟端口的端口个数;
在所述端口个数小于所述容器虚拟网的预定空闲端口个数时,建立所述容器虚拟网对应的容器虚拟端口,并建立所述容器虚拟网对应网络虚拟端口。
可选的,所述预定空闲端口个数为根据建立一个容器虚拟端口并通过所述容器虚拟端口绑定网络虚拟端口的时间和将一个空闲的容器虚拟端口分配给一个容器的时间确定的数值。
可选的,所述存储介质中存储的与步骤:从所述容器虚拟端口列表中确定出空闲的容器虚拟端口分配给所述容器,对应的计算机指令在具体被执行过程中,具体包括如下步骤:
获取所述容器建立请求中包含的容器虚拟网标识;
确定与所述容器虚拟网标识对应的容器虚拟端口列表;
若所述容器虚拟端口列表中存在空闲的容器虚拟端口,将所述空闲容器虚拟端口分配给所述容器。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (12)

1.一种资源池管理方法,包括:
建立与容器虚拟网对应的容器虚拟端口;
建立与所述容器虚拟网对应的网络虚拟端口;
建立所述容器虚拟端口与所述网络虚拟端口之间的对应关系;
基于所述容器虚拟端口、所述网络虚拟端口和所述对应关系,生成与容器虚拟网对应的容器虚拟端口列表,其中,所述容器虚拟端口列表包括空闲的容器虚拟端口。
2.如权利要求1所述的方法,其特征在于,所述方法还包括:
获取容器建立请求;
基于所述容器建立请求,从所述容器虚拟端口列表中确定出空闲的容器虚拟端口分配给所述容器。
3.如权利要求1或2所述的方法,其特征在于,所述方法还包括:
获取所述容器虚拟端口列表中的空闲的容器虚拟端口的端口个数;
在所述端口个数小于所述容器虚拟网的预定空闲端口个数时,建立所述容器虚拟网对应的容器虚拟端口,并建立所述容器虚拟网对应网络虚拟端口。
4.如权利要求3所述的方法,其特征在于,所述预定空闲端口个数为根据建立一个容器虚拟端口并通过所述容器虚拟端口绑定网络虚拟端口的时间和将一个空闲的容器虚拟端口分配给一个容器的时间确定的数值。
5.如权利要求2所述的方法,其特征在于,从所述容器虚拟端口列表中确定出空闲的容器虚拟端口分配给所述容器,包括:
获取所述容器建立请求中包含的容器虚拟网标识;
确定与所述容器虚拟网标识对应的容器虚拟端口列表;
若所述容器虚拟端口列表中存在空闲的容器虚拟端口,将所述空闲容器虚拟端口分配给所述容器。
6.一种容器创建方法,包括:
建立与容器虚拟网对应的容器虚拟端口;
建立与所述容器虚拟网对应的网络虚拟端口;
建立所述容器虚拟端口与所述网络虚拟端口之间的对应关系;
基于所述容器虚拟端口、所述网络虚拟端口和所述对应关系,生成与容器虚拟网对应的容器虚拟端口列表,其中,所述容器虚拟端口列表包括空闲的容器虚拟端口;
获取容器建立请求;
基于所述容器建立请求,从容器虚拟端口列表中确定出空闲的容器虚拟端口分配给所述容器;
其中,所述容器虚拟端口列表包括空闲的容器虚拟端口和与所述容器虚拟端口对应的网络虚拟端口。
7.一种电子设备,包括:
存储单元;
处理器,用于与容器虚拟网对应的容器虚拟端口;建立与所述容器虚拟网对应的网络虚拟端口;建立所述容器虚拟端口与所述网络虚拟端口之间的对应关系;基于所述容器虚拟端口、所述网络虚拟端口和所述对应关系,生成与容器虚拟网对应的容器虚拟端口列表,其中,所述容器虚拟端口列表包括空闲的容器虚拟端口。
8.如权利要求7所述的电子设备,其特征在于,所述处理器还用于:
获取容器建立请求;
基于所述容器建立请求,从所述容器虚拟端口列表中确定出空闲的容器虚拟端口分配给所述容器。
9.如权利要求7或8所述的电子设备,其特征在于,所述处理器还用于:
获取所述容器虚拟端口列表中的空闲的容器虚拟端口的端口个数;
在所述端口个数小于所述容器虚拟网的预定空闲端口个数时,建立所述容器虚拟网对应的容器虚拟端口,并建立所述容器虚拟网对应网络虚拟端口。
10.如权利要求9所述的电子设备,其特征在于,所述预定空闲端口个数为根据建立一个容器虚拟端口并通过所述容器虚拟端口绑定网络虚拟端口的时间和将一个空闲的容器虚拟端口分配给一个容器的时间确定的数值。
11.如权利要求8所述的电子设备,其特征在于,所述处理器具体用于:
获取所述容器建立请求中包含的容器虚拟网标识;
确定与所述容器虚拟网标识对应的容器虚拟端口列表;
若所述容器虚拟端口列表中存在空闲的容器虚拟端口,将所述空闲容器虚拟端口分配给所述容器。
12.一种电子设备,包括:
第一建立单元,用于建立与容器虚拟网对应的容器虚拟端口;
第二建立单元,用于建立与所述容器虚拟网对应的网络虚拟端口;
第三建立单元,用于建立所述容器虚拟端口与所述网络虚拟端口之间的对应关系;
生成单元,用于基于所述容器虚拟端口、所述网络虚拟端口和所述对应关系,生成与容器虚拟网对应的容器虚拟端口列表,其中,所述容器虚拟端口列表包括空闲的容器虚拟端口。
CN201510981124.7A 2015-12-23 2015-12-23 一种资源池管理方法、容器创建方法及电子设备 Active CN105630607B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510981124.7A CN105630607B (zh) 2015-12-23 2015-12-23 一种资源池管理方法、容器创建方法及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510981124.7A CN105630607B (zh) 2015-12-23 2015-12-23 一种资源池管理方法、容器创建方法及电子设备

Publications (2)

Publication Number Publication Date
CN105630607A CN105630607A (zh) 2016-06-01
CN105630607B true CN105630607B (zh) 2019-03-29

Family

ID=56045584

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510981124.7A Active CN105630607B (zh) 2015-12-23 2015-12-23 一种资源池管理方法、容器创建方法及电子设备

Country Status (1)

Country Link
CN (1) CN105630607B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10567397B2 (en) * 2017-01-31 2020-02-18 Hewlett Packard Enterprise Development Lp Security-based container scheduling
CN109587281B (zh) * 2017-09-29 2020-07-28 华为技术有限公司 容器配置方法和计算节点
CN108897601A (zh) * 2018-06-29 2018-11-27 郑州云海信息技术有限公司 一种基于虚拟化的fpga使用方法、系统及相关装置
CN111966442A (zh) * 2019-05-20 2020-11-20 北京白山耘科技有限公司 一种容器端口管理的方法,装置,介质及设备
CN110943914B (zh) * 2019-11-28 2022-01-21 中国南方电网有限责任公司 配电房智能网关及控制方法
CN113645149B (zh) * 2021-10-15 2022-02-08 鹏城实验室 时间敏感网络门控列表实现方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102413183A (zh) * 2011-11-22 2012-04-11 中国联合网络通信集团有限公司 云智能交换机及其处理方法、系统
CN103685399A (zh) * 2012-09-17 2014-03-26 腾讯科技(深圳)有限公司 一种登录类Unix虚拟容器的方法、装置和系统

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103312661B (zh) * 2012-03-07 2016-02-17 腾讯科技(深圳)有限公司 一种服务访问方法及装置
US9201704B2 (en) * 2012-04-05 2015-12-01 Cisco Technology, Inc. System and method for migrating application virtual machines in a network environment

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102413183A (zh) * 2011-11-22 2012-04-11 中国联合网络通信集团有限公司 云智能交换机及其处理方法、系统
CN103685399A (zh) * 2012-09-17 2014-03-26 腾讯科技(深圳)有限公司 一种登录类Unix虚拟容器的方法、装置和系统

Also Published As

Publication number Publication date
CN105630607A (zh) 2016-06-01

Similar Documents

Publication Publication Date Title
CN105630607B (zh) 一种资源池管理方法、容器创建方法及电子设备
CN104331375B (zh) 共享虚拟化资源池环境下的共享虚拟资源管理方法和装置
CN107231815B (zh) 用于图形渲染的系统和方法
US20180060184A1 (en) Off-site backup of workloads for multi-tenant cloud computing system
CN103810023B (zh) 一种云平台中分布式应用的智能部署方法及系统
WO2015143983A1 (zh) 一种对vnf实现加速处理的方法及装置
CN105138389A (zh) 一种集群中虚拟设备的管理方法及系统
US9672070B2 (en) Efficient validation of resource access consistency for a set of virtual devices
CN104283959B (zh) 一种适用于云平台的基于性能分级的存储机制
CN102937911B (zh) 虚拟机资源的管理方法及系统
WO2022141727A1 (zh) 一种基于云上成本的资源部署系统及方法
CN103986786A (zh) 一种远程云桌面操作系统
US10469593B2 (en) Method and system for sharded resource brokering
US9787761B2 (en) Allocating physical nodes for processes in an execution plan
CN106533713A (zh) 一种应用部署方法及设备
CN104348881A (zh) 云管理平台中的用户资源划分方法与装置
CN109697120A (zh) 用于应用迁移的方法、电子设备
CN106663012A (zh) 一种硬件加速方法以及相关设备
US10078535B2 (en) Network service infrastructure management system and method of operation
US20170310564A1 (en) Allocating physical nodes for processes in an execution plan
US8606908B2 (en) Wake-up server
CN103918239A (zh) 负载均衡方法、装置、系统及计算机可读介质
CN111638961A (zh) 资源调度系统和方法、计算机系统和存储介质
CN104793981B (zh) 一种虚拟机集群的在线快照管理方法及装置
CN106911741B (zh) 一种虚拟化网管文件下载负载均衡的方法及网管服务器

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant