用于多集群容器部署的系统和方法技术方案

技术编号:20451721 阅读:23 留言:0更新日期:2019-02-27 04:35
本发明专利技术公开了一种用于多集群容器部署的系统和方法。该系统包括:容器引擎,用于向本地镜像仓库发送镜像下载地址获取请求,该请求包含镜像标识;通过镜像下载URL从本地镜像仓库下载容器镜像;本地镜像仓库,用于查询是否已经存储或缓存与镜像标识对应的容器镜像;如果存在,则直接向容器引擎返回镜像下载URL;否则从镜像管理中心查询获得指向远程镜像仓库的镜像下载URL,从远程镜像仓库中将缺失的容器镜像下载到本地镜像缓存中,生成指向本地镜像缓存的镜像下载URL,将该镜像下载URL上报给镜像管理中心并返回给容器引擎;镜像管理中心,用于向本地镜像仓库返回指向远程镜像仓库的镜像下载URL。本发明专利技术提升了容器应用跨集群部署效率。

【技术实现步骤摘要】
用于多集群容器部署的系统和方法
本专利技术涉及云计算领域,特别涉及一种用于多集群容器部署的系统和方法。
技术介绍
容器应用通常采用容器镜像+部署脚本的形式部署,首先将容器镜像上传到镜像仓库,然后通过容器集群编排器执行部署脚本,调度容器引擎下载容器镜像,运行容器实例。大型容器应用在很多业务场景下往往需要在多个容器集群中部署,例如业务迁移、分区就近服务、容灾备份等,现有容器应用跨集群部署方法均存在一定不足。现有技术中存在两种镜像仓库系统,分别是集中式镜像仓库系统和独立式镜像仓库系统。图1是示意性地示出现有技术中的集中式镜像仓库系统的结构图。如图1所示,在该集中式镜像仓库系统中,多个集群共用同一个镜像仓库,集中式镜像仓库需要应对多个集群巨大的镜像存储和下载压力,而且容器集群与镜像仓库可能部署在不同地区,存在明显网络时延,影响镜像下载速度。图2是示意性地示出现有技术中的独立式镜像仓库系统的结构图。如图2所示,在该独立式镜像仓库系统中,为每个集群设立一套镜像仓库,该方案需为每个集群单独上传镜像,而且要为每个集群修改部署脚本,将所有的镜像地址指向该集群的镜像仓库,多套容器镜像和部署脚本副本的存在本文档来自技高网...

【技术保护点】
1.一种用于多集群容器部署的系统,其特征在于,包括:容器引擎,用于向本地镜像仓库发送第一镜像下载地址获取请求,所述第一镜像下载地址获取请求包含所需要获得的容器镜像的镜像标识;并用于通过从所述本地镜像仓库返回的镜像下载统一资源定位符URL从所述本地镜像仓库下载容器镜像;本地镜像仓库,用于在接收到所述第一镜像下载地址获取请求后,查询是否已经存储或缓存了与所述镜像标识对应的容器镜像;如果存在,则直接向所述容器引擎返回指向本地镜像仓库的镜像存储位置的镜像下载URL;否则,向所述镜像管理中心发送第二镜像下载地址获取请求,所述第二镜像下载地址获取请求包含所述镜像标识;并在从所述镜像管理中心接收到指向远程镜...

