CN110290172A - 容器应用克隆方法、装置、计算机设备及存储介质 - Google Patents

容器应用克隆方法、装置、计算机设备及存储介质 Download PDF

Info

Publication number
CN110290172A
CN110290172A CN201910410621.XA CN201910410621A CN110290172A CN 110290172 A CN110290172 A CN 110290172A CN 201910410621 A CN201910410621 A CN 201910410621A CN 110290172 A CN110290172 A CN 110290172A
Authority
CN
China
Prior art keywords
application
container
clone
container application
original
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.)
Granted
Application number
CN201910410621.XA
Other languages
English (en)
Other versions
CN110290172B (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.)
Ping An Technology Shenzhen Co Ltd
Original Assignee
Ping An Technology Shenzhen Co 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 Ping An Technology Shenzhen Co Ltd filed Critical Ping An Technology Shenzhen Co Ltd
Priority to CN201910410621.XA priority Critical patent/CN110290172B/zh
Priority to PCT/CN2019/103176 priority patent/WO2020232888A1/zh
Publication of CN110290172A publication Critical patent/CN110290172A/zh
Application granted granted Critical
Publication of CN110290172B publication Critical patent/CN110290172B/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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • 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/5083Techniques for rebalancing the load in a distributed system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/084Configuration by using pre-existing information, e.g. using templates or copying from other elements
    • H04L41/0846Configuration by using pre-existing information, e.g. using templates or copying from other elements based on copy from other elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing
    • 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45587Isolation or security of virtual machine instances

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本申请实施例提供一种容器应用克隆方法、装置、计算机设备及存储介质,其涉及云计算技术领域,可应用于PaaS平台中。所述方法包括:根据原始容器应用的应用信息和环境信息,以及所设置的克隆容器应用的环境信息确定克隆容器应用的应用信息;根据克隆容器应用的应用信息和克隆容器应用的环境信息确定克隆容器应用的容器实例IP;根据克隆容器应用的应用信息、环境信息以及容器实例IP创建克隆容器应用的容器实例,并将所创建的容器实例与所确定的克隆容器应用的容器实例IP进行绑定。本申请实施例实现了容器应用的克隆,通过容器应用克隆的方式,提高了新增的云服务中心搭建和配置的效率,提高了用户的体验。

Description

