DockOne微信分享(七十七):用Harbor实现容器镜像仓库的管理和运维

  • 时间:
  • 浏览:0

本文作者:张海宁

原文标题:DockOne微信分享(七十七):用Harbor实现容器镜像仓库的管理和运维

第3中方案是利用已有的HA平台,如vSphere HA,配合分布式存储VSAN,可不前要实现Harbor的HA,具体架构见下图:

类式,测试人员通常只前要镜像的读权限(pull),开发人员前要读写权限(push/pull),项目经理除了拥有开发人员的权限之外,还可不前要增加和删除项目成员,设定.我歌词 歌词 的角色。在Harbor Registry中,每个项目可有有一种角色:项目管理员(project admin)、开发者(developer)和客人(guest)。这些项目,如放进去Library中的公共镜像, 可不前要允许匿名访问,即用户不同Docker Login也可不前要访问,就是 可不前要方便使用。在整个系统中,还设有系统管理员,具有维护镜像同步策略、用户增删等权限。前要指出的是,在不同的环境中,某个成员的角色可不前要不同。类式,在开发环境的Registry中,运维人员一般不前要权限(或前要只读权限);而在生产环境中的Registry,运维人员就前要有读写权限。下图是Harbor的权限管理界面:

容器应用的使用如此 普遍,容器最大优点就是 开发运维一体化,通过容器镜像打包应用,使得开发、测试和发布都具有相同的运行环境,带来极大的便利。如此 镜像在实际运维中居于如可的地位呢?.我歌词 歌词 先看看下面这张经典的Docker容器的生命周期图:

.我歌词 歌词 以开源Harbor为例子,总结了Registry的使用场景和要点,希望对.我歌词 歌词 有帮助。欢迎.我歌词 歌词 使用Harbor和反馈意见,也可不前要加入Harbor开源项目群讨论。 Harbor的GitHub地址:https://github.com/vmware/harbor

Q&A

Q:Master-Slave的镜像架构中,机会Slave Registy中的镜像被删除了,会我不要 再次自动从Master Reg上方自动同步?

原文发布时间为:2016-08-21

从图中可不前要想看 ,容器镜像的关联箭头最多,不是就是,镜像技术就是 容器的核心所在。概括地说,容器中有 一静一动两次责:静态存放的镜像(images)和动态运行的containers。相应地,容器的开发运维主要涉及镜像管理和运行时(Runtime)管理两次责。本文主要和.我歌词 歌词 分享的是容器镜像管理的次责。

开发和生产环境中镜像仓库的权限控制

在企业中,通常有不同的开发团队来负责不同的应用项目,和源代码分项目管理一样,镜像也前要按照项目来存放和管理。机会团队中有 不同的成员,如项目经理、产品经理、开发、测试和运维等人员,每人使用镜像的需求不同,已经 可不前要根据角色分配相应的权限。

有一种比较标准的方案,就是 多个的Registry实例共享同三个小后端存储,任何三个小实例持久化到存储的镜像,都可被这些实例中读取。通过前置LB进来的请求,可不前要分流到不同的实例中去出理 ,实现了负载均衡,也出理 了单点故障。应该指出,实际中前要考虑的疑问远比上述模型错综复杂。类式,共享存储的选着,用户Session在不同的实例上共享等等。用户可根据买车人业务要求设计出不同的方案。Harbor机会推出基于Swift分布式存储,以及共享Session的方案(采用Redis)来满足用户的需求。机会如此 共享存储,另有一种方案就是 在三个小节点间采用双主一键复制策略,互相一键复制镜像。即使有三个小实例失效,就是 实例仍然可不前要提供服务,从而在一定程度上可不前要满足HA的需求。

以上内容根据2016年8月18日晚微信群分享内容分类整理。分享人张海宁(Henry Zhang),VMware中国研发中心云原生应用首席架构师,Harbor开源企业级容器Registry项目负责人,Cloud Foundry中国社区最早的技术布道师之一。在VMware中国研发中心先后负责开源平台Cloud Foundry、大数据虚拟化、软件定义存储等领域的技术布道和出理 方案推广。目前着重关注云原生应用的研发工作,内容包括Container、PaaS、IaaS等方面。DockOne每周都不组织定向的技术分享,欢迎感兴趣的同学加微信:liyingjiesz,进群参与,您有想听句子题机会想分享句子题都可不前要给.我歌词 歌词 留言。

内容主要包括:

  1. 开发和生产环境中镜像仓库的权限控制;
  2. 镜像远程同步(一键复制)的原理;
  3. 大规模应用镜像发布最好的办法 ;
  4. 镜像删除和空间回收;
  5. Registry高可用性设计。
首先简单介绍一下Harbor项目。Harbor是由VMware中国研发团队负责开发的开源企业级Registry,可帮助用户太快了 搭建企业级的Registry服务。该项目发布5多个月以来,深受用户喜爱,在GitHub获得了近50000个点赞星星和500多个Forks。有兴趣的.我歌词 歌词 可不前要使用: https://github.com/vmware/harbor 

在同步过程中,机会源镜像已删除,Harbor会自动同步删除远端的镜像。在镜像同步一键复制的过程中,Harbor会监控整个一键复制过程,遇到网络等错误,会自动重试。这是同步一键复制的监控画面:

本文来自云栖社区战略战略合作伙伴Dockerone.io,了解相关信息可不前要关注Dockerone.io。

若果往一台Registry上发布,镜像就像“仙女散花”般地同步到多个Registry中,高效可靠。机会是地域分布较广的集群,还可不前要采用层次型发布最好的办法 ,如从集团总部同步到省公司,从省公司再同步到市公司:

节点出现故障的已经 ,有vSphere自动切换到好的节点上,镜像数据不丢失。

开发环境的Registry:主要由开发人员使用,镜像变化频繁。当开发完成后,通过CI系统生成稳定镜像,同步到测试Registry;测试环境的Registry:主要由测试人员使用,镜像保持不变。当测试通已经 ,同步到准生产环境的Registry;准生产环境的Registry:主要由测试和运维人员使用,镜像保持不变。当准生产环境试运行后,最后再同步生产环境的Registry;生产环境的Registry:发布镜像到生产环境运行。从开发到生产的整个过程中,实现容器镜像的Build-Ship-Run过程。Harbor可不前要提供Registry之间的镜像自动同步和一键复制功能,错综复杂了管理。

大规模应用镜像发布最好的办法

在实际生产运维的中,往往前要把镜像发布到几十或上百台集群节点上。这时,单个Registry机会无法满足一定量节点的下载需求,已经 要配置多个Registry实例做负载均衡。手工维护多个Registry实例上的镜像,将是十分繁琐的事情。Harbor可不前要支持一主多从的镜像发布模式,可不前要出理 大规模镜像发布的疑问。