You need to enable JavaScript to run this app.
导航

同地域或跨地域同步镜像

最近更新时间2024.03.06 10:23:27

首次发布时间2022.05.31 10:10:14

镜像仓库 CR 对标准版实例提供实例同步功能,支持自定义创建同步规则,将指定源实例内的镜像及 Helm Chart 同步至另一个目标实例内的指定位置。

背景信息

在镜像仓库业务中,同一份镜像或 Helm Chart 等 OCI 制品可以被多处使用,若企业业务分布在不同地域,则需要在每个地域部署相同的镜像仓库。针对此类情况,镜像仓库提供同地域或跨地域之间的实例同步功能,部署完一个地域的镜像仓库时候后,可一键部署该镜像仓库实例到其他地域,帮助您实现同业务不同地域交付的需求。

使用限制

  • 实例同步功能不支持同步命名空间中所关联的项目。如需关联请手动添加项目,操作方法参见 修改命名空间
  • 不支持同步至本实例的其他命名空间。
  • 每个账号最多支持同时启用 5 个同步规则。
  • 规则删除后无法查看历史日志。
  • 每个规则默认保留最近 1000 条同步日志。
  • 实例同步规则被触发后,不支持终止本次同步任务。因此手动触发或创建定时/事件驱动触发的实例同步规则前,请确认参数配置是否准确。

前提条件

  • 已购买了其他标准版实例,并创建了命名空间。详细操作,请参见 创建标准版实例创建命名空间
  • 请确保源实例和目标实例均处于 运行中 状态。

操作步骤

步骤一:配置同步规则

  1. 登录 镜像仓库控制台

  2. 在左侧导航栏选择 实例同步,单击 创建实例同步规则

  3. 创建实例同步规则 页面,根据要求填写参数信息。
    alt

    参数说明
    实例同步类型

    同步类型

    镜像仓库支持如下几种同步类型:

    • 体验版迁移:将体验版实例中的镜像,迁移到其他规格实例。详细操作,请参见 体验版实例同步至标准版实例
    • 实例间同步:将镜像仓库中的标准版实例,同步到如下两个目标实例:
      • 本账号下同地域或跨地域的其他标准版实例:本文讲解的内容,因此此处选择 实例间同步
      • 外部自定义的镜像仓库:详细操作和说明,请参见 向自定义仓库同步实例
    • 外部迁移:将外部仓库迁移到火山引擎镜像仓库标准版实例中。详细操作,请参见 外部仓库同步至镜像仓库
    基本信息
    名称自定义同步规则名称。同一个账号下名称必须唯一。
    描述填写对该规则的描述信息。可以为空,字数限制 200 字符以内。
    源实例配置
    实例选择需要同步的源标准版实例,将该标准版实例中的镜像和 Helm Chart 同步到目标标准版实例。
    命名空间选择源实例下需要同步的命名空间的名称。支持多选、全选。

    仓库

    需要同步的 OCI 制品仓库名称。

    • 全部:同步指定命名空间下的全部 OCI 制品仓库。
    • 正则匹配:通过输入正则规则,匹配需要同步的 OCI 制品仓库。配置详情,请参见本文下方 正则匹配示例

    版本 Tag

    需要同步的 OCI 制品版本。

    • 全部:选择指定仓库下的全部 OCI 制品版本。
    • 正则匹配:通过输入正则规则,匹配需要迁移的 OCI 制品版本。配置详情,请参见本文下方 正则匹配示例
    目标实例配置
    同步类型同步实例的类型,当前支持如下两种:
    • 主账号内:同一个主账号内不同实例之间同步。
    • 自定义:向自定义的外部仓库同步实例。

    本文介绍同账号跨地域同步实例,因此此处选择 主账号内

    地域选择目标标准版实例所在的地域。
    实例名选择需要同步的目标实例,将指定标准版实例中的镜像和 Helm Chart 同步到该标准版实例。

    命名空间

    选择目标实例下的命名空间。

    说明

    若不填写,则默认同步至该目标实例下与源实例命名空间相同名称的命名空间。若未找到相同名称的命名空间,则创建同名的命名空间。

    同步规则
    镜像覆盖勾选后启用。启用后表示若目标标准版实例中存在与源标准版实例镜像同名的镜像,则源标准版实例中的镜像会覆盖目标标准版实例中的已有同名镜像。

    规则状态

    勾选后启用该规则,并可选择设置以下触发条件。

    • 事件驱动触发:设置后有符合规则的事件产生时,自动触发同步。即如果您向源实例符合同步规则的 OCI 制品仓库推送了符合规则的制品,则会自动触发一次同步,且只同步您新推送的制品。

      您也可以通过配置 立即触发,在创建实例同步规则成功后,立即触发规则匹配,进行一次同步操作。

    • 定时触发:设置后固定间隔时间触发一次同步,首次同步时间视设置决定。
      • 首次触发时间:注意最早只能设置到当前时间。
      • 触发频率:设置间隔时间。默认每 24 小时触发一次。可选范围为 1~720 小时。
    • 手动触发:若选择手动触发,该规则不会被自动触发,需要您手动执行同步操作。