容器应用克隆方法、装置、计算机设备及存储介质
技术领域
本申请涉及云计算技术领域,尤其涉及一种容器应用克隆方法、装置、计算机设备及存储介质。
背景技术
由于业务的需求,需要在云服务平台中新增一些云服务中心,新增的云服务中心需要进行相应的环境配置后才可以投入使用。通常一个云服务中心环境中包括有多个容器应用,若对该新增的云服务中心的环境一步一步的从头开始搭建和配置,那么需要较高的专业知识,同时需要大量的时间成本和人工成本。
发明内容
本申请实施例提供一种容器应用克隆方法、装置、计算机设备及存储介质,可将一个云服务器中心的容器应用克隆到新增的云服务中心中,提高了新增的云服务中心搭建和配置的效率,提高了用户的体验。
第一方面,本申请实施例提供了一种容器应用克隆方法,该方法包括:
若接收到克隆设置指令,获取所述克隆设置指令中的原始容器应用,并根据所述克隆设置指令调用预设设置接口,以通过所述预设设置接口设置克隆容器应用的环境信息;若接收到设置完成指令,获取所设置的克隆容器应用的环境信息,并获取所述原始容器应用的应用信息和所述原始容器应用的环境信息;根据所述原始容器应用的应用信息和所述原始容器应用的环境信息,以及所述克隆容器应用的环境信息,确定所述克隆容器应用的应用信息;根据所述克隆容器应用的应用信息和所述克隆容器应用的环境信息,确定所述克隆容器应用的容器实例IP;根据所述克隆容器应用的应用信息、所述克隆容器应用的环境信息以及所述克隆容器应用的容器实例IP创建所述克隆容器应用的容器实例,并将所创建的容器实例与所确定的所述克隆容器应用的容器实例IP进行绑定。
第二方面,本申请实施例提供了一种容器应用克隆装置,该容器应用克隆装置包括用于执行上述第一方面所述的方法对应的单元。
第三方面,本申请实施例提供了一种计算机设备,所述计算机设备包括存储器,以及与所述存储器相连的处理器;
所述存储器用于存储计算机程序,所述处理器用于运行所述存储器中存储的计算机程序,以执行上述第一方面所述的方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时,实现上述第一方面所述的方法。
本申请实施例根据原始容器应用的应用信息和原始容器应用的环境信息,以及所设置的克隆容器应用的环境信息确定克隆容器应用的应用信息;根据克隆容器应用的应用信息和克隆容器应用的环境信息确定克隆容器应用的容器实例IP;根据克隆容器应用的应用信息、克隆容器应用的环境信息以及克隆容器应用的容器实例IP创建克隆容器应用的容器实例,并将所创建的容器实例与所确定的克隆容器应用的容器实例IP进行绑定。本申请实施例实现了容器应用的克隆,除了克隆容器应用所涉及的环境信息不同,如容器实例的IP地址不一致等之外,克隆容器应用和原始容器应用的其他信息完全一致。本申请实施例中通过容器应用克隆的方式,提高了新增的服务器中心搭建和配置的效率,而且,容器应用克隆的过程自动完成,进一步提高了新增的云服务中心搭建和配置的效率,提高了用户的体验。
附图说明
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的容器应用克隆方法的流程示意图;
图2是本申请实施例提供的容器应用克隆方法的子流程示意图;
图3是本申请实施例提供的容器应用克隆方法的子流程示意图;
图4是本申请另一实施例提供的容器应用克隆方法的流程示意图;
图5是本申请另一实施例提供的容器应用克隆方法的子流程示意图;
图6是本申请实施例提供的容器应用克隆装置的示意性框图;
图7是本申请实施例提供的应用信息确定单元的示意性框图;
图8是本申请实施例提供的应用创建单元启用单元的示意性框图;
图9是本申请另一实施例提供的容器应用克隆装置的示意性框图;
图10是本申请实施例提供的计算机设备的示意性框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要指出的是,一个云服务中心完成搭建和配置的环境中包括有多个容器应用,对环境进行克隆时,需要将一个云服务中心环境(称为原始环境)中的容器应用都克隆到另一个云服务中心的环境(目的环境或者克隆环境)中。为了防止多个容器应用一起克隆的诸多不可控因素,一般情况下,在进行环境克隆时一个容器应用一个容器应用的进行克隆。以下将详细描述容器应用克隆的实现方式。
图1是本申请实施例提供的容器应用克隆方法的流程示意图。如图1所示,该方法包括S101-S105。
S101,若接收到克隆设置指令,获取所述克隆设置指令中的原始容器应用,并根据所述克隆设置指令调用预设设置接口,以通过所述预设设置接口设置克隆容器应用的环境信息。
需要注意的是,原始容器应用和克隆容器应用都属于容器应用。原始容器应用已经存在了,而克隆容器应用还不存在,通过本申请实施例中的方法以根据原始容器应用进行克隆从而得到该克隆容器应用。
其中,克隆设置指令由用户点击相关按钮或者图像触发。如在云服务中心的原始容器应用的列表中,对应有多个原始容器应用,用户选择其中一个原始容器应用,并点击该原始容器应用所对应的克隆设置等相关按钮,会触发克隆设置指令。在其他实施例中,也可以通过其他的方式触发。
其中,预设设置接口为开发人员编写的设置接口,可以以设置页面的形式存在。通过该预设设置接口可以设置需克隆的克隆容器应用的环境信息。具体地,接收用户输入的/选择的克隆容器应用的环境信息。
S102,若接收到设置完成指令,获取所设置的克隆容器应用的环境信息,并获取所述原始容器应用的应用信息和所述原始容器应用的环境信息。
设置完成指令由用户点击相应按钮或者图像触发,也可以通过其他的方式触发。若接收到设置完成指令,获取所设置的克隆容器应用的环境信息,并根据原始容器应用从数据库中获取原始容器应用的信息,包括原始容器应用的应用信息和所述原始容器应用的环境信息等。
由于原始容器应用和克隆容器应用都属于容器应用。因此,原始容器应用的信息和克隆容器应用的信息中所对应的相同属性都表示同一个含义,以下以容器应用的角度来介绍各个属性的含义。
每个容器应用的信息包括容器应用的应用信息和容器应用的环境信息。其中,容器应用的应用信息包括容器应用的应用镜像信息、容器应用的容器实例数量、容器实例所占用的资源、容器应用的应用配置等。容器应用的环境信息包括容器应用的应用环境、容器应用的区域、容器应用的使用时间、容器应用的资源组等。容器应用的环境信息还可以包括是否同步到OCPM、容器应用的部署方式、是否启用监控、受益人资源池等。
其中,容器应用的应用镜像信息包括镜像版本、镜像类型和镜像名称。其中,镜像版本包括官方版本、官方1.1、官方2.3等;镜像类型指的是该容器实例使用哪种镜像,如nginx、tomcat、weblogic、springboot等;镜像名称指的是具体的镜像名称。容器应用的应用环境包括生产环境、测试环境、开发环境等。其中,生产环境意味着该容器应用创建成功后对接外部环境,或者以供外部用户进行访问;测试环境意味着该容器应用创建成功后供内部测试使用;开发环境意味着该容器应用创建成功后供开发使用。容器应用的区域指的是创建容器应用的机房位置,由两部分组成:“区域”+“安全区域”。然而,确定容器应用创建在哪个具体地机房中,需要根据容器应用的应用环境和容器应用的区域共同决定,如将容器应用创建在测试环境下的“xx区域”下的“xxx安全区域”的所对应的机房中。可以理解为,不同应用环境、不同区域所对应的机房不同。容器应用的容器实例数量指的是该容器应用需创建的的容器数量,同一容器应用的容器数量是没有上限的。容器应用的使用时间,可以月作为计量单位,如使用时间为5个月。需要注意的是,由于每个容器实例都需要花钱,因此容器应用的容器实例数量和容器应用的使用时间决定了容器应用所需要花费的金额。容器应用的资源组指的是容器应用名下的资源账户,用于容器实例的创建所需要使用的费用。若容器应用的资源组下的资源账户的金额不足以用来创建该容器应用,需进行提示,不能进行该容器应用的创建。是否同步到opcm指的是是否同步容器应用信息到企业内部的信息平台,供其他关联方查看。在一些实施例中,容器应用的信息还包括受益人资源池,受益人资源池指的是创建容器应用的子公司/部门。若容器应用的信息还包括受益人资源池,那么受益人资源池与容器应用的应用环境、容器应用的区域一起决定所创建的容器实例分配的IP网段以及容器的资源,不同资源池,使用的是不同的IP网段以及资源。部署方式,对接公司内部的部署平台,用于决定该容器应用的后续版本发布模式。
S103,根据所述原始容器应用的应用信息和所述原始容器应用的环境信息,以及所述克隆容器应用的环境信息,确定所述克隆容器应用的应用信息。
在一实施例中,原始容器应用的应用信息包括:原始容器应用的应用镜像信息、原始容器应用的应用配置、原始容器应用的容器实例数量、容器实例所占用的资源等,原始容器应用的环境信息包括原始容器应用的应用环境、原始容器应用的区域等,克隆容器应用的环境信息克隆容器应用的应用环境、克隆容器应用的区域等。
如图2所示,步骤S103包括以下步骤S1031-S1034。
S1031,根据所述原始容器应用的环境信息、所述原始容器应用的应用镜像信息,以及所述克隆容器应用的环境信息,确定所述克隆容器应用的应用镜像信息。
可以理解为,不同的环境信息所对应的数据仓库不同,然而在创建容器应用时,需要保证创建容器应用的数据仓库中存在有容器应用的应用镜像信息,从而可以直接从创建容器应用的数据仓库中获取应用镜像信息,而无需跨数据仓库获取应用镜像信息,提高了创建容器应用的速度,保证了信息的安全。
在一实施例中,步骤S1031包括:判断所述原始容器应用的应用环境与所述克隆容器应用的应用环境是否一致且所述原始容器应用的区域与所述克隆容器应用的区域是否一致;若所述原始容器应用的应用环境与所述克隆容器应用的应用环境一致且所述原始容器应用的区域与所述克隆容器应用的区域一致,将所述原始容器应用的应用镜像信息确定为所述克隆容器应用的应用镜像信息;否则将所述原始容器应用的应用镜像信息推送至所述克隆容器应用所对应的镜像仓库中,并将推送至镜像仓库中的该应用镜像信息确定为所述克隆容器应用的应用镜像信息。
其中,若原始容器应用的应用环境、原始容器应用的区域与克隆容器应用的应用环境、克隆容器应用的区域不一致,那么确定原始容器应用和克隆容器应用不在同一个区域(机房)。一般一个区域对应有相应的镜像仓库,以方便从相应的镜像仓库中获取应用镜像以创建容器应用。若不一致,那么需要将原始容器应用的应用镜像信息推送至克隆容器应用所在的镜像仓库中。
具体地,根据原始容器应用的应用环境和原始容器应用的区域确定原始容器应用的应用镜像所对应的镜像仓库,根据克隆容器应用的应用环境和克隆容器应用的区域确定克隆容器应用的应用镜像所对应的镜像仓库;根据原始容器应用的镜像名称、镜像版本和镜像类型从原始容器应用所在的镜像仓库中查找所对应的应用镜像;将所查找到的应用镜像推送至克隆容器应用所对应的镜像仓库,即将所查找到的应用镜像信息复制到克隆容器应用所对应的镜像仓库。
在一实施例中,在执行判断所述原始容器应用的应用环境与所述克隆容器应用的应用环境是否一致且所述原始容器应用的区域与所述克隆容器应用的区域是否一致之前,所述步骤S1031还包括:根据所述克隆容器应用的应用环境、克隆容器应用的区域判断所述克隆容器应用所对应的区域中是否已经创建了所述克隆容器应用;若未创建所述克隆容器应用,执行判断所述原始容器应用的应用环境与所述克隆容器应用的应用环境是否一致且所述原始容器应用的区域与所述克隆容器应用的区域是否一致的步骤。
可以理解地,在确定克隆容器应用的应用信息之前先判断是否已创建了克隆容器应用,若已经创建了克隆容器应用,那么无需再确定克隆容器应用的应用信息了,返回提示信息。
S1032,根据所述原始容器应用的容器实例数量确定所述克隆容器应用的容器实例数量。
获取原始容器应用的容器实例数量,将原始容器应用的容器实例数量设置为克隆容器应用的容器实例数量,以使得克隆容器应用的容器实例数量与原始容器应用的容器实例数量相同。
在一实施例中,所述克隆容器应用的环境信息还包括克隆容器应用的使用时间、克隆容器应用的资源组。在步骤S1032之后,步骤S103还包括:根据所述克隆容器应用的容器实例数量、克隆容器应用的使用时间、克隆容器应用的资源组中的剩余金额判断克隆容器应用的资源组是否存在有足够金额以用来创建所述克隆容器应用,若存在足够金额以用来创建所述克隆容器应用,执行步骤S1033。若不存在足够金额以用来创建所述克隆容器应用,返回提示信息,同时撤销之前执行的步骤。
可以理解地,在确定克隆容器应用的应用信息的时候就进行创建克隆容器应用的金额是否足够的判断,以避免在没有足够金额的情况下,会多执行一些步骤。
S1033,根据所述原始容器应用的容器实例所占用的资源确定所述克隆容器应用的容器实例需占用的资源。
根据原始容器应用获取数据库中原始容器应用的容器实例所占用的资源,其中,容器实例所占用的资源包括容器实例所占用的CPU、内存大小、是否启用监控资源(用来监控容器实例的运行情况)等。将原始容器应用的容器实例所占用的资源确定为克隆容器应用的容器实例需占用的资源,以确保克隆容器应用的容器实例所占用的资源与原始容器应用的容器实例所占用的资源一致。
S1034,根据所述原始容器应用的应用配置确定所述克隆容器应用的应用配置。
容器应用的应用配置包括环境变量的配置和一些通用路径的配置等。可在原始容器应用的应用配置所对应的配置文件中获取对应的应用配置,将所获取的原始容器应用的应用配置设置为克隆容器应用的应用配置。如此,可确保克隆容器应用的应用配置与原始容器应用的应用配置一致。
需要注意的是,以上S1031-S1034中的执行顺序并没有严格限定,以上各步骤的执行顺序可按照其他顺序执行,只要最终可以确定克隆容器应用的应用镜像信息、容器实例数量、容器实例所占用的资源、容器应用的应用配置即可。
S104,根据所述克隆容器应用的应用信息和所述克隆容器应用的环境信息,确定所述克隆容器应用的容器实例IP。
具体地,根据克隆容器应用的应用环境、克隆容器应用的区域(在一实施例中,还包括克隆容器应用的受益人资源池)以及克隆容器应用的容器实例数量确定克隆容器应用的容器实例的IP。
根据克隆容器应用的应用环境、克隆容器应用的区域可确定克隆容器应用创建的位置,即将所对应的原始容器应用克隆在具体哪个机房中。获取数据库中该创建位置下预先分配的用于创建容器实例的IP地址池;从容器实例的IP地址池中获取与克隆容器应用的容器实例数量相同数量的空闲IP地址,将该空闲IP地址确定为克隆容器应用的容器实例IP。在一实施例中,若容器应用的信息包括容器应用的受益人资源池,那么根据容器应用的应用环境、容器应用的区域、容器应用的受益人资源池一起确定用于创建容器应用的IP地址池。
S105,根据所述克隆容器应用的应用信息、所述克隆容器应用的环境信息以及克隆容器应用的容器实例IP创建所述克隆容器应用的容器实例,并将所创建的容器实例与所确定的所述克隆容器应用的容器实例IP进行绑定。
如根据克隆容器应用的应用镜像信息、克隆容器应用的容器实例数量、容器实例需占用的资源、克隆容器应用的应用配置、克隆容器应用的应用环境、克隆容器应用的区域以及克隆容器应用的容器实例IP创建克隆容器应用的容器实例,并将所创建的容器实例与所确定的克隆容器应用的容器实例IP绑定,以将所确定的克隆容器应用的容器实例IP设置为所创建的容器实例的IP。
在一实施例中,如图3所示,步骤S105包括以下步骤S1051-S1054。
S1051,根据所述克隆容器应用的应用镜像信息从所述克隆容器应用所对应的镜像仓库中获取所述克隆容器应用的应用镜像。
S1052,根据所述克隆容器应用的应用环境、所述克隆容器应用的区域、所述克隆容器应用的容器实例数量以及所述克隆容器应用的容器实例需占用的资源确定创建所述克隆容器应用的容器实例的宿主机。
根据克隆容器应用的应用环境、克隆容器应用的区域可确定克隆容器应用创建的位置,即将克隆容器应用创建在具体哪个机房中。获取数据库中创建位置下预先分配的用于创建容器实例的宿主机的IP地址池;根据克隆容器应用的容器实例需占用的资源、容器实例数量从宿主机的IP地址池中确定创建容器实例的宿主机。需要注意的是,创建容器实例是需要占用宿主机的资源的,因此需要根据克隆容器应用的容器实例需占用的资源、容器实例数量确定宿主机。其中,容器实例数量与所确定的宿主机的数量相同。
S1053,根据所述克隆容器应用的应用镜像、所述克隆容器应用的应用配置在所确定的宿主机上创建所述克隆容器应用的容器实例,并设置所述克隆容器应用的应用配置。
具体地,通过容器编排工具将所获取的克隆容器应用的应用镜像信息、克隆容器应用的应用配置分配下发到所确定的宿主机上,以在所述宿主机上创建容器实例并设置克隆容器应用的应用配置。其中,容器编排工具可以为maration。其相当于一个中转站,将所获取的应用镜像信息等发送到该容器编排工具,然后由容器编排工具将应用镜像信息等分配下发到所确定的宿主机上,以进行容器实例的创建。
S1054,将所创建的容器实例与所确定的所述克隆容器应用的容器实例IP进行绑定。
具体地,通过运维工具如ansible去连接容器实例,将所创建的容器实例与所确定的克隆容器应用的容器实例IP进行绑定,以将所确定的克隆容器应用的容器实例IP设置为所创建的容器实例的IP。
若在确定克隆容器应用的应用信息之前,并没有判断是否已经创建了克隆容器应用,那么在创建克隆容器应用的时候可进行相应的判断。即在步骤S1051之前,执行:根据所述克隆容器应用的应用环境、克隆容器应用的区域判断所述克隆容器应用所对应的区域中是否已经创建了所述克隆容器应用;若未创建所述克隆容器应用,执行步骤S1051。
若在确定克隆容器应用的应用信息的时候并没有判断是否有足够金额来创建克隆容器应用,那么在创建克隆容器应用的时候可进行相应的判断。在一实施例中,克隆容器应用的环境信息还包括克隆容器应用的使用时间、克隆容器应用的资源组。对应的,在确定创建所述克隆容器应用的容器实例的宿主机之前,即在步骤S1052之前,所述步骤S105还包括S1051a。
S1051a,根据所述克隆容器应用的容器实例数量、所述克隆容器应用的使用时间、所述克隆容器应用的资源组中的剩余金额判断所述克隆容器应用的资源组中是否存在有足够金额以创建所述克隆容器应用。
若存在足够金额来创建所述克隆容器应用,执行步骤S1052,以确定所述克隆容器应用的容器实例的宿主机。若不存在足够金额来创建所述克隆容器应用,进行提示,同时撤销之前执行的所有步骤。
上述方法实施例实现了新增云服务中心的容器应用的克隆,除了克隆容器应用所涉及的环境信息不同,如容器实例的IP地址不一致等之外,克隆容器应用和原始容器应用的其他信息完全一致。本申请实施例中的容器应用克隆的过程自动完成,提高了新增的云服务中心搭建和配置的效率,提高了用户的体验。可以理解地,上述方法实施例实现了容器应用的克隆,在容器应用克隆的时候同时匹配新增云服务中心中的各种环境信息,如匹配新增云服务中心中的IP地址、宿主机等信息,实现了原始容器应用与新增云服务中心的环境完美匹配。
图4是本申请另一实施例提供的容器应用克隆方法的流程示意图。如图4所示,所述容器应用克隆方法包括S201-S208。其中,步骤S201-S205与图1实施例中的步骤S101-S105相对应,具体请参看图1实施例中的描述,下面将具体介绍步骤S206-S208。
S206,检测所述原始容器应用是否创建了负载均衡应用。
从保存原始容器应用的信息的数据库中获取是否创建负载均衡应用的相关信息。若原始容器应用未创建负载均衡应用,意味着该克隆容器应用克隆完成,流程结束。若原始容器应用创建了负载均衡应用,执行步骤S207。若原始容器应用创建了负载均衡应用,那么意味着克隆容器应用的时候,克隆该容器应用所对应的负载均衡应用。
S207,获取所述原始容器应用的负载均衡应用的信息。
其中,原始容器应用的负载均衡应用的信息包括负载均衡应用的类型、负载均衡应用的端口信息、负载均衡应用的配置参数信息、负载均衡应用的应用镜像信息等等。
S208,根据所述原始容器应用的负载均衡应用的信息、所述克隆容器应用的应用信息和所述克隆容器应用的环境信息,为所述克隆容器应用创建对应的负载均衡应用。
在一实施例中,如图5所示,步骤S208包括以下步骤S2081-S2083。
S2081,根据所述原始容器应用的负载均衡应用的信息中的负载均衡应用的类型确定所述克隆容器应用的负载均衡应用的类型。
将原始负载均衡应用的类型确定为克隆容器应用的负载均衡应用的类型。其中,所述负载均衡应用的类型包括F5、LVS、Haproxy、Nginx等。
S2082,根据所述克隆容器应用的应用环境、所述克隆容器应用的区域,确定所述克隆容器应用的负载均衡应用的虚拟IP。
根据克隆容器应用的应用环境、克隆容器应用的区域确定创建负载均衡应用的IP地址池;从IP地址池中获取一个空闲IP作为克隆容器应用的负载均衡应用的虚拟IP(Virtual IP,VIP)。其中,需要注意的是,若负载均衡应用的类型为LVS负载均衡应用,那么除了确定负载均衡应用的虚拟IP之外,还需要确定一个管理IP,以方便云服务中心对LVS负载均衡应用的管理。其中,确定管理IP的方式跟虚拟IP的相同。
S2083,根据所述原始容器应用的负载均衡应用的信息、所述虚拟IP、所述克隆容器应用的信息,调用与所述负载均衡应用类型匹配的负载均衡应用创建接口,以创建所述克隆容器应用的负载均衡应用。
其中,若负载均衡应用的类型为F5,步骤S2083,包括:根据所述克隆容器应用的应用环境、所述克隆容器应用的区域确定创建所述克隆容器应用的负载均衡应用的F5设备;将所创建的克隆容器应用的容器实例与所述克隆容器应用的负载均衡应用的虚拟服务器进行关联以得到关联关系,并将所述关联关系、所创建的克隆容器应用的容器实例、所述负载均衡应用的端口信息、所述负载均衡应用的配置参数信息以及所述虚拟IP封装成对象;根据封装后的对象,调用F5负载均衡应用的创建接口,以在所确定的F5设备上创建所述负载均衡应用的虚拟服务器,并生成虚拟服务器的配置文件;若负载均衡应用创建完成,根据预设的域名生成规则生成访问域名,将所述访问域名与虚拟服务器的虚拟IP进行绑定,以通过所述访问域名来访问所述虚拟服务器。
若负载均衡应用的类型为LVS,步骤S2083,包括:根据所述克隆容器应用的应用环境、所述克隆容器应用的区域确定创建LVS负载均衡应用的宿主机,并在所述宿主机上创建LVS容器;根据所述虚拟IP、所创建的克隆容器应用的容器实例、所述负载均衡应用的端口信息、所述负载均衡应用的配置参数信息重构LVS负载均衡应用的配置文件;开启所述LVS容器的LVS负载均衡服务;配置所述LVS容器的子网卡,以将所述虚拟IP与所述LVS容器的子网卡进行绑定;为配置后的所述子网卡添加路由。
若负载均衡应用的类型为LVS,步骤S2083,包括:述克隆容器应用的应用环境、所述克隆容器应用的区域确定创建Haproxy负载均衡应用的宿主机,并在所述宿主机上创建Haproxy容器;根据所述虚拟IP、所创建的克隆容器应用的容器实例、所述负载均衡应用的端口信息、所述负载均衡应用的配置参数信息重构Haproxy负载均衡应用的配置文件;开启所述Haproxy容器的Haproxy负载均衡服务。
可以理解地,所创建的克隆容器应用的配置文件与原始容器应用的配置文静的不同包括:负载均衡应用的虚拟IP、容器实例信息,其他的如负载均衡应用的端口信息、所述负载均衡应用的配置参数信息等与原始容器应用中的一致。
该方法实施例进一步根据原始容器应用的负载均衡应用创建克隆容器应用的负载均衡应用。该方法实施例中的负载均衡应用克隆的过程自动完成,提高了新增的云服务中心搭建和配置的效率,提高了用户的体验。可以理解地,该方法实施例中若容器应用有负载均衡应用,实现容器应用的负载均衡应用的克隆,在负载均衡应用克隆的时候同时匹配新增云服务中心中的各种环境信息,如匹配新增云服务中心中的虚拟IP、宿主机等信息,实现了负载均衡应用与新增云服务中心的环境完美匹配。
图6是本申请实施例提供的容器应用克隆装置的示意性框图。该装置包括用于执行上述容器应用克隆方法所对应的单元。具体地,如图6所示,该装置100包括设置单元101、获取单元102、应用信息确定单元103、IP确定单元104以及应用创建单元105。
设置单元101,用于若接收到克隆设置指令,获取所述克隆设置指令中的原始容器应用,并根据所述克隆设置指令调用预设设置接口,以通过所述预设设置接口设置克隆容器应用的环境信息。
获取单元102,用于若接收到设置完成指令,获取所设置的克隆容器应用的环境信息,并获取所述原始容器应用的应用信息和所述原始容器应用的环境信息。
应用信息确定单元103,用于根据所述原始容器应用的应用信息和所述原始容器应用的环境信息,以及所述克隆容器应用的环境信息,确定所述克隆容器应用的应用信息。
在一实施例中,所述原始容器应用的应用信息包括原始容器应用的应用镜像信息、原始容器应用的应用配置、原始容器应用的容器实例数量、容器实例所占用的资源。如图7所示,应用信息确定单元103包括镜像确定单元1031、实例数量确定单元1032、资源确定单元1033以及配置确定单元1034。其中,镜像确定单元1031,用于根据所述原始容器应用的环境信息、所述原始容器应用的应用镜像信息,以及所述克隆容器应用的环境信息,确定所述克隆容器应用的应用镜像信息。实例数量确定单元1032,用于根据所述原始容器应用的容器实例数量确定所述克隆容器应用的容器实例数量。资源确定单元1033,用于根据所述原始容器应用的容器实例所占用的资源确定所述克隆容器应用的容器实例需占用的资源。配置确定单元1034,用于根据所述原始容器应用的应用配置确定所述克隆容器应用的应用配置。
在一实施例中,所述原始容器应用的环境信息包括原始容器应用的应用环境、原始容器应用的区域,所述克隆容器应用的环境信息包括克隆容器应用的应用环境、克隆容器应用的区域。所述镜像确定单元1031包括区域判断单元、应用镜像确定单元。其中,区域判断单元,用于判断所述原始容器应用的应用环境与所述克隆容器应用的应用环境是否一致且所述原始容器应用的区域与所述克隆容器应用的区域是否一致。应用镜像确定单元,用于若所述原始容器应用的应用环境与所述克隆容器应用的应用环境一致且所述原始容器应用的区域与所述克隆容器应用的区域一致,将所述原始容器应用的应用镜像信息确定为所述克隆容器应用的应用镜像信息;以及若不一致,将所述原始容器应用的应用镜像信息推送至所述克隆容器应用所对应的镜像仓库中,并将推送至镜像仓库中的该应用镜像信息确定为所述克隆容器应用的应用镜像信息。
在一实施例中,所述镜像确定单元1031还包括应用存在判断单元。其中,应用存在判断单元,用于根据所述克隆容器应用的应用环境、克隆容器应用的区域判断所述克隆容器应用所对应的区域中是否已经创建了所述克隆容器应用。若未创建所述克隆容器应用,触发区域判断单元。
在一实施例中,所述克隆容器应用的环境信息还包括克隆容器应用的使用时间、克隆容器应用的资源组。应用信息确定单元103还包括金额判断单元。其中,金额判断单元,用于根据所述克隆容器应用的容器实例数量、所述克隆容器应用的使用时间、所述克隆容器应用的资源组中的剩余金额判断所述克隆容器应用的资源组中是否存在有足够金额以创建所述克隆容器应用。若存在足够金额以创建所述克隆容器应用,触发资源确定单元。
IP确定单元104,用于根据所述克隆容器应用的应用信息和所述克隆容器应用的环境信息,确定所述克隆容器应用的容器实例IP。
应用创建单元105,用于根据所述克隆容器应用的应用信息、所述克隆容器应用的环境信息以及克隆容器应用的容器实例IP,创建所述克隆容器应用的容器实例,并将所创建的容器实例与所确定的所述克隆容器应用的容器实例IP进行绑定。
在一实施例中,如图8所示,应用创建单元105包括:应用镜像获取单元1051、宿主机确定单元1052、容器实例创建单元1053以及IP绑定单元1054。其中,应用镜像获取单元1051,用于根据所述克隆容器应用的应用镜像信息,从所述克隆容器应用所对应的镜像仓库中获取所述克隆容器应用的应用镜像。宿主机确定单元1052,用于根据所述克隆容器应用的应用环境、所述克隆容器应用的区域、所述克隆容器应用的容器实例数量以及所述克隆容器应用的容器实例需占用的资源,确定创建所述克隆容器应用的容器实例的宿主机。容器实例创建单元1053,用于根据所述克隆容器应用的应用镜像、所述克隆容器应用的应用配置在所确定的宿主机上创建所述克隆容器应用的容器实例,并设置所述克隆容器应用的应用配置。IP绑定单元1054,将所创建的容器实例与所确定的所述克隆容器应用的容器实例IP进行绑定。
在一实施例中,若若在确定克隆容器应用的应用信息之前,并没有判断是否已经创建了克隆容器应用,那么在创建克隆容器应用的时候可进行相应的判断。所述应用创建单元105还包括应用存在判断单元。其中,存在判断单元,用于根据所述克隆容器应用的应用环境、克隆容器应用的区域判断所述克隆容器应用所对应的区域中是否已经创建了所述克隆容器应用。若未创建所述克隆容器应用,接着触发应用镜像获取单元1051。
在一实施例中,若在确定克隆容器应用的应用信息的时候并没有判断是否有足够金额来创建克隆容器应用,那么在创建克隆容器应用的时候可进行相应的判断。所述应用创建单元105还包括金额判断单元1051a。其中,金额判断单元1051a,用于根据所述克隆容器应用的容器实例数量、所述克隆容器应用的使用时间、所述克隆容器应用的资源组中的剩余金额判断所述克隆容器应用的资源组中是否存在有足够金额以创建所述克隆容器应用。若存在足够金以来创建所述克隆容器应用,触发所述宿主机确定单元1052。
在一实施例中,如图9所示,是本申请另一实施例提供的容器应用克隆装置的示意性框图。该容器应用克隆装置200包括设置单元201、获取单元202、应用信息确定单元203、IP确定单元204、应用创建单元205、负载检测单元206、负载获取单元207以及负载创建单元208。其中,设置单元201、获取单元202、应用信息确定单元203、IP确定单元204、应用创建单元205与图6实施例中的设置单元101、获取单元102、应用信息确定单元103、IP确定单元104以及应用创建单元105分别对应,具体地,请参看图6实施例的描述。下面将详细描述本申请实施例与图6实施例的区别之处:负载检测单元206、负载获取单元207以及负载创建单元208。
负载检测单元206,用于检测所述原始容器应用是否创建了负载均衡应用。
负载获取单元207,用于若所述原始容器应用创建了负载均衡应用,获取所述原始容器应用的负载均衡应用的信息。
负载创建单元208,用于根据所述原始容器应用的负载均衡应用的信息、所述克隆容器应用的应用信息和所述克隆容器应用的环境信息为所述克隆容器应用创建对应的负载均衡应用。
在一实施例中,负载创建单元208包括:类型确定单元、虚拟IP确定单元以及负载创建单元。其中,类型确定单元,用于根据所述原始容器应用的负载均衡应用的信息中的负载均衡应用的类型确定所述克隆容器应用的负载均衡应用的类型。虚拟IP确定单元,用于根据所述克隆容器应用的应用环境、所述克隆容器应用的区域确定所述克隆容器应用的负载均衡应用的虚拟IP。负载创建单元,用于根据所述原始容器应用的负载均衡应用的信息、所述虚拟IP、所述克隆容器应用的容器实例信息调用与所述负载均衡应用类型匹配的负载均衡应用创建接口,以创建所述克隆容器应用的负载均衡应用。
需要说明的是,所属领域的技术人员可以清楚地了解到,上述装置和各单元的具体实现过程,可以参考前述方法实施例中的相应描述,为了描述的方便和简洁,在此不再赘述。
上述装置可以实现为一种计算机程序的形式,计算机程序可以在如图10所示的计算机设备上运行。
图10为本申请实施例提供的一种计算机设备的示意性框图。该设备为终端等设备,如PaaS平台中的服务器等。该设备300包括通过系统总线301连接的处理器302、存储器和网络接口303,其中,存储器可以包括非易失性存储介质304和内存储器305。
该非易失性存储介质304可存储操作系统3041和计算机程序3042。该非易失性存储介质中所存储的计算机程序3042被处理器302执行时,可实现上述所述的容器应用克隆方法。该处理器302用于提供计算和控制能力,支撑整个设备300的运行。该内存储器305为非易失性存储介质中的计算机程序的运行提供环境,该计算机程序被处理器302执行时,可使得处理器302执行上述所述的容器应用克隆方法。该网络接口303用于进行网络通信。本领域技术人员可以理解,图中示出的结构,仅仅是与本发明方案相关的部分结构的框图,并不构成对本发明方案所应用于其上的设备的限定,具体的设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
其中,所述处理器302用于运行存储在存储器中的计算机程序,以实现上述容器应用克隆方法的任一实施例。
应当理解,在本申请实施例中,所称处理器302可以是中央处理单元(CentralProcessing Unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(应用程序lication Specific IntegratedCircuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
本领域普通技术人员可以理解的是实现上述实施例的方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成。该计算机程序可存储于一存储介质中,该存储介质可以为计算机可读存储介质。该计算机程序被该计算机系统中的至少一个处理器执行,以实现上述方法的实施例的流程步骤。
因此,本申请还提供了一种存储介质。该存储介质可以为计算机可读存储介质,该计算机可读存储介质包括非易失性计算机可读存储介质。该存储介质存储有计算机程序,该计算机程序当被处理器执行时实现上述容器应用克隆方式的任一实施例。
所述存储介质可以是U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的计算机可读存储介质。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置、设备和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的装置、设备和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。

Claims (10)

1.一种容器应用克隆方法,其特征在于,所述方法包括:
若接收到克隆设置指令,获取所述克隆设置指令中的原始容器应用,并根据所述克隆设置指令调用预设设置接口,以通过所述预设设置接口设置克隆容器应用的环境信息;
若接收到设置完成指令,获取所设置的克隆容器应用的环境信息,并获取所述原始容器应用的应用信息和所述原始容器应用的环境信息;
根据所述原始容器应用的应用信息和所述原始容器应用的环境信息,以及所述克隆容器应用的环境信息,确定所述克隆容器应用的应用信息;
根据所述克隆容器应用的应用信息和所述克隆容器应用的环境信息,确定所述克隆容器应用的容器实例IP;
根据所述克隆容器应用的应用信息、所述克隆容器应用的环境信息以及所述克隆容器应用的容器实例IP创建所述克隆容器应用的容器实例,并将所创建的容器实例与所确定的所述克隆容器应用的容器实例IP进行绑定。
2.根据权利要求1所述的方法,其特征在于,所述原始容器应用的应用信息包括原始容器应用的应用镜像信息、应用配置、容器实例数量、容器实例所占用的资源;
所述根据所述原始容器应用的应用信息和所述原始容器应用的环境信息,以及所述克隆容器应用的环境信息,确定所述克隆容器应用的应用信息,包括:
根据所述原始容器应用的环境信息和所述原始容器应用的应用镜像信息,以及所述克隆容器应用的环境信息,确定所述克隆容器应用的应用镜像信息;
根据所述原始容器应用的容器实例数量确定所述克隆容器应用的容器实例数量;
根据所述原始容器应用的容器实例所占用的资源确定所述克隆容器应用的容器实例需占用的资源;
根据所述原始容器应用的应用配置确定所述克隆容器应用的应用配置。
3.根据权利要求2所述的方法,其特征在于,所述原始容器应用的环境信息包括原始容器应用的应用环境、原始容器应用的区域,所述克隆容器应用的环境信息包括克隆容器应用的应用环境、克隆容器应用的区域;
所述根据所述原始容器应用的环境信息和所述原始容器应用的应用镜像信息,以及所述克隆容器应用的环境信息,确定所述克隆容器应用的应用镜像信息,包括:
判断所述原始容器应用的应用环境与所述克隆容器应用的应用环境是否一致且所述原始容器应用的区域与所述克隆容器应用的区域是否一致;
若所述原始容器应用的应用环境与所述克隆容器应用的应用环境一致且所述原始容器应用的区域与所述克隆容器应用的区域一致,将所述原始容器应用的应用镜像信息确定为所述克隆容器应用的应用镜像信息;
否则将所述原始容器应用的应用镜像信息推送至所述克隆容器应用所对应的镜像仓库中,并将推送至镜像仓库中的该应用镜像信息确定为所述克隆容器应用的应用镜像信息。
4.根据权利要求1所述的方法,其特征在于,所述克隆容器应用的应用信息包括所述克隆容器应用的应用镜像信息、容器实例数量、容器实例需占用的资源、应用配置;所述克隆容器应用的环境信息包括所述克隆容器应用的应用环境、所述克隆容器应用的区域;
所述根据所述克隆容器应用的应用信息、所述克隆容器应用的环境信息以及所述克隆容器应用的容器实例IP创建所述克隆容器应用的容器实例,并将所创建的容器实例与所确定的所述克隆容器应用的容器实例IP进行绑定,包括:
根据所述克隆容器应用的应用镜像信息,从所述克隆容器应用所对应的镜像仓库中获取所述克隆容器应用的应用镜像;
根据所述克隆容器应用的应用环境、区域、容器实例数量以及容器实例需占用的资源,确定创建所述克隆容器应用的容器实例的宿主机;
根据所述克隆容器应用的应用镜像、应用配置,在所确定的宿主机上创建所述克隆容器应用的容器实例,并设置所述克隆容器应用的应用配置;
将所创建的容器实例与所确定的所述克隆容器应用的容器实例IP进行绑定。
5.根据权利要求4所述的方法,其特征在于,所述克隆容器应用的环境信息还包括克隆容器应用的使用时间、克隆容器应用的资源组;
所述方法还包括:根据所述克隆容器应用的容器实例数量、使用时间、资源组中的剩余金额判断所述资源组中是否存在有足够金额以创建所述克隆容器应用;
若所述资源组中存在足够金额以创建所述克隆容器应用,执行所述根据所述克隆容器应用的应用环境、区域、容器实例数量以及容器实例需占用的资源,确定创建所述克隆容器应用的容器实例的宿主机的步骤。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
检测所述原始容器应用是否创建了负载均衡应用;
若所述原始容器应用创建了负载均衡应用,获取所述原始容器应用的负载均衡应用的信息;
根据所述原始容器应用的负载均衡应用的信息、所述克隆容器应用的应用信息和所述克隆容器应用的环境信息,为所述克隆容器应用创建对应的负载均衡应用。
7.根据权利要求6所述的方法,其特征在于,所述根据所述原始容器应用的负载均衡应用的信息、所述克隆容器应用的应用信息和所述克隆容器应用的环境信息,为所述克隆容器应用创建对应的负载均衡应用,包括:
根据所述原始容器应用的负载均衡应用的信息中的负载均衡应用的类型确定所述克隆容器应用的负载均衡应用的类型;
根据所述克隆容器应用的应用环境、所述克隆容器应用的区域,确定所述克隆容器应用的负载均衡应用的虚拟IP;
根据所述原始容器应用的负载均衡应用的信息、所述虚拟IP、所述克隆容器应用的容器实例信息,调用与所述负载均衡应用类型匹配的负载均衡应用创建接口,以创建所述克隆容器应用的负载均衡应用。
8.一种容器应用克隆装置,其特征在于,所述容器应用克隆装置包括:
设置单元,用于若接收到克隆设置指令,获取所述克隆设置指令中的原始容器应用,并根据所述克隆设置指令调用预设设置接口,以通过所述预设设置接口设置克隆容器应用的环境信息;
获取单元,用于若接收到设置完成指令,获取所设置的克隆容器应用的环境信息,并获取所述原始容器应用的应用信息和所述原始容器应用的环境信息;
应用信息确定单元,用于根据所述原始容器应用的应用信息和所述原始容器应用的环境信息,以及所述克隆容器应用的环境信息,确定所述克隆容器应用的应用信息;
IP确定单元,用于根据所述克隆容器应用的应用信息和所述克隆容器应用的环境信息确定所述克隆容器应用的容器实例IP;
创建单元,用于根据所述克隆容器应用的应用信息、所述克隆容器应用的环境信息以及所述克隆容器应用的容器实例IP创建所述克隆容器应用的容器实例,并将所创建的容器实例与所确定的所述克隆容器应用的容器实例IP进行绑定。
9.一种计算机设备,其特征在于,所述计算机设备包括存储器,以及与所述存储器相连的处理器;
所述存储器用于存储计算机程序;所述处理器用于运行所述存储器中存储的计算机程序,以执行如权利要求1-7任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时,实现如权利要求1-7任一项所述的方法。
CN201910410621.XA 2019-05-17 2019-05-17 容器应用克隆方法、装置、计算机设备及存储介质 Active CN110290172B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201910410621.XA CN110290172B (zh) 2019-05-17 2019-05-17 容器应用克隆方法、装置、计算机设备及存储介质
PCT/CN2019/103176 WO2020232888A1 (zh) 2019-05-17 2019-08-29 容器应用克隆方法、装置、计算机设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910410621.XA CN110290172B (zh) 2019-05-17 2019-05-17 容器应用克隆方法、装置、计算机设备及存储介质

Publications (2)

Publication Number Publication Date
CN110290172A true CN110290172A (zh) 2019-09-27
CN110290172B CN110290172B (zh) 2022-02-11

Family

ID=68002161

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910410621.XA Active CN110290172B (zh) 2019-05-17 2019-05-17 容器应用克隆方法、装置、计算机设备及存储介质

Country Status (2)

Country Link
CN (1) CN110290172B (zh)
WO (1) WO2020232888A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11650809B2 (en) 2021-06-15 2023-05-16 International Business Machines Corporation Autonomous and optimized cloning, reinstating, and archiving of an application in a containerized platform

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101702656A (zh) * 2009-11-11 2010-05-05 北京神州泰岳软件股份有限公司 一种基于mpls-vpn网络拓扑的发现方法
CN103793259A (zh) * 2013-09-30 2014-05-14 中国电子设备系统工程公司研究所 一种虚拟器件的生成和部署方法
CN105678156A (zh) * 2016-01-04 2016-06-15 成都卫士通信息产业股份有限公司 一种基于虚拟化技术的云密码服务平台及其工作流程
CN106936882A (zh) * 2015-12-31 2017-07-07 深圳先进技术研究院 一种商品电子交易系统
CN107526626A (zh) * 2017-08-24 2017-12-29 武汉大学 一种基于CRIU的Docker容器热迁移方法及系统

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8566821B2 (en) * 2008-11-11 2013-10-22 Netapp Inc. Cloning virtual machines
CN104639374B (zh) * 2015-03-03 2017-12-12 上海瀚银信息技术有限公司 一种应用程序部署管理系统
CN107908460A (zh) * 2017-11-23 2018-04-13 平安科技(深圳)有限公司 虚拟机快速扩容方法、装置、设备以及存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101702656A (zh) * 2009-11-11 2010-05-05 北京神州泰岳软件股份有限公司 一种基于mpls-vpn网络拓扑的发现方法
CN103793259A (zh) * 2013-09-30 2014-05-14 中国电子设备系统工程公司研究所 一种虚拟器件的生成和部署方法
CN106936882A (zh) * 2015-12-31 2017-07-07 深圳先进技术研究院 一种商品电子交易系统
CN105678156A (zh) * 2016-01-04 2016-06-15 成都卫士通信息产业股份有限公司 一种基于虚拟化技术的云密码服务平台及其工作流程
CN107526626A (zh) * 2017-08-24 2017-12-29 武汉大学 一种基于CRIU的Docker容器热迁移方法及系统

Also Published As

Publication number Publication date
CN110290172B (zh) 2022-02-11
WO2020232888A1 (zh) 2020-11-26

Similar Documents

Publication Publication Date Title
US8972990B2 (en) Providing a seamless transition for resizing virtual machines from a development environment to a production environment
CN107391629A (zh) 集群间数据迁移方法、系统、服务器及计算机存储介质
CN107003893B (zh) 虚拟机备份方法、备份装置及宿主机
CN104216793B (zh) 应用程序备份、恢复的方法及设备
CN109067877A (zh) 一种云计算平台部署的控制方法、服务器及存储介质
CN113645071B (zh) 一种集群部署方法、系统、介质及电子终端
US9201702B2 (en) Integrated cloud data center management
CN111162941B (zh) 一种Kubernetes环境自动化管理虚拟IP的方法
CN110673941B (zh) 多机房中微服务的迁移方法、电子设备及存储介质
CN109558234A (zh) 一种定时任务调度方法和装置
CN109254825A (zh) 一种纳管虚拟机硬盘的方法及装置
CN110275775A (zh) 容器应用的资源配置方法、系统及存储介质
CN110224860A (zh) 负载均衡应用创建方法、装置、计算机设备及存储介质
CN110289983A (zh) 负载均衡应用创建方法、装置、计算机设备及存储介质
CN110225094A (zh) 负载均衡应用虚拟ip切换方法、装置、计算机设备及存储介质
CN106445580A (zh) 一种带外升级bmc的方法及装置
CN106502760B (zh) 一种虚拟机亲和性策略可视化的方法及装置
CN110262872A (zh) 负载均衡应用管理方法、装置、计算机设备及存储介质
CN111245645A (zh) SAN交换机的zone自动配置方法、系统、设备和介质
CN110290172A (zh) 容器应用克隆方法、装置、计算机设备及存储介质
CN110286996A (zh) 容器实例ip切换方法、装置、计算机设备及存储介质
CN109032753B (zh) 一种异构虚拟机硬盘托管方法、系统、存储介质及Nova平台
CN106527979B (zh) 数据迁移方法及装置
CN109375874A (zh) 一种分布式存储的调用方法、装置及设备
CN110417856B (zh) 多活负载均衡应用的扩容方法、装置、设备及存储介质

Legal Events

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