CN108170820B - 一种容器处理方法、控制服务器及分布式集群 - Google Patents

一种容器处理方法、控制服务器及分布式集群 Download PDF

Info

Publication number
CN108170820B
CN108170820B CN201810001794.1A CN201810001794A CN108170820B CN 108170820 B CN108170820 B CN 108170820B CN 201810001794 A CN201810001794 A CN 201810001794A CN 108170820 B CN108170820 B CN 108170820B
Authority
CN
China
Prior art keywords
container
target
node
distributed
target container
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
CN201810001794.1A
Other languages
English (en)
Other versions
CN108170820A (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 CN201810001794.1A priority Critical patent/CN108170820B/zh
Publication of CN108170820A publication Critical patent/CN108170820A/zh
Application granted granted Critical
Publication of CN108170820B publication Critical patent/CN108170820B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • 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/445Program loading or initiating
    • G06F9/44568Immediately runnable code
    • G06F9/44578Preparing or optimising for loading

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请公开了一种容器处理方法、控制服务器及分布式集群,所述分布式集群中包括多个节点,且所述分布式集群中架设有分布式文件系统,所述分布式文件系统中以存储插件的结构存放容器文件,所述方法包括:确定待运行的目标容器;在所述分布式集群的节点中,确定与所述目标容器相匹配的目标节点;将所述分布式文件系统中所述目标容器对应的目标文件投递到所述目标节点;在所述目标节点上运行所述目标容器。

Description

一种容器处理方法、控制服务器及分布式集群
技术领域
本申请涉及数据处理技术领域,特别涉及一种容器处理方法、控制服务器及分布式集群。
背景技术
随着网络的发展,人工智能AI(Artificial Intelligence)平台的使用越来越广泛。在人工智能平台中通过docker集群资源管理框架为用户提供有状态的容器服务。现有的容器集群资源管理框架中,将智能平台中的容器存放于用户本地终端,而用户所需要的工作环境存放在用户本地终端的容器中,用户通过启动并运行容器来获得容器中的工作环境,实现相应的功能服务器。
但是以上方案中,通常会由于用户本地终端资源紧张而没有足够的资源启动本地终端上的容器,造成容器启动失败,用户无法获取到容器中的工作环境,出现AI平台无法为用户提供智能服务的情况。
因此,亟需一种能够正常启动AI平台所提供的容器,为用户提供智能服务的技术方案。
发明内容
本申请的目的是提供一种容器处理方法、控制服务器及分布式集群,用以解决现有技术中具有工作环境的容器由于当前节点没有足够的资源无法正常运行的技术问题。
本申请提供了一种容器处理方法,应用于分布式集群中,所述分布式集群中包括多个节点,且所述分布式集群中架设有分布式文件系统,所述分布式文件系统中以存储插件的结构存放容器文件,所述方法包括:
确定待运行的目标容器;
在所述分布式集群的节点中,确定与所述目标容器相匹配的目标节点;
将所述分布式文件系统中所述目标容器对应的目标文件投递到所述目标节点;
在所述目标节点上运行所述目标容器。
上述方法,优选地,所述方法还包括:
为所述目标容器设置容器标签,所述容器标签唯一表示所述目标容器。
上述方法,优选地,所述确定待运行的目标容器,包括:
在人工智能AI平台上创建新的容器后,将所述新的容器确定为目标容器。
上述方法,优选地,在所述分布式集群的节点中,确定与所述目标容器相匹配的目标节点,包括:
在所述分布式集群中,将满足所述目标容器的运行条件的节点,确定为目标节点。
上述方法,优选地,所述确定待运行的目标容器,包括:
接收容器运行指令;
在所述分布式集群的部署过容器的节点中,确定与所述容器运行指令相对应的目标容器。
上述方法,优选地,在所述分布式集群的节点中,确定与所述目标容器相匹配的目标节点,包括:
确定所述目标容器在所述分布式集群中所对应的当前节点;
判断所述当前节点是否满足所述目标容器的运行条件;
如果所述当前节点满足所述目标容器的运行条件,确定所述当前节点为目标节点;
如果所述当前节点不满足所述目标容器的运行条件,在所述分布式集群的其他节点中确定满足所述目标容器的运行条件的节点为目标节点。
上述方法,优选地,所述目标容器的运行条件为:节点中的可用资源量超过预设的资源阈值。
上述方法,优选地,在所述目标节点上运行所述目标容器之后,所述方法还包括:
接收容器操作指令,所述容器操作指令中至少包括操作容器标签;
从所述分布式集群处于运行状态的容器中,确定与所述操作容器标签相对应的待操作容器;
对所述待操作容器执行相应的功能。
上述方法,优选地,将所述分布式文件系统中所述目标容器对应的目标文件投递到所述目标节点,包括:
获取所述目标容器的容器文件版本号;
根据所述容器文件版本号,判断所述目标容器是否需要进行容器文件同步,如果是,从所述分布式文件系统中加载所述目标容器的增量容器文件到所述目标节点,否则,从所述分布式文件系统中加载所述目标容器的本地容器文件到目标节点。
上述方法,优选地,还包括:
获取所述目标容器在所述目标节点上运行所产生的增量文件;
将所述增量文件上传到所述分布式文件系统。
本申请还提供了一种控制服务器,应用于分布式集群中,所述分布式集群中包括多个节点,且所述分布式集群中架设有分布式文件系统,所述分布式文件系统中以存储插件的结构存放容器文件,所述控制服务器包括:存储器和处理器,其中:
所述存储器用于存储应用程序及所述应用程序运行所产生的数据;
所述处理器,用于执行所述应用程序,以实现以下功能:确定待运行的目标容器;在所述分布式集群的节点中,确定与所述目标容器相匹配的目标节点;将所述分布式文件系统中所述目标容器对应的目标文件投递到所述目标节点;在所述目标节点上运行所述目标容器。
本申请还提供了一种分布式集群,所述分布式集群中包括多个节点,且所述分布式集群中架设有分布式文件系统,所述分布式文件系统中以存储插件的结构存放容器文件,所述分布式集群中还包括:
控制节点,用于:确定待运行的目标容器;在所述分布式集群的节点中,确定与所述目标容器相匹配的目标节点;将所述分布式文件系统中所述目标容器对应的目标文件投递到所述目标节点;在所述目标节点上运行所述目标容器。
由上述方案可知,本申请提供的一种容器处理方法及分布式集群中通过将容器文件以存储插件的结构存放在分布式集群架设的分布式文件系统中,从而在需要运行目标容器时,在集群节点中找到合适的目标节点后,将分布式文件系统中目标容器的目标文件投递到目标节点上,从而实现目标容器在目标节点上的正常运行,为用户提供工作环境,保证AI平台为用户提供有效的智能服务。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例一提供的一种容器处理方法的流程图;
图2为本申请实施例的应用示例图;
图3为本申请实施例一的另一流程图;
图4、图5及图6分别为本申请实施例一的部分流程图;
图7为本申请实施例二提供的一种控制服务器的结构示意图;
图8为本申请实施例三提供的一种分布式集群的结构示意图;
图9、图10及图11分别为本申请实施例的其他应用示例图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
参考图1,为本申请实施例一提供的一种容器处理方法的实现流程图,该方法可以应用于AI平台的分布式集群中,如图2中所示,该分布式集群中可以包括多个节点,这里的节点可以为物理节点,如服务器或计算机等实现,每个节点上均可以运行具有工作环境的容器docker。而在分布式集群中架设有分布式文件系统,分布式文件系统同样包含多个文件节点,文件节点部署在分布式集群中的物理节点上,每个文件节点上以存储插件的结构存放容器文件。
在本实施例中,该容器处理方法可以包括以下步骤:
步骤101:确定待运行的目标容器。
其中,目标容器可以为新创建的容器,该容器在被创建之后,需要寻找合适的节点进行安装及运行;或者,目标容器可以为曾经在节点上运行过的容器,该容器在运行结束后被停止,需要寻找合适的节点进行重新运行。
需要说明的是,本实施例中可以通过接收用户指令来确定待运行的目标容器。
步骤102:在分布式集群的节点中,确定与目标容器相匹配的目标节点。
其中,与目标容器相匹配的目标节点是指,能够启动目标容器使得目标容器中的工作环境正常运行的节点,在本实施例中,从分布式集群的节点找查找能够匹配目标容器的目标节点,如果找不到,可以持续进行查找匹配,或者结束当前方案,为用户提示无法找到合适节点的信息。
步骤103:将分布式文件系统中目标容器对应的目标文件投递到目标节点。
其中,在分布式集群中,容器在不同的节点上所使用的参数或变量可能不同,而且容器在多个节点上运行所生成的容器文件版本也会不同,为此,本实施例中,将容器文件以存储插件的方式存放到分布式文件系统中,在目标容器找到合适的目标节点之后,再把目标容器在分布式文件系统中的容器文件投递到目标节点上,以供目标容器使用,以避免目标节点中容器文件版本不同,而导致目标容器的后续运行受到影响。
步骤104:在目标节点上运行目标容器。
其中,本实施例中基于目标节点上的目标文件启动并运行目标容器,为用户提供具有相应功能的工作环境,实现AI智能服务。
由上述方案可知,本申请实施例一提供的一种容器处理方法,通过将容器文件以存储插件的结构存放在分布式集群架设的分布式文件系统中,从而在需要运行目标容器时,在集群节点中找到合适的目标节点后,将分布式文件系统中目标容器的目标文件投递到目标节点上,从而实现目标容器在目标节点上的正常运行,为用户提供工作环境,保证AI平台为用户提供有效的智能服务。
在一种实现方式中,本实施例可以为目标容器及其他分布式集群中的容器设置容器标签,从而用该容器标签能够唯一表示相应的容器,从而在用户需要运行某个容器时,使得容器标签对容器进行定位,如生成容器运行指令,由本实施例对该指令进行相应,确定相应的目标容器,从而实现容器运行。
在一种实现方式中,目标容器可以为新创建的容器,如图3中所示,步骤101可以通过以下步骤131实现:
步骤131:在AI平台上创建新的容器后,将新的容器确定为目标容器。
其中,在创建新的容器后,可以对该新的容器设置相应的容器标签,用以唯一标识该容器。
之后,本实施例在确定该目标容器相匹配的目标节点时,可以通过步骤231实现:
步骤231:在分布式集群中,将满足目标容器的运行条件的节点确定为目标节点。
其中,目标容器的运行条件可以为:节点中的可用资源量超过预设的资源阈值,如节点中的GPU等图像处理资源及中央处理器CPU(Central Processing Unit)等数据计算资源的可用剩余量超过目标容器所需要的资源阈值,此时该节点才称为满足目标容器的运行条件,即可确定为目标节点。
之后,本实施例中从分布式文件系统中该目标容器的相关目标文件投递到目标节点之后,在目标节点上部署并运行这个目标容器,在目标容器运行完成之后,停止。
在一种实现方式中,目标容器可以为分布式集群中已经运行过的容器,区别于新创建的容器,该目标容器在之前被创建时被赋予过容器标签,本实施例中可以在接收到用户输入的或者自动生成的容器运行指令之后,根据容器运行指令中的容器标签在分布式集群的部署过容器的节点中,找到目标容器,此时,该目标容器仍然处于停止状态。之后,本实施例在确定目标节点时,可以通过以下步骤实现,如图4中所示:
步骤401:确定目标容器在分布式集群中所对应的当前节点。
其中,该当前节点可以理解为目标容器在前一次运行时所处的节点,目标容器在该当前节点上处于停止状态。
步骤402:判断当前节点上是否满足目标容器的运行条件,如果是,执行步骤403,否则,执行步骤404。
其中,这里的运行条件可以为:节点中的可用资源量超过预设的资源阈值,如节点中的GPU等图像处理资源及中央处理器CPU(Central Processing Unit)等数据计算资源的可用剩余量超过目标容器所需要的资源阈值,由此,如果当前节点中的可用资源量超过目标容器所需要的资源阈值,则执行步骤403,否则,执行步骤404。
步骤403:确定当前节点为目标节点。
步骤404:在分布式集群的其他节点中确定满足目标容器的运行条件的节点为目标节点。
也就是说,本实施例中对处于停止状态的目标容器重新运行时,可以首先判断其所在的当前节点是否有足够的资源支持目标容器的运行,如果当前节点可以支持目标容器的正常运行,那么就不需要迁移目标容器,直接在目标节点上运行目标容器,而如果当前节点上没有足够的资源支持目标容器的运行,那么就可以在分布式集群的其他节点中寻找有足够的资源支持目标容器运行的节点,在将目标容器从当前节点迁移到目标节点后,将目标容器的目标文件投递到目标节点,此时在目标节点上运行目标容器,为用户提供工作环境。
在一种实现方式中,在目标容器正常运行过程中,此时并未处于停止状态,如果用户需要对目标容器进行某些操作,可以使用目标容器的容器标签对目标容器进行定位,如图5中所示:
步骤501:接收容器操作指令。
其中,该容器操作指令中至少包括操作容器标签,该操作容器标签唯一标识一个容器。
步骤502:从分布式集群处于运行状态的容器中,确定与操作容器标签相对应的待操作容器。
其中,该待操作容器可以为已经处于运行状态的目标容器,还可以为其他处于运行状态的容器。
步骤503:对待操作容器执行相应的功能。
也就是说,本实施例中通过对容器设置全局标签,来唯一标识相应的容器,从而在后续用户需要对容器进行操作时,可以基于容器标签对容器进行定位,找到容器后就可以对该容器执行相应的容器指令,如修改等操作。
在一种实现方式中,本实施例中在投递目标容器的目标文件时,可以通过以下方式实现,如图6中所示:
步骤601:获取目标容器的容器文件版本号。
其中,容器文件版本号可以用容器的修改日期和/或修改内容来进行标记,从而记录容器文件的更新情况,如容器在哪一天修改过哪些文件。
步骤602:根据所述容器文件版本号,判断所述目标容器在目标节点中的容器文件是否需要进行容器文件同步,如果是,执行步骤603,否则,执行步骤604。
例如,判断容器文件版本号是否为最新的版本号,如果是,则说明不需要进行文件同步,执行步骤603,否则,执行步骤604。
步骤603:从所述分布式文件系统中加载所述目标容器的增量容器文件到所述目标节点。
其中,本实施例中可以通过从分布式文件系统中加载最新的增量容器文件,例如,将更新时间晚于目标容器的容器文件版本号的所有容器文件加载到目标节点中。
步骤604:从所述分布式文件系统中加载所述目标容器的本地容器文件到目标节点。
另外,本实施例在目标节点上结束并停止运行目标容器之后,可以将目标容器在目标节点上运行所产生的增量文件进行获取,例如,对目标容器在目标节点上的更新的容器文件进行版本号标记,将这些增量文件上传到分布式文件系统中,以提供给目标容器再次运行时使用。
参考图7,为本申请实施例二提供的一种控制服务器的结构示意图,该控制服务器可以应用于分布式集群中,该分布式集群部署在AI平台上,为用户提供智能服务。其中,分布式集群中可以包含多个节点,节点即为物理节点,如服务器或计算机等,每个工作节点上均可以运行具有工作环境的容器。
其中,在分布式集群中架设有分布式文件系统中,分布式文件系统中同样可以包含多个文件节点,文件节点分别部署在分布式集群的节点上,每个文件节点上以存储插件的形式存放容器文件。
在本实施例中,该控制服务器可以包括以下结构:
存储器701,用于存储应用程序及应用程序运行所产生的数据。
其中,存储器701可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。
处理器702,用于执行所述应用程序,以实现以下功能:确定待运行的目标容器;在所述分布式集群的节点中,确定与所述目标容器相匹配的目标节点;将所述分布式文件系统中所述目标容器对应的目标文件投递到所述目标节点;在所述目标节点上运行所述目标容器。
其中,目标容器可以为AI平台新创建的容器,也可以为曾经运行过但目前处于停止状态的容器。
本实施例中处理器702可以通过对容器设置容器标签,来唯一标识容器,从而用户可以通过容器标签来对容器进行定位,例如,本实施例在接收到用户的容器操作指令之后,在分布式集群中处于运行状态的容器中,找到与指令中操作容器标签相对应的容器,并对其执行相应功能,实现容器操作。
在一种实现方式中,处理器702可以在人工智能AI平台上创建新的容器后,将所述新的容器确定为目标容器,之后,在所述分布式集群中,将满足所述目标容器的运行条件的节点,确定为目标节点,例如目标节点中的可用资源量超过预设的资源阈值,由此,在将分布式文件系统中目标容器的目标文件投递到目标节点后,在目标节点上部署并运行目标容器。
在另一种实现方式中,处理器702可以通过接收容器运行指令,从而在布式集群的部署过容器的节点中,确定与所述容器运行指令相对应的目标容器,之后,确定所述目标容器在所述分布式集群中所对应的当前节点,判断所述当前节点是否满足所述目标容器的运行条件,例如判断当前节点的可用资源量是否超过资源阈值,如果所述当前节点满足所述目标容器的运行条件,确定所述当前节点为目标节点,而如果所述当前节点不满足所述目标容器的运行条件,在所述分布式集群的其他节点中确定满足所述目标容器的运行条件的节点为目标节点,由此,在将目标容器从当前节点迁移到目标节点后,将分布式文件系统中目标容器的目标文件投递到目标节点,此时在目标节点上运行目标容器。
另外,本实施例中,处理器702还可以对分布式文件系统中容器文件进行更新同步,例如,在目标容器运行结束后,获取到该目标容器的增量文件,上传到分布式文件系统中,进行文件同步。而处理器702在从分布式文件系统中所述目标容器对应的目标文件投递到所述目标节点时,可以首先获取所述目标容器的容器文件版本号,根据所述容器文件版本号,判断所述目标容器是否需要进行容器文件同步,如果是,从所述分布式文件系统中加载所述目标容器的增量容器文件到所述目标节点,否则,从所述分布式文件系统中加载所述目标容器的本地容器文件到目标节点。
需要说明的是,处理器702的其他具体实现技术可以参考前文中图1~图6的相应内容,此处不再详述。
由上述方案可知,本申请实施例二提供的一种控制服务器,通过将容器文件以存储插件的结构存放在分布式集群架设的分布式文件系统中,从而在需要运行目标容器时,在集群节点中找到合适的目标节点后,将分布式文件系统中目标容器的目标文件投递到目标节点上,从而实现目标容器在目标节点上的正常运行,为用户提供工作环境,保证AI平台为用户提供有效的智能服务。
参考图8,为本申请实施例三提供的一种分布式集群的结构示意图,该分布式集群部署在AI平台上,为用户提供智能服务。其中,分布式集群中可以包含多个工作节点801,工作节点801即为物理节点,如服务器或计算机等,每个工作节点上均可以运行具有工作环境的容器。
其中,在分布式集群中架设有分布式文件系统中,如图8中所示,分布式文件系统中同样可以包含多个文件节点,文件节点分别部署在分布式集群的工作节点801上,每个文件节点上以存储插件的形式存放容器文件。
在本实施例的分布式集群中,还可以包含有:
控制节点802,该控制节点802可以通过控制服务器等实现,用于:确定待运行的目标容器;在所述分布式集群的工作节点801中,确定与所述目标容器相匹配的目标节点;将所述分布式文件系统中所述目标容器对应的目标文件投递到所述目标节点;在所述目标节点上运行所述目标容器。
其中,目标容器可以为AI平台新创建的容器,也可以为曾经运行过但目前处于停止状态的容器。
本实施例中可以通过对容器设置容器标签,来唯一标识容器,从而用户可以通过容器标签来对容器进行定位,例如,本实施例在接收到用户的容器操作指令之后,在分布式集群中处于运行状态的容器中,找到与指令中操作容器标签相对应的容器,并对其执行相应功能,实现容器操作。
在一种实现方式中,控制节点802可以在人工智能AI平台上创建新的容器后,将所述新的容器确定为目标容器,之后,在所述分布式集群中,将满足所述目标容器的运行条件的节点,确定为目标节点,例如目标节点中的可用资源量超过预设的资源阈值,由此,在将分布式文件系统中目标容器的目标文件投递到目标节点后,在目标节点上部署并运行目标容器。
在另一种实现方式中,控制节点802可以通过接收容器运行指令,从而在布式集群的部署过容器的节点中,确定与所述容器运行指令相对应的目标容器,之后,确定所述目标容器在所述分布式集群中所对应的当前节点,判断所述当前节点是否满足所述目标容器的运行条件,例如判断当前节点的可用资源量是否超过资源阈值,如果所述当前节点满足所述目标容器的运行条件,确定所述当前节点为目标节点,而如果所述当前节点不满足所述目标容器的运行条件,在所述分布式集群的其他节点中确定满足所述目标容器的运行条件的节点为目标节点,由此,在将目标容器从当前节点迁移到目标节点后,将分布式文件系统中目标容器的目标文件投递到目标节点,在目标节点上运行目标容器。
另外,本实施例中,控制节点802还可以对分布式文件系统中容器文件进行更新同步,例如,在目标容器运行结束后,获取到该目标容器的增量文件,上传到分布式文件系统中,进行文件同步。而控制节点802在从分布式文件系统中所述目标容器对应的目标文件投递到所述目标节点时,可以首先获取所述目标容器的容器文件版本号,根据所述容器文件版本号,判断所述目标容器是否需要进行容器文件同步,如果是,从所述分布式文件系统中加载所述目标容器的增量容器文件到所述目标节点,否则,从所述分布式文件系统中加载所述目标容器的本地容器文件到目标节点。
以下结合图9、图10及图11对控制节点802的工作流程进行说明:
如图9中所示,AI平台的分布式集群上架设分布式文件系统,每个文件节点上以存储插件的形式存放容器文件。
如图10中所示,首先,在AI平台上新创建容器时,控制节点对容器进行全局命名,如设置容器标签,再从分布式集群中寻找适当的节点,从而在找到的节点上运行容器,直到容器运行停止。
而在容器停止后需要重新运行时,控制节点可以首先判断容器的当前节点是不是可以有足够的资源支撑容器的运行,如果是,在将容器文件投递到当前节点后在当前节点上运行容器,否则,需要在分布式集群的其他节点中寻找适当的节点,从而在找到的节点上运行容器,直到容器运行停止。
另外,控制节点可以接收容器指令,通过指令中的容器全局名称来定位容器所在的节点,从而对运行中的容器进行各种功能的操作。
如图11中所示,控制节点在将容器文件投递到找到的节点时,需要判断容器的同步版本号,是否需要进行文件同步,如果需要,那么从分布式文件系统中加载相应的容器文件同步到找到的节点上,实现容器运行,直到容器运行结束;
而在容器运行结束之后,可以将此次运行的增量数据同步到分布式文件系统中并标记相应的同步版本号,如修改日期等,实现文件同步,以提供下次使用。
由上述方案可知,本申请实施例三提供的一种分布式集群,通过将容器文件以存储插件的结构存放在分布式集群架设的分布式文件系统中,从而在需要运行目标容器时,在集群节点中找到合适的目标节点后,将分布式文件系统中目标容器的目标文件投递到目标节点上,从而实现目标容器在目标节点上的正常运行,为用户提供工作环境,保证AI平台为用户提供有效的智能服务。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本申请所提供的一种容器处理方法、控制服务器及分布式集群进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (10)

1.一种容器处理方法,应用于分布式集群中,所述分布式集群中包括多个节点,且所述分布式集群中架设有分布式文件系统,所述分布式文件系统中以存储插件的结构存放容器文件,所述方法包括:
确定待运行的目标容器;
在所述分布式集群的节点中,确定与所述目标容器相匹配的目标节点与目标容器相匹配的目标节点是指,能够启动目标容器使得目标容器中的工作环境正常运行的节点;
将所述分布式文件系统中所述目标容器对应的目标文件投递到所述目标节点;
在所述目标节点上运行所述目标容器。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
为所述目标容器设置容器标签,所述容器标签唯一表示所述目标容器。
3.根据权利要求1所述的方法,其特征在于,所述确定待运行的目标容器,包括:
在人工智能AI平台上创建新的容器后,将所述新的容器确定为目标容器。
4.根据权利要求3所述的方法,其特征在于,在所述分布式集群的节点中,确定与所述目标容器相匹配的目标节点,包括:
在所述分布式集群中,将满足所述目标容器的运行条件的节点,确定为目标节点。
5.根据权利要求1所述的方法,其特征在于,所述确定待运行的目标容器,包括:
接收容器运行指令;
在所述分布式集群的部署过容器的节点中,确定与所述容器运行指令相对应的目标容器。
6.根据权利要求5所述的方法,其特征在于,在所述分布式集群的节点中,确定与所述目标容器相匹配的目标节点,包括:
确定所述目标容器在所述分布式集群中所对应的当前节点;
判断所述当前节点是否满足所述目标容器的运行条件;
如果所述当前节点满足所述目标容器的运行条件,确定所述当前节点为目标节点;
如果所述当前节点不满足所述目标容器的运行条件,在所述分布式集群的其他节点中确定满足所述目标容器的运行条件的节点为目标节点。
7.根据权利要求2所述的方法,其特征在于,在所述目标节点上运行所述目标容器之后,所述方法还包括:
接收容器操作指令,所述容器操作指令中至少包括操作容器标签;
从所述分布式集群处于运行状态的容器中,确定与所述操作容器标签相对应的待操作容器;
对所述待操作容器执行相应的功能。
8.根据权利要求1所述的方法,其特征在于,将所述分布式文件系统中所述目标容器对应的目标文件投递到所述目标节点,包括:
获取所述目标容器的容器文件版本号;
根据所述容器文件版本号,判断所述目标容器是否需要进行容器文件同步,如果是,从所述分布式文件系统中加载所述目标容器的增量容器文件到所述目标节点,否则,从所述分布式文件系统中加载所述目标容器的本地容器文件到目标节点。
9.一种控制服务器,应用于分布式集群中,所述分布式集群中包括多个节点,且所述分布式集群中架设有分布式文件系统,所述分布式文件系统中以存储插件的结构存放容器文件,所述控制服务器包括:存储器和处理器,其中:
所述存储器用于存储应用程序及所述应用程序运行所产生的数据;
所述处理器,用于执行所述应用程序,以实现以下功能:确定待运行的目标容器;在所述分布式集群的节点中,确定与所述目标容器相匹配的目标节点,与目标容器相匹配的目标节点是指,能够启动目标容器使得目标容器中的工作环境正常运行的节点;将所述分布式文件系统中所述目标容器对应的目标文件投递到所述目标节点;在所述目标节点上运行所述目标容器。
10.一种分布式集群,所述分布式集群中包括多个节点,且所述分布式集群中架设有分布式文件系统,所述分布式文件系统中以存储插件的结构存放容器文件,所述分布式集群中还包括:
控制节点,用于:确定待运行的目标容器;在所述分布式集群的节点中,确定与所述目标容器相匹配的目标节点,与目标容器相匹配的目标节点是指,能够启动目标容器使得目标容器中的工作环境正常运行的节点;将所述分布式文件系统中所述目标容器对应的目标文件投递到所述目标节点;在所述目标节点上运行所述目标容器。
CN201810001794.1A 2018-01-02 2018-01-02 一种容器处理方法、控制服务器及分布式集群 Active CN108170820B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810001794.1A CN108170820B (zh) 2018-01-02 2018-01-02 一种容器处理方法、控制服务器及分布式集群

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810001794.1A CN108170820B (zh) 2018-01-02 2018-01-02 一种容器处理方法、控制服务器及分布式集群

Publications (2)

Publication Number Publication Date
CN108170820A CN108170820A (zh) 2018-06-15
CN108170820B true CN108170820B (zh) 2022-04-22

Family

ID=62517176

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810001794.1A Active CN108170820B (zh) 2018-01-02 2018-01-02 一种容器处理方法、控制服务器及分布式集群

Country Status (1)

Country Link
CN (1) CN108170820B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109120678B (zh) 2018-07-26 2021-05-14 北京百度网讯科技有限公司 用于分布式存储系统的服务托管的方法和装置
CN109491776B (zh) * 2018-11-06 2022-05-31 北京百度网讯科技有限公司 任务编排方法和系统
CN110321207A (zh) * 2019-06-25 2019-10-11 深圳前海微众银行股份有限公司 任务调度方法、装置、设备及计算机可读存储介质
CN110784347A (zh) * 2019-10-18 2020-02-11 北京浪潮数据技术有限公司 一种容器集群的节点管理方法、系统、设备及存储介质
CN111459678A (zh) * 2020-04-02 2020-07-28 上海极链网络科技有限公司 一种资源调度方法、装置、存储介质及电子设备
CN114827177B (zh) * 2022-04-22 2024-03-08 杭州萤石软件有限公司 一种分布式文件系统的部署方法、装置及电子设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102685148A (zh) * 2012-05-31 2012-09-19 清华大学 一种云存储环境下的安全网盘系统的实现方法
CN105045656A (zh) * 2015-06-30 2015-11-11 深圳清华大学研究院 基于虚拟容器的大数据存储与管理方法
CN105187500A (zh) * 2015-08-07 2015-12-23 浪潮(北京)电子信息产业有限公司 一种基于容器的分布式存储系统部署方法
CN105474177A (zh) * 2013-05-31 2016-04-06 日本电气株式会社 分布式处理系统、分布式处理设备、分布式处理方法和分布式处理程序
US9507579B2 (en) * 2013-04-01 2016-11-29 Oc Acquisition Llc Interface for translating software commands and hardware commands for a distributed computing system
CN106789250A (zh) * 2016-12-22 2017-05-31 焦点科技股份有限公司 一种基于容器的服务多版本共存实现方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102685148A (zh) * 2012-05-31 2012-09-19 清华大学 一种云存储环境下的安全网盘系统的实现方法
US9507579B2 (en) * 2013-04-01 2016-11-29 Oc Acquisition Llc Interface for translating software commands and hardware commands for a distributed computing system
CN105474177A (zh) * 2013-05-31 2016-04-06 日本电气株式会社 分布式处理系统、分布式处理设备、分布式处理方法和分布式处理程序
CN105045656A (zh) * 2015-06-30 2015-11-11 深圳清华大学研究院 基于虚拟容器的大数据存储与管理方法
CN105187500A (zh) * 2015-08-07 2015-12-23 浪潮(北京)电子信息产业有限公司 一种基于容器的分布式存储系统部署方法
CN106789250A (zh) * 2016-12-22 2017-05-31 焦点科技股份有限公司 一种基于容器的服务多版本共存实现方法

Also Published As

Publication number Publication date
CN108170820A (zh) 2018-06-15

Similar Documents

Publication Publication Date Title
CN108170820B (zh) 一种容器处理方法、控制服务器及分布式集群
CN111666080A (zh) 微服务集群部署方法、装置、计算机设备及存储介质
CN101571809B (zh) 一种插件注册的实现方法及其装置
CN109558162B (zh) 应用程序发布方法、装置、计算机设备及存储介质
CN111176697A (zh) 服务实例部署方法、数据处理方法及集群联邦
CN110602165B (zh) 政务数据同步方法、装置、系统、计算机设备和存储介质
CN111324571A (zh) 一种容器集群管理方法、装置及系统
CN111897558A (zh) 容器集群管理系统Kubernetes升级方法和装置
WO2023155819A1 (zh) 一种应用部署方法和系统
CN113315754A (zh) 容器出访防火墙智能联动方法及装置、设备、介质
CN111884834A (zh) 基于zookeeper的分布式系统升级方法、系统和计算机设备
CN113741923A (zh) 一种应用更新方法、装置、设备及介质
CN112860787A (zh) 分布式主从系统中主节点的切换方法、主节点设备和存储介质
CN113535262A (zh) 一种代理节点的启动控制方法、装置、设备及存储介质
CN111506388A (zh) 容器性能探测方法、容器管理平台及计算机存储介质
CN111147226B (zh) 数据存储方法、装置及存储介质
CN111459611A (zh) 针对Kubernetes系统的镜像拉取方法及装置
CN114443294B (zh) 大数据服务组件部署方法、系统、终端及存储介质
US11321159B2 (en) Interchangeable plugins for detecting conflicts between server-side data and client-side data
CN114116123A (zh) 应用的扩容方法及装置
CN111338752B (zh) 容器调整方法及装置
CN110390064A (zh) 文件更新方法、装置和系统,存储介质及电子装置
CN108108180B (zh) 一种运行时动态更新应用的方法和装置
CN112035174B (zh) 运行web服务的方法、装置及计算机存储介质
CN114675893B (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