步骤二:执行同步规则

支持如下三种触发方式:

  • 若您在配置同步规则时选择 事件驱动触发,则有符合规则的事件产生时,系统自动触发同步;若选择 事件驱动触发 的同时,配置 立即触发,则在创建实例同步规则成功后,立即触发规则匹配。

    说明

    事件驱动触发的同步规则,也可以手动触发。

  • 若您在配置同步规则时选择 定时触发,则系统会定时自动触发一次同步。

    说明

    定时触发的同步规则,也可以手动触发。

  • 若您选择 手动触发,请参考以下步骤:
    1. 镜像仓库控制台的左侧导航栏选择 实例同步
    2. 实例同步 页面,找到需要触发的规则,单击对应 操作 列的 触发
      alt
    3. 在系统弹出的提示框中确认规则信息,单击 确定,触发同步操作。

步骤三:查看同步日志

  1. 镜像仓库控制台 左侧导航栏选择 实例同步

  2. 实例同步 页面,找到目标规则,单击规则名称。

  3. 在规则详情页面,单击 同步日志 页签,查看对应规则的所有同步日志。

    参数说明
    任务 ID实例内唯一的同步任务 ID。

    同步状态

    任务完成状态,同步中、成功、失败。

    说明

    • 若同步状态为 成功,说明同步任务正常触发,且至少成功同步一个镜像版本。
    • 若同步状态为 失败,表明任务触发失败。可能原因如下:
      • 源标准版实例的状态不是 运行中
      • 目标标准版实例的状态不是 运行中
    任务耗时完成全部同步任务消耗的时间。
    成功比例(成功的 tag 数÷总 tag 数)×100%
    同步仓库数当前任务需要同步的OCI制品仓库数量。
    触发时间同步任务的触发时间。
  4. 单击任务 ID,可查看该同步任务的详情。展示本次同步任务源实例下的[namespace]/[repo]:tag,目标实例下的[namespace]/[repo]:tag,及同步状态。
    同步状态为 成功 表明源实例的制品成功同步到目标实例;同步状态为 失败 表明源实例的制品未能同步到目标实例。

正则匹配示例

匹配方式匹配目标正则表达式匹配目标名称
v1version-1test-1v2v3
完全匹配仅匹配 v1 版本号。v1----
前缀匹配匹配以 v 开头的所有版本号。^v.*$-
多前缀匹配匹配以 vt 开头的所有版本号。^(v|t).*$
后缀匹配匹配以 -1 结尾的所有版本号。^.*-1$---
多后缀匹配匹配以 12 结尾的所有版本号。^.*(1|2)$-
版本号匹配匹配以 v 开头,连接阿拉伯数字结尾的版本号。^v([0-9.]+)$--