CN110286997A - 多容器应用创建方法、装置、计算机设备及存储介质 - Google Patents
多容器应用创建方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN110286997A CN110286997A CN201910414381.0A CN201910414381A CN110286997A CN 110286997 A CN110286997 A CN 110286997A CN 201910414381 A CN201910414381 A CN 201910414381A CN 110286997 A CN110286997 A CN 110286997A
- Authority
- CN
- China
- Prior art keywords
- container
- application
- information
- instance
- container application
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45562—Creating, deleting, cloning virtual machine instances
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
本申请实施例提供一种多容器应用创建方法、装置、计算机设备及存储介质,其涉及云计算技术领域,可应用于PaaS平台中。所述方法包括:若接收到设置指令,调用预设的设置接口,以设置需创建的多个容器应用的信息;从多个容器应用的信息中获取一个容器应用的信息作为当前容器应用的信息;根据当前容器应用的信息创建该容器应用;获取下一个容器应用的信息作为当前容器应用的信息,返回执行根据当前容器应用的信息创建该容器应用的步骤。本申请实施例自动地实现了不同容器应用的创建,提高了创建容器应用的速度和效率,节约了时间成本和人工成本。
Description
技术领域
本申请涉及云计算技术领域,尤其涉及一种多容器应用创建方法、装置、计算机设备及存储介质。
背景技术
目前,市场上的PaaS平台创建容器应用,只能进行单一的容器应用的创建,无法支持多容器应用,跨多镜像仓库的容器应用创建,提高了用户的创建容器应用的时间成本,且创建的操作繁琐,降低了用户体验。
发明内容
本申请实施例提供一种多容器应用创建方法、装置、计算机设备及存储介质,可一次性创建多个不同容器应用,提高了创建容器应用的效率。
第一方面,本申请实施例提供了一种多容器应用创建方法,该方法包括:
若接收到设置指令,根据所述设置指令调用预设的设置接口,以通过所述预设的设置接口设置需创建的多个容器应用的信息,其中,每个容器应用的信息不相同;接收提交指令,并获取所述提交指令中包括的多个容器应用的信息;根据预设规则从多个容器应用的信息中获取一个容器应用的信息,作为当前容器应用的信息;根据所述当前容器应用的信息创建该容器应用;判断是否已获取了所有的容器应用的信息;若还存在有容器应用的信息未获取,获取下一个容器应用的信息作为当前容器应用的信息,返回执行所述根据所述当前容器应用的信息创建该容器应用的步骤;若已经获取了所有的容器应用的信息,接收返回的多个容器应用创建成功或者失败的结果信息。
第二方面,本发明实施例提供了一种多容器应用创建装置,该多容器应用创建装置包括用于执行上述第一方面所述的方法对应的单元。
第三方面,本发明实施例提供了一种计算机设备,所述计算机设备包括存储器,以及与所述存储器相连的处理器;
所述存储器用于存储计算机程序,所述处理器用于运行所述存储器中存储的计算机程序,以执行上述第一方面所述的方法。
第四方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时,实现上述第一方面所述的方法。
本申请实施例通过设置不同的容器应用的信息,再根据设置的不同的容器应用的信息完成多个不同容器应用的创建,实现了不同容器应用的创建,提高了创建容器应用的速度和效率。创建的过程自动完成,无需人工参与,进一步加快了创建的速度和效率,节约了时间成本和人工成本。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的多容器应用创建方法的流程示意图;
图2是本申请实施例提供的设置页面的示意图;
图3是本申请实施例提供的多容器应用创建方法的子流程示意图;
图4是本申请实施例提供的多容器应用创建方法的另一子流程示意图;
图5是本申请另一实施例提供的多容器应用创建方法的流程示意图;
图6是本申请另一实施例提供的多容器应用创建方法的子流程示意图;
图7是本申请实施例提供的多容器应用创建装置的示意性框图;
图8是本申请实施例提供的应用创建单元的示意性框图;
图9是本申请实施例提供的另一应用创建单元的示意性框图;
图10是本申请另一实施例提供的多容器应用创建装置的示意性框图;
图11是本申请另一实施例提供的负载创建单元的示意性框图;
图12是本申请实施例提供的计算机设备的示意性框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
图1是本申请实施例提供的多容器应用创建方法的流程示意图。如图1所示,该方法包括S101-S107。
S101,若接收到设置指令,根据所述设置指令调用预设的设置接口,以通过所述预设的设置接口设置需创建的多个容器应用的信息,其中,每个容器应用的信息不相同。
其中,预设的设置接口为开发人员编写的设置接口,可以以一个设置页面的形式呈现,如图2所示。需要注意的是,图2仅仅是示意图,以为了方便理解本申请中的方案,并不构成对本申请或者本实施例的限定。通过该预设的设置接口设置需创建的多个容器应用的信息。其中,多个容器应用的信息不同。若该容器应用需要创建负载均衡应用,那么还对应设置有负载均衡应用的信息。具体地,接收用户输入的/选择的需创建的容器应用的信息以及负载均衡应用的信息。需要注意的是,多个容器应用中可根据具体需求来设置负载均衡应用的信息,即当容器应用需要创建负载均衡应用时就设置负载均衡应用的信息,若容器应用不需要创建负载均衡应用,就无需设置负载均衡应用的信息,那么对应的设置页面中与负载均衡相关的选项无需设置。
多个容器应用的信息可按照如下方式设置:先设置一个容器应用的信息,若该容器应用需要创建负载均衡应用,设置负载均衡应用的信息;接收到添加指令(如可点击图2中的“+”触发)后,再接着设置下一个容器应用的信息,若该下一个容器应用需要创建负载均衡应用,设置该下一个容器应用的负载均衡应用的信息,直至多个容器应用的信息以及多个负载均衡应用的信息都设置完成。设置完成的多个容器应用的信息按序排列显示。
在本实施例中,多个容器应用都未设置所对应的负载均衡应用。
其中,容器应用的信息包括容器应用的应用环境、容器应用的区域,容器实例数量、容器应用镜像信息、容器应用的资源组等。容器应用的信息还包括是否同步到opcm、是否启用监控、部署方式、应用管理员(创建容器应用的人,可以对创建的容器应用进行管理)等。其中,容器应用的应用环境包括生产环境、测试环境、开发环境等。其中,生产环境意味着该容器应用创建成功后对接外部环境,或者供外部用户进行访问;测试环境意味着该容器应用创建成功后供测试使用;开发环境意味着该容器应用创建成功后供开发使用。容器应用的区域指的是创建容器应用的机房位置,由两部分组成:如图2中的“区域”+“安全区域”。其中,安全区域为区域下的子区域。可以理解为,将容器应用创建在“xx区域”下的“xxx安全区域”的机房中。然而,确定容器应用创建在哪个具体地机房中,需要根据容器应用的应用环境和容器应用的区域共同决定,可以理解为将容器应用创建在某个应用环境下容器应用的区域所对应的机房中。可以理解为,同一个区域不同应用环境所对应的机房是不同的。容器应用的容器实例数量指的是该容器应用的容器数量,一个容器应用的容器数量是没有上限的。其中,容器实例数量可根据该容器应用的访问量确定。容器实例镜像信息包括镜像版本、镜像类型和镜像名称。其中,镜像版本包括官方(版本)等;镜像类型指的是该容器实例使用哪种镜像,如nginx、tomcat、weblogic、springboot等;镜像名称指的是具体的镜像名称。其中,镜像信息可以从对应的镜像仓库中获取以供用户选择,其中,对应的镜像仓库指的是该容器应用的应用环境和容器应用的区域共同确定的该机房下的镜像仓库。创建容器应用是需要收费的,容器应用的资源组下包括有资源账户,用于容器应用创建所使用的费用。是否同步到opcm指的是是否同步所创建的容器应用的信息到企业内部的信息平台opcm上,供可以使用opcm信息平台的用户查看。在其他实施例中,也可以理解为同步所创建的容器应用的信息到第三方平台上。是否启用监控指的是是否选择对容器应用的容器实例进行监控,比如监控容器实例的CPU/内存/IO等资源的使用情况。部署方式,对接企业内部的部署平台,用于决定该容器应用的后续版本发布模式。在一些实施例中,容器应用的信息还包括受益人资源池,受益人资源池指的是创建容器应用的子公司/部门,决定所创建的容器分配的IP网段以及容器的宿主机资源,不同资源池,使用的是不同的IP网段以及宿主机资源。若容器应用的信息还包括受益人资源池,那么受益人资源池与容器应用的应用环境、容器应用的区域一起决定所创建的容器实例分配的IP网段以及容器实例的宿主机资源,不同资源池,使用的是不同的IP网段以及宿主机资源。
多个容器应用的信息不同,可以指容器应用的区域不同、容器应用镜像信息不同(包括镜像类型不同或者镜像名称不同)等。需要注意的是,容器应用的区域、镜像类型、镜像名称中有一个不同,则认为容器应用的信息不同。同时需要注意的是,不同容器应用的信息中可以有多个不同之处,如容器应用的区域不同、镜像类型不同、镜像名称不同等。每个不同容器应用的信息中的容器实例数量、容器实例的使用时间(如使用一个月等)也可以不同。
负载均衡应用的信息包括负载均衡应用的类型、负载均衡应用的端口信息,其中,负载均衡应用的类型包括F5、LVS(Linux Virtual Server)、HAProxy等。负载均衡应用的端口信息可以有一个也可以有多个,如80、443等。
S102,接收提交指令,并获取所述提交指令中包括的多个容器应用的信息。
提交指令由用户点击提交等按钮触发,容器应用的信息和负载均衡应用的信息设置完成,接收用户触发的提交指令,即可自动化串行的创建多个容器应用(可能包括负载均衡应用)。
需要注意的是,不管需创建的容器应用的数量是多少,若接收到一个提交指令,那么对应只接收一次ajax请求,只会触发调用一次创建的代码逻辑,用户无需一直停留页面等待创建结果,即使此时刷新该页面,也不会导致容器应用创建失效,后台仍会正常的创建多个容器应用。不用担心刷新页面或者session超时而导致的创建失败问题。
S103,根据预设规则从多个容器应用的信息中获取一个容器应用的信息,作为当前容器应用的信息。
预设规则可以是按照容器应用设置的顺序或者按照容器应用的区域从近到远的顺序等。如可按设置的顺序依次获取设置的容器应用的信息,将获取第一个设置的容器应用的信息作为当前容器应用的信息。也可按照容器应用的区域从近到远的顺序依次获取设置的容器应用的信息(其中同一个区域的按照设置的先后顺序)等,将获取容器应用的区域最近的容器应用的信息作为当前容器应用的信息。
S104,根据所述当前容器应用的信息创建该容器应用。
根据所述当前容器应用的信息创建该容器应用的容器实例。具体地,根据该当前容器应用的信息中的容器应用的容器应用的应用环境、容器应用的区域、容器实例数量、容器应用镜像信息等来创建该容器应用的容器实例。在创建容器应用的过程中会为容器应用的容器实例分配IP,并将创建的容器实例与分配的IP进行绑定。
S105,判断是否已获取了所有的容器应用的信息。若还存在有容器应用的信息未获取,执行步骤S106;若已经获取了所有的容器实例信息,执行步骤S107。具体地,按照多个容器应用的信息添加的顺序,将多个容器应用的信息存放在数组中,其中,每个容器应用的信息对应数组中的一个数据。并按照容器应用信息的信息添加的顺序从数组中取出容器应用的信息,若检测到已经遍历完该数组中的所有数据,那么确定已获取了所有的容器应用的信息,否则,确定还存在有容器应用的信息未获取。
S106,获取下一个容器应用的信息作为当前容器应用的信息。接着返回执行步骤S104。
S107,接收返回的多个容器应用创建成功或者失败的结果信息。
其中,容器应用创建成功指的是容器应用创建成功。返回的结果信息可以以表格的形式显示,如表格的每一行显示:应用名称、创建结果、详情(点击详情,可查看所创建的容器应用的信息)。其中,创建结果包括创建成功或者创建失败。
在一实施例中,在步骤S102之前,即接收提交指令之前,所述方法还包括:
若接收到预览指令,根据预览指令预览设置的多个容器应用的信息是否有误。若有误,则返回修改;如无误,执行步骤S102。
上述方法实施例通过设置不同的容器应用的信息,再根据设置的不同的容器应用的信息一次性的串行的完成多个不同容器应用的创建,实现了不同容器应用的创建,提高了创建容器应用的速度和效率。由于多个容器应用的区域不同、容器应用镜像信息(包括镜像类型不同或者镜像名称不同)不同,而不同的容器应用镜像又分布在不同的镜像仓库中,因此上述实施例中的方案可以实现跨多区域、跨多镜像仓库、多应用类型的容器应用的创建。创建的过程自动完成,无需人工参与,进一步加快了创建的速度和效率,节约了时间成本和人工成本。
在一实施例中,如图3所示,步骤S104包括以下步骤S201-S206。
S201,根据所述容器应用的应用环境、所述容器应用的区域、所述容器实例数量确定该容器应用的容器实例的IP。
根据该容器应用的应用环境、该容器应用的区域可确定容器应用创建的位置,即将容器应用创建在具体哪个机房中。如将容器应用创建在测试环境下宝信(地名)区域下的SF(宝信下面的一个更小的区域标识)子区域所在的机房中。获取数据库中对应位置(该机房下)预先分配的用于创建容器实例的IP地址池;从容器实例的IP地址池中获取与该容器实例数量相同数量的IP地址,将该IP确定为该容器应用的容器实例的IP。
S202,根据所述容器应用的应用环境、所述容器应用的区域确定保存该容器应用镜像的镜像仓库。
根据该容器应用的应用环境、该容器应用的区域可确定容器应用创建的位置,即将容器应用创建在具体哪个机房中。需要注意的是,每个应用环境下每个区域中的都对应有保存镜像资源的镜像仓库。在该镜像仓库中保存有该应用环境下该区域所需要使用的所有的镜像资源。通过后面的内容可知,创建容器应用的容器实例时需要将应用镜像推送到创建容器实例的宿主机上,如此,镜像仓库和创建容器实例的宿主机最好在一个局域网内,如此可提高创建的速度,也提高了创建的安全性。若要从一个区域的镜像仓库中得到应用镜像,并推送到另一个区域的容器实例的宿主机,必然会降低创建的速度,同时安全性也得不到保证。
S203,根据所述容器应用镜像信息确定创建容器实例需占用的资源。
具体地,根据该容器应用镜像信息中的镜像类型、镜像版本确定创建容器实例需占用的资源。创建容器实例是需要在宿主机上占用一定的资源的,因此需要先确定创建容器实例需占用的资源,以判断宿主机是否有足够的资源来创建该容器实例。
S204,根据所述容器应用镜像信息从所确定的镜像仓库中提取出创建该容器应用的容器实例需使用的具体镜像。
具体地,根据该容器应用镜像信息中的镜像类型、镜像版本、镜像名称所确定的镜像仓库中提取出创建该容器应用的容器实例需使用的具体镜像。
S205,根据所述容器应用的应用环境、所述容器应用的区域、所确定的创建容器实例需占用的资源确定创建容器实例的宿主机。
根据该容器应用的应用环境、容器应用的区域可确定容器应用创建的位置,即将容器应用创建在具体哪个机房中。获取数据库中对应位置(该机房下)预先分配的用于创建容器实例的宿主机的IP地址池;根据创建容器实例需占用的资源从宿主机的IP地址池中确定创建容器实例的宿主机IP;根据宿主机IP即可确定对应的宿主机。
需要注意的是,以上确定容器应用的容器实例的IP、确定具体镜像、确定创建容器实例的宿主机的这几个对应步骤并没有严格限定顺序,在其他实施例中,也可以是其他顺序,如先确定具体镜像,再确定创建容器实例的宿主机,最后再确定容器应用的容器实例的IP等。
S206,根据所确定的具体镜像在所确定的宿主机上创建该容器应用的容器实例,并将所创建的容器实例与所确定的容器实例的IP进行绑定。
具体地,步骤S206,包括:通过容器编排工具将所确定的具体镜像推送到所确定的宿主机上,以在所述宿主机上创建该容器应用的容器实例;若该容器应用的容器实例创建完成,通过运维工具连接所创建的容器实例,将所创建的容器实例与所确定的容器实例的IP进行绑定。
其中,容器编排工具可以为Marathon工具,还可以为其他的容器编排工具。Marathon工具相当于一个中转站,将所确定的具体镜像发送到该容器编排工具,然后由容器编排工具将具体镜像分配下发到所确定的宿主机上,以进行容器实例的创建。其中,运维工具如自动化运维工具ansible。
以上实现了容器应用的创建,该创建的过程自动完成,无需人工干预,提高了创建的速度。
在一实施例中,如图4所示,步骤S104包括以下步骤S301-S309。其中,该实施例与图3所示的实施例的不同之处在于:增加了步骤S301-S303。以下将详细介绍步骤S301-S303,其他步骤S304-S309与图3实施例中的步骤S201-S206对应,步骤S304-S309请参看图3实施例中步骤S201-S206的描述。
S301,根据预设的名称生成规则生成该容器应用的应用名称。
如预设的名称生成规则为:容器应用标识_容器应用名称标识_容器应用镜像所属类型。其中,容器应用标识、容器应用名称标识可在预设的设置接口中进行设置或者按照一定的规则生成。如容器应用名称为:ABC_tag1_web。其中,ABC为容器应用标识、tag1为容器应用名称标识、web为容器实例镜像所属类型。需要注意的是,容器实例镜像所属类型和容器实例镜像类型是不同的。如容器实例镜像类型为weblogic,那么容器实例镜像所属类型为web。
S302,判断所生成的应用名称在该容器应用对应的区域中是否已经存在,其中,根据所述容器应用的应用环境、所述容器应用的区域确定当前容器应用对应的区域。
预先保存所有创建过的容器应用的相关信息,其中,包括有容器应用的应用名称、区域。可以理解地,在同一区域中不允许存在两个完全相同的应用名。若已经存在,则返回失败的原因。
S303,若所生成的应用名称在该容器应用对应的区域中不存在,根据所述容器实例的使用时间、所述容器应用的资源组、所述容器实例数量来判断所述容器应用的资源组中是否有足够金额以用来创建该容器应用的容器实例。
由于创建的每个容器实例都是需要付费的,根据容器应用的容器实例数量、容器实例的使用时间、每个容器实例的费用计算创建当前容器应用需要支付的金额;判断容器应用的资源组中的剩余金额是否大于或者等于创建当前容器应用需要支付的金额;若是,则确定容器应用的资源组有足够金额以用来创建对应的容器应用;若否,则确定容器应用的资源组没有足够金额来进行创建。若容器应用的资源组没有足够金额来创建,返回创建失败的原因。
S304,若有足够金额来创建该容器应用的容器实例,根据所述容器应用的应用环境、所述容器应用的区域、所述容器实例数量确定该容器应用的容器实例的IP。
该实施例进一步考虑了创建容器应用的一些实际情况。该实施例创建容器应用的过程自动完成,无需人工干预,提高了创建容器应用的速度。
在其他的实施例中,可以先进行金额的判断,在执行应用名称的判断。在一些实施例中,可以只有应用名称的判断,在一些实施例中,可以只有金额的判断等。
在一实施例中,若当前容器应用的信息中的是否同步到第三方信息平台(是否同步到ocpm)的标识为肯定标识,如“是”,以上容器应用创建的过程中还涉及有同步所创建的容器应用的信息到第三方信息平台。对应的步骤还包括:
将所创建的容器应用的信息封装成预设格式;调用同步第三方信息平台的同步接口,将封装为预设格式的数据通过同步接口同步到第三方信息平台中的数据库。其中,第三方信息平台相对于PaaS平台来说,不属于PaaS平台都属于第三方平台。第三方平台可以是ocpm平台。其中,所创建的容器应用的信息包括容器应用的信息和创建容器应用的过程中生成的信息,如容器实例的IP、容器应用名称等。
在一实施例中,若当前容器应用的信息中的是否启用监控信息中的标识为启用监控标识,以上容器应用创建的过程中还涉及有为所创建容器应用的容器实例进行监控,对应的步骤还包括:
将容器实例对应的启用监控信息中的启用监控标识推送到所确定的宿主机上,以根据宿主机的监控进程收集该容器实例的运行数据信息。
需要注意的是,默认所有宿主机上都会安装监控进程且该监控进程是启用状态。将启用监控标识推送到所确定的宿主机上,通过宿主机上安装的监控进程来监控该容器实例。
在一实施例中,以上容器应用创建的过程中还涉及有容器应用部署单元的创建流程,对应的步骤还包括:
获取容器应用的部署方式;根据容器应用的应用环境、容器应用的区域确定部署主机;将容器实例所对应的宿主机所对应的路径(位置)作为部署路径;将容器应用的应用名称、部署方式、部署主机、部署路径、部署重启命令封装成数据对象后,通过调用部署平台提供的部署接口,以生成创建部署单元的请求,使得部署平台接收到该请求后创建部署单元。部署单元创建完成后,就可以通过部署主机,调用部署单元,以在宿主机所对应的部署路径上,按照部署方式部署新的应用包。其中,部署方式包括传统部署等,部署平台指的是PaaS平台中的部署平台。
图5是本申请另一实施例提供的多容器应用创建方法的流程示意图。在该实施例中,通过预设的设置接口设置了容器应用的信息,同时多个容器应用中至少有一个容器应用还设置了负载均衡应用的信息。如图5所示,该实施例包括步骤S401-S409。该实施例与图1所示的实施例的区别在于:增加了步骤S405-S406。其他步骤S401-S404、S407-S409与S101-S107对应,下面将详细介绍步骤S405-S406,其他步骤请参看图1实施例中对应的描述。
S405,检测所述当前容器应用是否设置了负载均衡应用的信息。
检测是否接收到当前容器应用的负载均衡应用的信息,如检测是否接收到负载均衡应用的类型以及端口信息等。若接收到当前容器应用的负载均衡应用的信息,则确定当前容器应用设置了负载均衡应用的信息;否则,确定当前容器应用未设置负载均衡应用的信息。在其他实施例中,也可以检测接收到的当前容器应用的负载均衡应用的信息是否是有效状态,若处于有效状态,则确定设置了负载均衡应用的信息,否则,确定未设置负载均衡应用的信息等。
若所述当前容器应用设置了负载均衡应用的信息,执行步骤S406;若所述当前容器应用未设置负载均衡应用的信息,执行步骤S407。
S406,根据所述当前容器应用的信息和所述负载均衡应用的信息创建该容器应用的负载均衡应用。
获取负载均衡应用的信息中的负载均衡应用类型、负载均衡应用端口信息,根据当前容器应用的信息、负载均衡应用类型、负载均衡应用端口信息来创建该容器应用的负载均衡应用。
S407,判断是否已获取了所有的容器应用的信息。
若该容器应用对应设置有负载均衡应用,那么容器应用创建成功指的是容器应用创建成功,同时该负载均衡应用也创建成功;若该容器应用创建成功,而负载均衡应用创建失败,那么返回的结果信息为该容器应用创建失败,具体的结果中会显示该容器应用的负载均衡应用创建失败。
该实施例在创建容器应用之后,紧接着创建该容器应用的负载均衡应用并设置容器应用和负载均衡应用的关联关系,创建容器应用和该容器应用所对应的负载均衡应用并设置关联关系,整个过程自动完成。因此无需将创建容器应用和该容器应用所对应的负载均衡应用分开进行创建,且无需将两者进行手动关联,加快了创建的速度。
在一实施例中,如图6所示,根据所述当前容器应用的信息和所述负载均衡应用的信息创建该容器应用的负载均衡应用,即步骤S406包括以下步骤S501-S503。
S501,获取所述负载均衡应用的信息中的负载均衡应用类型、负载均衡应用端口信息。
S502,根据所述负载均衡应用类型、所述负载均衡应用端口信息和所述当前容器应用的信息创建该容器应用的负载均衡应用,并设置该容器应用和所述负载均衡应用的关联关系。
其中,若负载均衡应用为F5负载均衡应用,步骤S502包括:根据当前容器应用的信息确定负载均衡应用的虚拟服务器的虚拟IP以及创建负载均衡应用的F5设备;将所创建的容器应用的容器实例与所述虚拟服务器进行关联以得到关联关系,并将所述关联关系、所创建的容器实例信息、所述端口信息、所述虚拟IP,以及预设的负载均衡参数信息封装成对象;根据封装后的对象,调用负载均衡应用的创建接口,以在所确定的F5设备上创建所述负载均衡应用的虚拟服务器,并生成虚拟服务器的配置文件。
若负载均衡应用为LVS负载均衡应用,步骤S502包括:根据当前容器应用的信息确定创建负载均衡应用的宿主机,并在宿主机上创建LVS容器;为创建的LVS容器分配虚拟IP和管理IP;根据虚拟IP、所创建的该容器应用的容器实例、端口信息、第一配置文件生成模板重构LVS负载均衡应用的配置文件;配置LVS容器的子网卡,以将虚拟IP与容器的子网卡进行绑定并为配置的该子网卡添加一条路由。
若负载均衡应用为HAProxy负载均衡应用,步骤S502,包括:根据当前容器应用的信息确定创建负载均衡应用的宿主机,并在宿主机上创建HAProxy容器;为创建的HAProxy容器分配虚拟IP;根据虚拟IP、所创建的该容器应用的容器实例、端口信息、第二配置文件生成模板重构LVS负载均衡应用的配置文件。其中,第二配置文件生成模板中包括有证书的配置等。
S503,生成访问域名,并将所生成的访问域名与所述负载均衡应用进行绑定。
该实施例根据负载均衡应用的类型不同采用不同的创建方式来创建负载均衡应用。其中,创建负载均衡应用的过程自动完成,无需人工干预,提高了创建的速度。
图7是本申请实施例提供的多容器应用创建装置的示意性框图。该装置包括用于执行上述多容器应用创建方法所对应的单元。具体地,如图7所示,该装置60包括设置单元601、接收获取单元602、当前确定单元603、应用创建单元604、获取判断单元605以及结果接收单元606。
设置单元601,用于若接收到设置指令,根据所述设置指令调用预设的设置接口,以通过所述预设的设置接口设置需创建的多个容器应用的信息,其中,每个容器应用的信息不相同。每个容器应用的信息包括容器应用的应用环境、容器应用的区域,容器实例数量、容器应用镜像信息、容器应用的资源组等。容器应用的信息还包括是否同步到opcm、是否启用监控、部署方式、应用管理员(创建容器应用的人,可以对创建的容器应用进行管理)等。
接收获取单元602,用于接收提交指令,并获取所述提交指令中包括的多个容器应用的信息。
当前确定单元603,用于根据预设规则从多个容器应用的信息中获取一个容器应用的信息,作为当前容器应用的信息。
应用创建单元604,用于根据所述当前容器应用的信息创建该容器应用。
获取判断单元605,用于若完成该容器应用的创建,判断是否已获取了所有的容器应用的信息。
当前确定单元603,还用于若还存在有容器应用的信息未获取,获取下一个容器应用的信息作为当前容器应用的信息。触发应用创建单元604。
结果接收单元606,用于若已经获取了所有的容器实例信息,接收返回的多个容器应用创建成功或者失败的结果信息。
在一实施例中,所述多容器应用创建装置还包括预览单元,所述预览单元,用于若接收到预览指令,根据预览指令预览设置的多个容器应用的信息是否有误。
在一实施例中,如图8所示,应用创建单元604包括实例IP确定单元701、镜像仓库确定单元702、资源确定单元703、镜像提取单元704、宿主机确定单元705、实例创建单元706。其中,实例IP确定单元701,用于根据所述容器应用的应用环境、所述容器应用的区域、所述容器实例数量确定该容器应用的容器实例的IP。镜像仓库确定单元702,用于根据所述容器应用的应用环境、所述容器应用的区域确定保存该容器应用镜像的镜像仓库。资源确定单元703,用于根据所述容器应用镜像信息确定创建容器实例需占用的资源。镜像提取单元704,用于根据所述容器应用镜像信息从所确定的镜像仓库中提取出创建该容器应用的容器实例需使用的具体镜像。宿主机确定单元705,用于根据所述容器应用的应用环境、所述容器应用的区域、所确定的创建容器实例需占用的资源确定创建容器实例的宿主机。实例创建单元706,用于根据所确定的具体镜像在所确定的宿主机上创建该容器应用的容器实例,并将所创建的容器实例与所确定的容器实例的IP进行绑定。
在一实施例中,实例创建单元706包括容器实例创建单元、IP绑定单元。其中,容器实例创建单元,用于通过容器编排工具将所确定的具体镜像推送到所确定的宿主机上,以在所述宿主机上创建该容器应用的容器实例。IP绑定单元,用于若该容器应用的容器实例创建完成,通过运维工具连接所创建的容器实例,将所创建的容器实例与所确定的容器实例的IP进行绑定。
在一实施例中,如图9所示,应用创建单元604包括名称生成单元801、名称判断单元802、金额判断单元803、实例IP确定单元804、镜像仓库确定单元805、资源确定单元806、镜像提取单元807、宿主机确定单元808、实例创建单元809。其中,该实施例与图8所示的实施例的区别在于:增加了名称生成单元801、名称判断单元802、金额判断单元803。其中,名称生成单元801,用于根据预设的名称生成规则生成该容器应用的应用名称。名称判断单元802,用于判断所生成的应用名称在该容器应用对应的区域中是否已经存在,其中,根据当前容器应用的信息中的容器应用的应用环境、容器应用的区域确定当前容器应用对应的区域。金额判断单元803,用于若所生成的应用名称在该容器应用对应的区域中不存在,根据所述容器实例的使用时间、所述容器应用的资源组、所述容器实例数量来判断所述容器应用的资源组中是否有足够金额以用来创建该容器应用的容器实例。
在一实施例中,应用创建单元604还包括同步单元。所述同步单元,用于同步所创建的容器应用的信息到第三方信息平台。所述同步单元,具体用于将所创建的容器应用的信息封装成预设格式;调用同步第三方信息平台的同步接口,将封装为预设格式的数据通过同步接口同步到第三方信息平台中的数据库。
在一实施例中,应用创建单元604还包括监控启用单元。所述监控启用单元,用于为所创建容器应用的容器实例进行监控。所述监控启用单元,具体用于将容器实例对应的启用监控信息中的启用监控标识推送到所确定的宿主机上,以根据宿主机的监控进程收集该容器实例的运行数据信息。
在一实施例中,应用创建单元604还包括部署创建单元。所述部署创建单元,用于创建部署单元。所述部署创建单元,具体用于根据容器应用的应用环境、容器应用的区域确定部署主机;将容器实例所对应的宿主机所对应的路径(位置)作为部署路径;将容器应用的应用名称、部署方式、部署主机、部署路径、部署重启命令封装成数据对象后,通过调用部署平台提供的部署接口,以生成创建部署单元的请求,使得部署平台接收到该请求后创建部署单元。部署单元创建完成后,就可以通过部署主机,调用部署单元,以在宿主机所对应的部署路径上,按照部署方式部署新的应用包。
图10是本申请另一实施例提供的多容器应用创建装置的示意性框图。在该实施中,通过预设的设置接口设置了容器应用的信息,同时多个容器应用中至少有一个容器应用还设置了负载均衡应用的信息。如图10所示,该实施例中的装置90设置单元901、接收获取单元902、当前确定单元903、应用创建单元904、负载检测单元905、负载创建单元906、获取判断单元907以及结果接收单元908。该实施例与图7所示的实施例的区别在于:增加了负载检测单元905、负载创建单元906。
负载检测单元905,用于若容器应用创建完成,检测所述当前容器应用是否设置了负载均衡应用的信息。
负载创建单元906,用于若所述当前容器应用设置了负载均衡应用的信息,根据所述当前容器应用的信息和所述负载均衡应用的信息创建该容器应用的负载均衡应用。
获取判断单元907,还用于若所述当前容器应用未设置负载均衡应用的信息或者完成该容器应用的负载均衡应用的创建,判断是否已获取了所有的容器应用的信息。
在一实施例中,如图11所示,负载创建单元906包括负载获取单元101、负载应用创建单元102、域名绑定单元103。其中,负载获取单元101,用于获取所述负载均衡应用的信息中的负载均衡应用类型、负载均衡应用端口信息。负载应用创建单元102,用于根据负载均衡应用类型、所述负载均衡应用端口信息和所述当前容器应用的信息创建该容器应用的负载均衡应用,并设置该容器应用和所述负载均衡应用的关联关系。域名绑定单元103,用于生成访问域名,并将所生成的访问域名与所述负载均衡应用进行绑定。
需要说明的是,所属领域的技术人员可以清楚地了解到,上述装置和各单元的具体实现过程,可以参考前述方法实施例中的相应描述,为了描述的方便和简洁,在此不再赘述。
上述装置可以实现为一种计算机程序的形式,计算机程序可以在如图12所示的计算机设备上运行。
图12为本申请实施例提供的一种计算机设备的示意性框图。该设备为终端等设备,如PaaS平台中的服务器等。该设备110包括通过系统总线111连接的处理器112、存储器和网络接口113,其中,存储器可以包括非易失性存储介质114和内存储器115。
该非易失性存储介质114可存储操作系统1141和计算机程序1142。该非易失性存储介质中所存储的计算机程序1142被处理器112执行时,可实现上述服务器中所述的多容器应用创建方法。该处理器112用于提供计算和控制能力,支撑整个设备110的运行。该内存储器115为非易失性存储介质中的计算机程序的运行提供环境,该计算机程序被处理器112执行时,可使得处理器112执行上述服务器中所述的多容器应用创建方法。该网络接口113用于进行网络通信。本领域技术人员可以理解,图12中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的设备的限定,具体的设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
其中,所述处理器112用于运行存储在存储器中的计算机程序,以实现如下步骤:
若接收到设置指令,根据所述设置指令调用预设的设置接口,以通过所述预设的设置接口设置需创建的多个容器应用的信息,其中,每个容器应用的信息不相同;接收提交指令,并获取所述提交指令中包括的多个容器应用的信息;根据预设规则从多个容器应用的信息中获取一个容器应用的信息,作为当前容器应用的信息;根据所述当前容器应用的信息创建该容器应用;判断是否已获取了所有的容器应用的信息;若还存在有容器应用的信息未获取,获取下一个容器应用的信息作为当前容器应用的信息,返回执行所述根据所述当前容器应用的信息创建该容器应用的步骤;若已经获取了所有的容器应用的信息,接收返回的多个容器应用创建成功或者失败的结果信息。
在一实施例中,所述当前容器应用的信息包括容器应用的应用环境、容器应用的区域、容器实例数量、容器应用镜像信息,所述处理器112在执行所述根据所述当前容器应用的信息创建该容器应用的步骤时,具体实现如下步骤:
根据所述容器应用的应用环境、所述容器应用的区域、所述容器实例数量确定该容器应用的容器实例的IP;根据所述容器应用的应用环境、所述容器应用的区域确定保存该容器应用镜像的镜像仓库;根据所述容器应用镜像信息确定创建容器实例需占用的资源;根据所述容器应用镜像信息从所确定的镜像仓库中提取出创建该容器应用的容器实例需使用的具体镜像;根据所述容器应用的应用环境、所述容器应用的区域、所确定的创建容器实例需占用的资源确定创建容器实例的宿主机;根据所确定的具体镜像在所确定的宿主机上创建该容器应用的容器实例,并将所创建的容器实例与所确定的容器实例的IP进行绑定。
在一实施例中,所述处理器112在执行所述根据所确定的具体镜像在所确定的宿主机上创建该容器应用的容器实例,并将所创建的容器实例与所确定的容器实例的IP进行绑定的步骤时,具体实现如下步骤:
通过容器编排工具将所确定的具体镜像推送到所确定的宿主机上,以在所述宿主机上创建该容器应用的容器实例;若该容器应用的容器实例创建完成,通过运维工具连接所创建的容器实例,将所创建的容器实例与所确定的容器实例的IP进行绑定。
在一实施例中,所述处理器112在执行所述在所述根据所述容器应用的应用环境、所述容器应用的区域、所述容器实例数量确定该容器应用的容器实例的IP的步骤之前,还实现如下步骤:
根据预设的名称生成规则生成该容器应用的应用名称;判断所生成的应用名称在该容器应用对应的区域中是否已经存在,其中,根据所述容器应用的应用环境、容器应用的区域确定当前容器应用对应的区域;若所生成的应用名称在该容器应用对应的区域中不存在,执行所述根据所述容器应用的应用环境、所述容器应用的区域、所述容器实例数量确定该容器应用的容器实例的IP的步骤。
在一实施例中,所述当前容器应用的信息还包括容器实例的使用时间、容器应用的资源组,所述处理器112在执行所述根据所述容器应用的应用环境、所述容器应用的区域、所述容器实例数量确定该容器应用的容器实例的IP的步骤之前,还实现如下步骤:
根据所述容器实例的使用时间、所述容器应用的资源组、所述容器实例数量来判断所述容器应用的资源组中是否有足够金额以用来创建该容器应用的容器实例;若有足够金额以用来创建该容器应用的容器实例,执行所述根据所述容器应用的应用环境、所述容器应用的区域、所述容器实例数量确定该容器应用的容器实例的IP的步骤。
在一实施例中,所述当前容器应用的信息还包括启用监控信息,启用监控信息用于表示对所创建的容器应用的容器实例进行监控,所述处理器112还实现如下步骤:
将容器实例对应的启用监控信息中的启用监控标识推送到所确定的宿主机上,以根据宿主机的监控进程收集该容器实例的运行数据信息。
在一实施例中,所述处理器112在执行所述根据所述当前容器应用的信息创建该容器应用的步骤之后,还实现如下步骤:
检测所述当前容器应用是否设置了负载均衡应用的信息;若所述当前容器应用设置了负载均衡应用的信息,根据所述当前容器应用的信息和所述负载均衡应用的信息创建该容器应用的负载均衡应用。
应当理解,在本申请实施例中,所称处理器112可以是中央处理单元(CentralProcessing Unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(应用程序lication Specific IntegratedCircuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
本领域普通技术人员可以理解的是实现上述实施例的方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成。该计算机程序可存储于一存储介质中,该存储介质可以为计算机可读存储介质。该计算机程序被该计算机系统中的至少一个处理器执行,以实现上述方法的实施例的流程步骤。
因此,本申请还提供了一种存储介质。该存储介质可以为计算机可读存储介质,该计算机可读存储介质包括非易失性计算机可读存储介质。该存储介质存储有计算机程序,该计算机程序当被处理器执行时实现以下步骤:
若接收到设置指令,根据所述设置指令调用预设的设置接口,以通过所述预设的设置接口设置需创建的多个容器应用的信息,其中,每个容器应用的信息不相同;接收提交指令,并获取所述提交指令中包括的多个容器应用的信息;根据预设规则从多个容器应用的信息中获取一个容器应用的信息,作为当前容器应用的信息;根据所述当前容器应用的信息创建该容器应用;判断是否已获取了所有的容器应用的信息;若还存在有容器应用的信息未获取,获取下一个容器应用的信息作为当前容器应用的信息,返回执行所述根据所述当前容器应用的信息创建该容器应用的步骤;若已经获取了所有的容器应用的信息,接收返回的多个容器应用创建成功或者失败的结果信息。
在一实施例中,所述当前容器应用的信息包括容器应用的应用环境、容器应用的区域、容器实例数量、容器应用镜像信息,所述处理器在执行所述根据所述当前容器应用的信息创建该容器应用的步骤时,具体实现如下步骤:
根据所述容器应用的应用环境、所述容器应用的区域、所述容器实例数量确定该容器应用的容器实例的IP;根据所述容器应用的应用环境、所述容器应用的区域确定保存该容器应用镜像的镜像仓库;根据所述容器应用镜像信息确定创建容器实例需占用的资源;根据所述容器应用镜像信息从所确定的镜像仓库中提取出创建该容器应用的容器实例需使用的具体镜像;根据所述容器应用的应用环境、所述容器应用的区域、所确定的创建容器实例需占用的资源确定创建容器实例的宿主机;根据所确定的具体镜像在所确定的宿主机上创建该容器应用的容器实例,并将所创建的容器实例与所确定的容器实例的IP进行绑定。
在一实施例中,所述处理器在执行所述根据所确定的具体镜像在所确定的宿主机上创建该容器应用的容器实例,并将所创建的容器实例与所确定的容器实例的IP进行绑定的步骤时,具体实现如下步骤:
通过容器编排工具将所确定的具体镜像推送到所确定的宿主机上,以在所述宿主机上创建该容器应用的容器实例;若该容器应用的容器实例创建完成,通过运维工具连接所创建的容器实例,将所创建的容器实例与所确定的容器实例的IP进行绑定。
在一实施例中,所述处理器在执行所述根据所述容器应用的应用环境、所述容器应用的区域、所述容器实例数量确定该容器应用的容器实例的IP的步骤之前,还实现如下步骤:
根据预设的名称生成规则生成该容器应用的应用名称;判断所生成的应用名称在该容器应用对应的区域中是否已经存在,其中,根据所述容器应用的应用环境、容器应用的区域确定当前容器应用对应的区域;若所生成的应用名称在该容器应用对应的区域中不存在,执行所述根据所述容器应用的应用环境、所述容器应用的区域、所述容器实例数量确定该容器应用的容器实例的IP的步骤。
在一实施例中,所述当前容器应用的信息还包括容器实例的使用时间、容器应用的资源组,所述处理器在执行所述根据所述容器应用的应用环境、所述容器应用的区域、所述容器实例数量确定该容器应用的容器实例的IP的步骤之前,还实现如下步骤:
根据所述容器实例的使用时间、所述容器应用的资源组、所述容器实例数量来判断所述容器应用的资源组中是否有足够金额以用来创建该容器应用的容器实例;若有足够金额以用来创建该容器应用的容器实例,执行所述根据所述容器应用的应用环境、所述容器应用的区域、所述容器实例数量确定该容器应用的容器实例的IP的步骤。
在一实施例中,所述当前容器应用的信息还包括启用监控信息,启用监控信息用于表示对所创建的容器应用的容器实例进行监控,所述处理器还实现如下步骤:
将容器实例对应的启用监控信息中的启用监控标识推送到所确定的宿主机上,以根据宿主机的监控进程收集该容器实例的运行数据信息。
在一实施例中,所述处理器在执行根据所述当前容器应用的信息创建该容器应用的步骤之后,还实现如下步骤:
检测所述当前容器应用是否设置了负载均衡应用的信息;若所述当前容器应用设置了负载均衡应用的信息,根据所述当前容器应用的信息和所述负载均衡应用的信息创建该容器应用的负载均衡应用。
所述存储介质可以是U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、磁碟或者光盘等各种可以存储程序代码的计算机可读存储介质。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置、设备和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的装置、设备和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种多容器应用创建方法,其特征在于,所述方法包括:
若接收到设置指令,根据所述设置指令调用预设的设置接口,以通过所述预设的设置接口设置需创建的多个容器应用的信息,其中,每个容器应用的信息不相同;
接收提交指令,并获取所述提交指令中包括的多个容器应用的信息;
根据预设规则从多个容器应用的信息中获取一个容器应用的信息,作为当前容器应用的信息;
根据所述当前容器应用的信息创建该容器应用;
判断是否已获取了所有的容器应用的信息;
若还存在有容器应用的信息未获取,获取下一个容器应用的信息作为当前容器应用的信息,返回执行所述根据所述当前容器应用的信息创建该容器应用的步骤;
若已经获取了所有的容器应用的信息,接收返回的多个容器应用创建成功或者失败的结果信息。
2.根据权利要求1所述的方法,其特征在于,所述当前容器应用的信息包括容器应用的应用环境、容器应用的区域、容器实例数量、容器应用镜像信息,所述根据所述当前容器应用的信息创建该容器应用,包括:
根据所述容器应用的应用环境、所述容器应用的区域、所述容器实例数量确定该容器应用的容器实例的IP;
根据所述容器应用的应用环境、所述容器应用的区域确定保存该容器应用镜像的镜像仓库;
根据所述容器应用镜像信息确定创建容器实例需占用的资源;
根据所述容器应用镜像信息从所确定的镜像仓库中提取出创建该容器应用的容器实例需使用的具体镜像;
根据所述容器应用的应用环境、所述容器应用的区域、所确定的创建容器实例需占用的资源确定创建容器实例的宿主机;
根据所确定的具体镜像在所确定的宿主机上创建该容器应用的容器实例,并将所创建的容器实例与所确定的容器实例的IP进行绑定。
3.根据权利要求2所述的方法,其特征在于,所述根据所确定的具体镜像在所确定的宿主机上创建该容器应用的容器实例,并将所创建的容器实例与所确定的容器实例的IP进行绑定,包括:
通过容器编排工具将所确定的具体镜像推送到所确定的宿主机上,以在所述宿主机上创建该容器应用的容器实例;
若该容器应用的容器实例创建完成,通过运维工具连接所创建的容器实例,将所创建的容器实例与所确定的容器实例的IP进行绑定。
4.根据权利要求2所述的方法,其特征在于,在所述根据所述容器应用的应用环境、所述容器应用的区域、所述容器实例数量确定该容器应用的容器实例的IP之前,所述方法还包括:
根据预设的名称生成规则生成该容器应用的应用名称;
判断所生成的应用名称在该容器应用对应的区域中是否已经存在,其中,根据所述容器应用的应用环境、容器应用的区域确定当前容器应用对应的区域;
若所生成的应用名称在该容器应用对应的区域中不存在,执行所述根据所述容器应用的应用环境、所述容器应用的区域、所述容器实例数量确定该容器应用的容器实例的IP的步骤。
5.根据权利要求2所述的方法,其特征在于,所述当前容器应用的信息还包括容器实例的使用时间、容器应用的资源组,在所述根据所述容器应用的应用环境、所述容器应用的区域、所述容器实例数量确定该容器应用的容器实例的IP之前,所述方法还包括:
根据所述容器实例的使用时间、所述容器应用的资源组、所述容器实例数量来判断所述容器应用的资源组中是否有足够金额以用来创建该容器应用的容器实例;
若有足够金额以用来创建该容器应用的容器实例,执行所述根据所述容器应用的应用环境、所述容器应用的区域、所述容器实例数量确定该容器应用的容器实例的IP的步骤。
6.根据权利要求2所述的方法,其特征在于,所述当前容器应用的信息还包括启用监控信息,启用监控信息用于表示对所创建的容器应用的容器实例进行监控,所述方法还包括:
将容器实例对应的启用监控信息中的启用监控标识推送到所确定的宿主机上,以根据宿主机的监控进程收集该容器实例的运行数据信息。
7.根据权利要求1所述的方法,其特征在于,在所述根据所述当前容器应用的信息创建该容器应用之后,所述方法还包括:
检测所述当前容器应用是否设置了负载均衡应用的信息;
若所述当前容器应用设置了负载均衡应用的信息,根据所述当前容器应用的信息和所述负载均衡应用的信息创建该容器应用的负载均衡应用。
8.一种多容器应用创建装置,其特征在于,所述多容器应用创建装置包括:
设置单元,用于若接收到设置指令,根据所述设置指令调用预设的设置接口,以接收通过所述预设的设置接口设置的需创建的多个容器应用的信息,其中,每个容器应用的信息不相同;
接收获取单元,用于接收提交指令,并获取所述提交指令中包括的多个容器应用的信息;
当前确定单元,用于根据预设规则从多个容器应用的信息中获取一个容器应用的信息,作为当前容器应用的信息;
应用创建单元,用于根据所述当前容器应用的信息创建该容器应用;
获取判断单元,用于判断是否已获取了所有的容器应用的信息;
当前确定单元,还用于若还存在有容器应用的信息未获取,获取下一个容器应用的信息作为当前容器应用的信息,返回执行所述根据所述当前容器应用的信息创建该容器应用的步骤;
结果接收单元,用于若已经获取了所有的容器应用的信息,接收返回的多个容器应用创建成功或者失败的结果信息。
9.一种计算机设备,其特征在于,所述计算机设备包括存储器,以及与所述存储器相连的处理器;
所述存储器用于存储计算机程序;所述处理器用于运行所述存储器中存储的计算机程序,以执行如权利要求1-7任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时,实现如权利要求1-7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910414381.0A CN110286997B (zh) | 2019-05-17 | 2019-05-17 | 多容器应用创建方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910414381.0A CN110286997B (zh) | 2019-05-17 | 2019-05-17 | 多容器应用创建方法、装置、计算机设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110286997A true CN110286997A (zh) | 2019-09-27 |
CN110286997B CN110286997B (zh) | 2023-08-18 |
Family
ID=68002180
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910414381.0A Active CN110286997B (zh) | 2019-05-17 | 2019-05-17 | 多容器应用创建方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110286997B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111459573A (zh) * | 2020-04-01 | 2020-07-28 | 济南浪潮高新科技投资发展有限公司 | 一种智能合约执行环境的启动方法以及装置 |
CN111857653A (zh) * | 2020-05-26 | 2020-10-30 | 伏羲科技(菏泽)有限公司 | 微服务管理方法及装置 |
CN112346818A (zh) * | 2020-11-02 | 2021-02-09 | 北京新媒传信科技有限公司 | 一种容器应用部署方法、装置、电子设备和存储介质 |
CN113485795A (zh) * | 2021-07-26 | 2021-10-08 | 四川万益能源科技有限公司 | 一种基于多种类型项目的自动化容器启动方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105468362A (zh) * | 2015-11-17 | 2016-04-06 | 广州杰赛科技股份有限公司 | 应用部署方法和云计算系统 |
CN105867955A (zh) * | 2015-09-18 | 2016-08-17 | 乐视云计算有限公司 | 一种应用程序部署系统及部署方法 |
CN105979009A (zh) * | 2016-07-06 | 2016-09-28 | 乾云众创(北京)信息科技研究院有限公司 | 一种针对云应用容器的增加负载自动均衡方法 |
CN107590001A (zh) * | 2017-09-08 | 2018-01-16 | 北京京东尚科信息技术有限公司 | 负载均衡方法及装置、存储介质、电子设备 |
CN107979493A (zh) * | 2017-11-21 | 2018-05-01 | 平安科技(深圳)有限公司 | 平台即服务paas容器平台的构建方法、服务器及存储介质 |
US20180373505A1 (en) * | 2017-06-21 | 2018-12-27 | Ca, Inc. | Systems and methods for transforming service definitions in a multi-service containerized application |
-
2019
- 2019-05-17 CN CN201910414381.0A patent/CN110286997B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105867955A (zh) * | 2015-09-18 | 2016-08-17 | 乐视云计算有限公司 | 一种应用程序部署系统及部署方法 |
CN105468362A (zh) * | 2015-11-17 | 2016-04-06 | 广州杰赛科技股份有限公司 | 应用部署方法和云计算系统 |
CN105979009A (zh) * | 2016-07-06 | 2016-09-28 | 乾云众创(北京)信息科技研究院有限公司 | 一种针对云应用容器的增加负载自动均衡方法 |
US20180373505A1 (en) * | 2017-06-21 | 2018-12-27 | Ca, Inc. | Systems and methods for transforming service definitions in a multi-service containerized application |
CN107590001A (zh) * | 2017-09-08 | 2018-01-16 | 北京京东尚科信息技术有限公司 | 负载均衡方法及装置、存储介质、电子设备 |
CN107979493A (zh) * | 2017-11-21 | 2018-05-01 | 平安科技(深圳)有限公司 | 平台即服务paas容器平台的构建方法、服务器及存储介质 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111459573A (zh) * | 2020-04-01 | 2020-07-28 | 济南浪潮高新科技投资发展有限公司 | 一种智能合约执行环境的启动方法以及装置 |
CN111459573B (zh) * | 2020-04-01 | 2023-09-15 | 山东浪潮科学研究院有限公司 | 一种智能合约执行环境的启动方法以及装置 |
CN111857653A (zh) * | 2020-05-26 | 2020-10-30 | 伏羲科技(菏泽)有限公司 | 微服务管理方法及装置 |
CN112346818A (zh) * | 2020-11-02 | 2021-02-09 | 北京新媒传信科技有限公司 | 一种容器应用部署方法、装置、电子设备和存储介质 |
CN113485795A (zh) * | 2021-07-26 | 2021-10-08 | 四川万益能源科技有限公司 | 一种基于多种类型项目的自动化容器启动方法 |
CN113485795B (zh) * | 2021-07-26 | 2024-03-26 | 四川万益能源科技有限公司 | 一种基于多种类型项目的自动化容器启动方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110286997B (zh) | 2023-08-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110286997A (zh) | 多容器应用创建方法、装置、计算机设备及存储介质 | |
CN110289983A (zh) | 负载均衡应用创建方法、装置、计算机设备及存储介质 | |
CN110224860A (zh) | 负载均衡应用创建方法、装置、计算机设备及存储介质 | |
CN108255497B (zh) | 一种应用的部署方法及装置 | |
CN106031116B (zh) | 一种ns与vnf的关联方法、装置及系统 | |
CN110138577B (zh) | 集群创建方法、第一服务器以及可读存储介质 | |
CN110278288A (zh) | 预分配容器ip的方法、装置、计算机设备及存储介质 | |
CN108337289B (zh) | 一种操作指令处理方法及系统 | |
CN105095103B (zh) | 用于云环境下的存储设备管理方法和装置 | |
CN111835679B (zh) | 多租户场景下的租户资源管理方法和装置 | |
CN110275775A (zh) | 容器应用的资源配置方法、系统及存储介质 | |
EP3422634A1 (en) | Resource authorization method for vnf deployment, vnfm and nfvo | |
CN110262873A (zh) | 容器应用的配置修改方法、装置、计算机设备及存储介质 | |
CN108845825B (zh) | 一种存储系统配置方法、装置、设备及可读存储介质 | |
CN112003931B (zh) | 一种编排控制器部署方法、系统及相关组件 | |
CN110166544A (zh) | 负载均衡应用创建方法、装置、计算机设备及存储介质 | |
CN110417856A (zh) | 多活负载均衡应用的扩容方法、装置、设备及存储介质 | |
CN110275717A (zh) | 私有镜像克隆方法、装置、计算机设备及存储介质 | |
CN108243205A (zh) | 一种用于控制云平台资源分配的方法、设备与系统 | |
CN110287021A (zh) | 负载均衡应用管理方法、装置、计算机设备及存储介质 | |
US9934113B2 (en) | Enhanced console assisted recovery for a coordinated timing network | |
CN110351104A (zh) | 一种vim选择方法及装置 | |
CN109391483A (zh) | 网络实例化方法、网络功能虚拟化编排器和系统 | |
CN110290172B (zh) | 容器应用克隆方法、装置、计算机设备及存储介质 | |
CN110262871A (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 |