【技术特征摘要】
1.一种用于多集群容器部署的系统,其特征在于,包括:容器引擎,用于向本地镜像仓库发送第一镜像下载地址获取请求,所述第一镜像下载地址获取请求包含所需要获得的容器镜像的镜像标识;并用于通过从所述本地镜像仓库返回的镜像下载统一资源定位符URL从所述本地镜像仓库下载容器镜像;本地镜像仓库,用于在接收到所述第一镜像下载地址获取请求后,查询是否已经存储或缓存了与所述镜像标识对应的容器镜像;如果存在,则直接向所述容器引擎返回指向本地镜像仓库的镜像存储位置的镜像下载URL;否则,向所述镜像管理中心发送第二镜像下载地址获取请求,所述第二镜像下载地址获取请求包含所述镜像标识;并在从所述镜像管理中心接收到指向远程镜像仓库的镜像下载URL后,根据所述指向远程镜像仓库的镜像下载URL从远程镜像仓库中将缺失的所述容器镜像下载到本地镜像缓存中,生成指向所述本地镜像缓存的镜像下载URL,将所述指向本地镜像缓存的镜像下载URL上报给所述镜像管理中心并返回给所述容器引擎;以及镜像管理中心,用于在接收到所述第二镜像下载地址获取请求后,向所述本地镜像仓库返回指向远程镜像仓库的镜像下载URL。2.根据权利要求1所述的系统,其特征在于,所述镜像管理中心还用于在接收到所述第二镜像下载地址获取请求后,获取对应于所述镜像标识的容器镜像的层次依赖关系,并将所述层次依赖关系返回给所述本地镜像仓库;所述本地镜像仓库还用于在获得所述层次依赖关系后,将所述层次依赖关系中不存在的镜像标识加入待下载列表以下载对应的容器镜像,并将所述层次依赖关系返回给所述容器引擎;其中,所述待下载列表包含本地镜像仓库不存在的镜像标识和所依赖的父镜像标识及祖先镜像标识;所述容器引擎还用于在获得所述层次依赖关系后,查询并缓存与所述层次依赖关系中不存在的镜像标识对应的容器镜像。3.根据权利要求1所述的系统,其特征在于,在与所述镜像标识对应的容器镜像存储或缓存在多个远程镜像仓库的情况下,所述镜像管理中心采用轮转或随机的方式向所述本地镜像仓库返回与所述多个远程镜像仓库中的一个远程镜像仓库对应的镜像下载URL;或者,所述镜像管理中心向所述本地镜像仓库返回与所述多个远程镜像仓库中负载最小的远程镜像仓库对应的镜像下载URL。4.根据权利要求1所述的系统,其特征在于,所述指向远程镜像仓库的镜像下载URL包含:远程镜像仓库地址和容器镜像信息;其中,所述容器镜像信息包括:镜像标识和镜像所属仓库信息。5.根据权利要求2所述的系统,其特征在于,所述镜像管理中心还用于在将所述层次依赖关系返回给所述本地镜像仓库的过程中,还将与所述指向远程镜像仓库的镜像下载URL对应的容器镜像的任一层次的镜像文件的哈希校验码返回给所述本地镜像仓库;所述本地镜像仓库还用于从所述镜像管理中心接收并存储所述镜像文件的哈希校验码。6.根据权利要求5所述的系统,其特征在于,所述镜像管理中心还用于在容器镜像的任一层次的镜像文件内容发生变化的情况下,向缓存了该容器镜像的本地镜像仓库推送镜像文件变更通知;其中,所述镜像文件变更通知包含该容器镜像的镜像标识和变更后的镜像文件的哈希校验码;所述本地镜像仓库还用于在接收到所述镜像文件变更通知后,根据该容器镜像的镜像标识对所述变更后的镜像文件的哈希校验码进行验证,如果该哈希校验码与已经缓存的该容器镜像的镜像文件的原哈希校验码不一致,则根据该容器镜像的镜像标识从所述镜像管理中心查询获得对应的镜像下载URL,并根据该镜像下载URL从远程镜像仓库下载新的容器镜像。7.根据权利要求1所述的系统,其特征在于,所述本地镜像仓库还用于在所缓存的容器镜像失效后,将该失效的容器镜像自动删除,并调用所述镜像管理中心的镜像下载URL删除接口删除所述本地镜像仓库的该失效的容器镜像的镜像下载URL。8.根据权利要求1所述的系统,其特征在于,所述本地镜像仓库还用于在接收到所述镜像管理中心下发的镜像删除通知后,实时删除与所述镜像删除通知所包含的镜像标识对应的容器镜像;其中,远程镜像仓库作为存储容器镜像的原始镜像仓库,在所述原始镜像仓库删除该容器镜像后,调用镜像管理中心的镜像下载URL删除接口删除该被删除的容器镜像的所有镜像下载URL,并向所述镜像管理中心发送镜像删除通知,所述镜像删除通知包含所述被删除的容器镜像的镜像标识;所述镜像管理中心在接收到所述镜像删除通知后,向已经缓存了所述被删除的容器镜像的镜像仓库下发所述镜像删除通知。9.根据权利要求1所述的系统,其特征在于,所述本地镜像仓库还用于作为存储容器镜像的原始镜像仓库删除所存储的容器镜像,调用所述镜像管理中心的镜像下载URL删除接口删除该被删除的容器镜像的所有镜像下载URL,并向所述镜像管理中心发送镜像删除通知,所述镜像删除通知包含所述被删除的容器镜像的镜像标识;所述镜像管理中心还用于在接收到所述镜像删除通知后,向已经缓存了所述被删除的容器镜像的镜像仓库下发所述镜像删除通知。10.根据权利要求1所述的系统,其特征在于,所述镜像管理中心还用于将镜像删除指令下发给所述本地镜像仓库,其中,所述本地镜像仓库作为存储容器镜像的原始镜像仓库,所述镜像删除指令包含需要删除的容器镜像的镜像标识;并在接收到从所述本地镜像仓库返回的镜像删除通知后,向已经缓存了被删除的容器镜像的镜像仓库下发所述镜像删除通知;所述本地镜像仓库还用于在接收到所述镜像删除指令后,删除对应的容器镜像,调用所述镜像管理中心的镜像下载URL删除接口删除该被删除的容器镜像的所有镜像下载URL,并向所述镜像管理中心发送镜像删除通知,所述镜像删除通知包含所述被删除的容器镜像的镜像标识。11.根据权利要求1所述的系统,其特征在于,所述镜像标识包括:容器镜像的镜像名称和镜像版本。12.根据权利要求1所述的系统,其特征在于,还包括:部署工具,用于将容器镜像上传到所述本地镜像仓库,以及向选定的集群列表的容器集群编排器下发部署脚本;其中,所述本地镜像仓库还用于向所述镜像管理中心上报被上传的所述容器镜像的容器镜像信息;以及容器集群编排器,用于解析和执行所述部署脚本,从所述部署脚本获得镜像标识,并根据应用需要运行的容器实例数目调度相应数目的容器引擎,向需要被调度的容器引擎发送调度消息,其中所述调度消息包含所述需要运行的容器镜像的镜像标识;其中,所述容器引擎在接收到所述调度消息后,向本地镜像仓库发送所述第一镜像下载地址获取请求。13.一种用于多集群容器部署的方法,其特征在于,包括:容器引擎向本地镜像仓库发送第一镜像下载地址获取请求,所述第一镜像下载地址获取请求包含所需要获得的容器镜像的镜像标识;所述本地镜像仓库在接收到所述第一镜像下载地址获取请求后,查询是否已经存...

【专利技术属性】
技术研发人员:何震苇杨新章陆钢严丽云张凌
申请(专利权)人:中国电信股份有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1