Harbor多节点同步问题

Harbor 多节点同步问题

Harbor管理远程仓库的镜像依托于已经建立连接的仓库管理。因此在创建同步方案的时候,应先对目标仓库创建连接。

Harbor镜像仓的连接

在Harbor中支持对其他镜像仓的访问。

仓库的连接状态更新存在延时,只有当涉及到该仓库的同步任务失败后,才会更新仓库的连接状态。

Harbor支持列表:

  • docker-hub
  • huawei-SWR
  • azure-acr
  • helm-hub
  • docker-registry
  • google-gcr
  • aws-ecr
  • ali-acr
  • harbor

Harbor 添加对其他镜像仓的管理

  1. 打开Harbor的界面->左侧导航栏 “系统管理” -> 仓库管理 点击新建目标
  2. 依次填写数据
    参数名 是否必填 说明 其他
    提供者 目标镜像类型
    目标名 在仓库管理中的标识
    描 述 对此链接的描述
    目标URL 目标仓库的地址 支持全限定名和ip地址
    访问ID 访问远程仓库的ID
    访问密码 访问远程仓库的密码
    验证远程证书
  3. 测试连接是否正常,正常后添加即可

创建同步规则

创建同步规则的前提是已经存在连接的仓库。

  1. 打开Harbor的界面->左侧导航栏 “系统管理”->同步管理 点击新建规则即可。
  2. 依次填写数据
    不同的同步模式会导致不同的选项!

同步类别

同步规则分为两大类:Push-Base/Pull-Base
Push-Base需要登陆远程,在管理仓库的时候需要填写ID和密码
Pull-Base则不需要远程登陆,当然,前提是该项目为公开项目

目前的测试中,私有项目无法被远程仓库获取
  1. Push-Base
    将本地镜像推送到远程镜像仓库
    1. 支持的触发条件
      • 定时
      • 手动
      • 事件驱动
        1. 当指定仓库更新后,会触发事件驱动
        2. 事件驱动只能推送本次更新,而不是以前未推送版本
  2. Pull-Base
    从远程镜像仓库拉取到本例仓库
    1. 支持的触发条件
      • 定时
      • 手动

同步性能

  1. 取决网络性能
  2. 相同镜像在不同的项目中,需要重新获取
    /test1/test1:v1,/test2/test1:v1即使镜像完全相同,也会导致重新获取。但是由本地向远程提交的时候,相同的部分会过滤掉。
  3. 同步任务之间的关系是并发的
    两个同步任务完全并发拉取,但是对于正在拉取的镜像,其他任务不会再次获取。

你可能感兴趣的:(CICD套装)