镜像库管理系统技术方案

技术编号:24352606 阅读:19 留言:0更新日期:2020-06-03 01:54
本发明专利技术公开了一种镜像库管理系统,包括:共享存储节点,用于存放所有的镜像,共享存储节点包括第一共享存储节点和第二共享存储节点;多个计算节点,均连接于第一共享存储节点,多个计算节点的本地镜像库都挂载于第一共享存储节点中;负载均衡节点,连接于每个计算节点;镜像服务器,连接于负载均衡节点和第二共享存储节点;其中,多个计算节点中的任意一个计算节点通过负载均衡节点获取镜像服务器上的镜像,并将镜像保存到任意一个计算节点的本地镜像库中。通过上述技术方案,能够对镜像的存储技术进行优化,从而提高集群的存储空间利用率。

Image library management system

【技术实现步骤摘要】
镜像库管理系统
本专利技术涉及计算机集群
,具体来说,涉及一种镜像库管理系统。
技术介绍
服务器上都需要基于操作系统运行某些服务或者软件,而不同的操作系统部署方式和命令又千差万别,现在比较成型的技术就是通过Docker容器(Container)技术来简化软件的部署和发布。容器技术的出现不仅消除了线上线下的环境差异,方便了应用软件的开发、测试、发布的环境部署。开发和测试人员可以直接通过镜像对应用软件进行部署,现在市面上除了DockerHub还衍生出了阿里镜像、网易镜像、时速云等镜像中心,他们大多都是对镜像的下载进行了一个加速的效果,但是对镜像仓库中的的管理方式大多被忽略了,如何根据不同用户级别对镜像库的权限进行分配、如何对镜像库中的镜像存储进行合理分配和管理是现在市场的一个空白。现有的镜像管理方法中,存在以下问题:现有的技术主要是类似于github这种管理方式,只区分了官方镜像和用户自定义的镜像,但是对他们的区分没有具体的差异描述,当某个用户在选用同类型镜像中的某个镜像时,镜像库中存在着有各种各样的镜像,用户无法选择哪个是适合自己场景的;现有的镜像库的用户管理不支持NIS用户和系统用户的管理,只是通过数据库方式对用户进行管理,如果管理员在服务器后台添加用户后则无法自动识别到新添加的用户,该用户也无法获得权限和使用镜像。
技术实现思路
针对相关技术中的上述问题,本专利技术提出一种镜像库管理系统,能够解决现有技术中的上述问题。本专利技术的技术方案是这样实现的:>根据本专利技术的一个方面,提供了一种镜像库管理系统,包括:共享存储节点,用于存放所有的镜像,共享存储节点包括第一共享存储节点和第二共享存储节点;多个计算节点,均连接于第一共享存储节点,多个计算节点的本地镜像库都挂载于第一共享存储节点中;负载均衡节点,连接于每个计算节点;镜像服务器,连接于负载均衡节点和第二共享存储节点;其中,多个计算节点中的任意一个计算节点通过负载均衡节点获取镜像服务器上的镜像,并将镜像保存到任意一个计算节点的本地镜像库中。根据本专利技术的实施例,管理员节点具有对镜像进行查看和删除的权限;普通用户节点对共享库中的镜像具有订阅镜像的权限,对普通用户节点自身的私有镜像具有分享、订阅、修改和删除的权限。根据本专利技术的实施例,用户节点通过Dockerfile文件进行镜像比较来选择应用场景的镜像。根据本专利技术的实施例,用户节点在运行镜像时执行固化创建操作,在再次需要使用镜像时直接从固化时进行操作。根据本专利技术的实施例,镜像的创建者对镜像进行彻底删除的操作。根据本专利技术的实施例,当用户节点要分享镜像时,执行分享操作以使得所有用户节点查看和订阅所分享的镜像。根据本专利技术的实施例,当管理员节点在进行添加或删除操作时,触发自动同步操作和镜像垃圾回收操作,以对镜像库中新添加的镜像或无用的镜像进行相应的同步处理和回收处理。本专利技术的上述技术方案,根据用户的License级别和用户角色对镜像库进行权限管理;对镜像库的管理方式进行了设计,对不同权限的用户和角色进行了明确的分配。该镜像库支持镜像的查询、添加、删除、订阅镜像等操作,当用户想保存自己修改后的镜像内容时可以通过固化镜像操作,当用户想共享镜像时也可以在用户间进行分享;本专利技术对镜像的存储技术进行了优化,从而提高了集群的存储空间利用率。从而,在不影响镜像内容的前提下,通过把镜像库和节点挂载到共享存储中,既对镜像库进行了灾备和负载均衡,又提高了镜像的下载速度和硬盘利用率。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是根据本专利技术实施例的镜像库管理系统的结构示意图;图2是根据本专利技术实施例的镜像库管理系统的不同用户权限查询方案的示意图;图3是根据本专利技术实施例的镜像库管理系统的registry操作的示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本专利技术保护的范围。本文提出了一种对Docker镜像库进行管理的系统,可以基于Registry2.0版本的镜像管理技术进行设计。以下以深度学习应用场景为例进行具体的架构设计和具体描述。Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,提供一个额外的软件抽象层,以及操作系统层虚拟化的自动管理机制。如图1所示,本专利技术的镜像库管理系统的总体架构设计主要包括:首先将镜像服务器通过共享存储存放所有的镜像,镜像服务器可以通过主备、主从策略对镜像服务器进行灾备处理;当计算节点需要下载镜像时,所有计算节点中的任一节点通过负载均衡获取某个镜像服务器上的镜像,负载均衡可以使镜像服务器集群达到一个均衡的状态,降低镜像服务器集群的IO和网络影响;通过在内网中进行镜像拉取操作将镜像保存到计算节点的本地镜像库中,为了防止其计算节点进行重复的镜像拉取操作,可以将所有的计算节点的本地镜像库都挂载于同一个共享存储中。图2是根据本专利技术实施例的镜像库管理系统的不同用户权限查询方案的示意图。如图2所示,管理员可以通过nis(用于控制几个系统管理数据库的网络用品)和数据库查询出集群中的所有用户,对他们的所有镜像有统一的查看、删除权限;存在于nis或数据库(mysql)中的普通用户可以查看其他人共享到集群共享库中的镜像和自己定制的一些私有镜像,对集群共享库中的镜像有订阅镜像的权限,对自己的私有镜像可以有分享、订阅、修改、删除等任何操作权限;所有用户可以对某一类型的镜像进行查询,当用户想知道具体的差异时可以通过DockerFile文件进行镜像比较,选择适宜自己应用场景的镜像,这样既有利于硬盘的开销又极大了提高了容器的运行性能。图3是根据本专利技术实施例的镜像库管理系统的registry操作的示意图。registry是一个无状态,高度可扩展的服务器端应用程序,可存储并允许您分发Docker镜像(Images)。如图3所示,例如通过容器主机(DockerHOST)的容器虚拟光驱(DockerDeamon),用户(Client)可以通过集群共享库中的镜像进行订阅(subscribe)操作,订阅之后就可以在运行(commit)该镜像,用户可通过DockerFile文件对镜像中的内容进行深入的了解,从而选择适合自己场景的镜像;在运行起来该镜像时可以进行固化创建操作,相当于对自己的操作进行了备份,下次再想用时直接从上次固化时进行操作;当用户想把自己的镜像进行分享时可进行分享(share本文档来自技高网...

【技术保护点】
1.一种镜像库管理系统,其特征在于,包括:/n共享存储节点,用于存放所有的镜像,所述共享存储节点包括第一共享存储节点和第二共享存储节点;/n多个计算节点,均连接于第一共享存储节点,所述多个计算节点的本地镜像库都挂载于所述第一共享存储节点中;/n负载均衡节点,连接于每个所述计算节点;/n镜像服务器,连接于所述负载均衡节点和第二共享存储节点;/n其中,所述多个计算节点中的任意一个计算节点通过所述负载均衡节点获取所述镜像服务器上的镜像,并将所述镜像保存到所述任意一个计算节点的所述本地镜像库中。/n

【技术特征摘要】
1.一种镜像库管理系统,其特征在于,包括:
共享存储节点,用于存放所有的镜像,所述共享存储节点包括第一共享存储节点和第二共享存储节点;
多个计算节点,均连接于第一共享存储节点,所述多个计算节点的本地镜像库都挂载于所述第一共享存储节点中;
负载均衡节点,连接于每个所述计算节点;
镜像服务器,连接于所述负载均衡节点和第二共享存储节点;
其中,所述多个计算节点中的任意一个计算节点通过所述负载均衡节点获取所述镜像服务器上的镜像,并将所述镜像保存到所述任意一个计算节点的所述本地镜像库中。


2.根据权利要求1所述的镜像库管理系统,其特征在于,其中,管理员节点具有对所述镜像进行查看和删除的权限;
普通用户节点对共享库中的镜像具有订阅镜像的权限,对所述普通用户节点自身的私有镜像具有分享、订阅、修改和删除的权限。

...

【专利技术属性】
技术研发人员:贾冬冬
申请(专利权)人:中科曙光国际信息产业有限公司
类型:发明
国别省市:山东;37

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

1