赛尔校园公共服务平台 Logo
平台使用
阿里云
百度云
移动云
智算服务
教育生态
登录 →
赛尔校园公共服务平台 Logo
平台使用 阿里云 百度云 移动云 智算服务 教育生态
登录
  1. 首页
  2. 阿里云
  3. 容器镜像服务
  4. 操作指南
  5. 镜像分发
  6. 跨账号同步实例

跨账号同步实例

  • 镜像分发
  • 发布于 2025-04-18
  • 0 次阅读
文档编辑
文档编辑

当您想将一个账号下的镜像同步到另一个账号时,您可以使用跨账号同步实例功能。跨账号同步实例功能不受地域限制,支持手动和自动的方式。

前提条件

如果您想将源实例的镜像同步到目标实例,请确保您的源实例为标准版或高级版,基础版的源实例不支持同步实例功能。目标实例可以是经济版、基础版、标准版和高级版。

说明
  • 您可以在实例列表页面单击企业版实例的右下角的升级,升级企业版实例规格。

  • 公有云Region不支持同步至非公有云Region(金融云、政务云等)。

背景信息

跨账号同步实例支持阿里云账号和阿里云账号之间、RAM用户和RAM用户之间、阿里云账号和RAM用户之间的实例同步。

跨账号自动同步实例

通过配置同步规则,在源实例上传镜像时,自动触发将该镜像同步到另一个账号的目标实例中。本文假设源实例所在账号为A账号,目标实例所在的账号为B账号。

重要

跨账号自动同步实例只会同步设定同步规则后上传的符合规则的镜像,存量的镜像无法同步。

存量镜像同步提供两种方案:

  • 存量镜像数量不多时,您可以选择手动同步镜像。请参见跨账号手动同步实例和CreateRepoSyncTask。

  • 存量镜像数量较多时,推荐您使用OSS复制+ACR镜像导入方案:

    1. 将OSS Bucket中的所有文件复制到目标ACR实例的OSS Bucket中。详细信息请参见数据复制。

    2. 创建导入规则,将迁移源选择为OSS Bucket,并启动镜像导入任务进行迁移。

操作前准备

在进行跨账号自动同步实例之前,您需要先获取以下信息:

  • 获取A账号和B账号的UID。具体操作,请参见如何查看主账号UID?。

    说明

    如果您使用的是RAM用户,您需要获取RAM用户所在的主账号的UID。

  • 获取目标实例的所在地域和实例ID。

    登录容器镜像服务控制台,在实例列表页面顶部选择地域,单击目标企业版实例。在概览页面实例信息区域可以查看实例所在地域和实例ID。

  • 跨账号自动同步实例支持按照命名空间和仓库同步:

    • 按照命名空间同步时,目标实例和源实例必须有相同的命名空间,并且目标实例的命名空间已开启自动创建仓库的能力。关于开启自动创建仓库的更多信息,请参见创建命名空间。

    • 按照仓库同步时,目标实例和源实例必须有相同的命名空间和镜像仓库。

步骤一:在B账号中对A账号进行授权

在B账号中对A账号进行授权,允许A账号可以同步镜像到B账号的实例中。

  1. 创建aliyuncontainerregistrycrossaccoutsyncrole角色。

    说明

    角色名称必须为aliyuncontainerregistrycrossaccoutsyncrole。

    1. 使用B账号登录RAM控制台

    2. 在控制台左侧导航栏选择身份管理 > 角色,在右侧页面单击创建角色。

    3. 在创建角色页面,选择信任主体类型为云账号,然后设置具体的阿里云账号,最后单击确定。

    4. 在创建角色弹框中,输入aliyuncontainerregistrycrossaccoutsyncrole角色名称后,单击确定。

  2. 创建权限策略。

    1. 在RAM控制台左侧导航栏选择权限管理 > 权限策略,单击创建权限策略。

    2. 在创建权限策略页面选择脚本编辑,根据实际情况替换以下内容中的Resource字段,然后将以下内容复制到文档框中,单击确定。然后在创建权限策略对话框中填写名称和备注。

      说明

      Resource:授权资源,格式为acs:cr:<B账号目标实例所在地域>:<B账号UID>:instance/<B账号目标实例ID>。

      如果B账号为RAM用户,Resource中B账号UID为RAM用户所在主账号的UID。

      {
          "Statement": [
              {
                  "Effect": "Allow",
                  "Action": [
                      "cr:CreateSyncRule",
                      "cr:CreateRepositorySync"
                  ],
                  "Resource": "acs:cr:cn-beijing:151356101970****:instance/cri-4im1o411ls8g****"
              },
              {
                  "Effect": "Allow",
                  "Action": [
                      "cr:CreateSyncRule",
                      "cr:CreateRepositorySync"
                  ],
                  "Resource": "acs:cr:cn-hangzhou:151356101970****:instance/cri-4im1o411ls8gxr****"
              }
          ],
          "Version": "1"
      }
  3. 为aliyuncontainerregistrycrossaccoutsyncrole角色添加上文创建的权限策略。

    1. 在权限策略管理页面搜索上文创建的权限策略名称,单击上文创建的权限策略名称。

    2. 单击引用记录页签,然后单击新增授权。

    3. 在添加权限面板设置资源范围为账号级别,授权主体为aliyuncontainerregistrycrossaccoutsyncrole,然后单击确定新增授权。

    4. 单击关闭。

  4. 修改aliyuncontainerregistrycrossaccoutsyncrole角色的信任策略。

    1. 在RAM控制台左侧导航栏选择身份管理 > 角色。

    2. 在角色页面搜索aliyuncontainerregistrycrossaccoutsyncrole,单击aliyuncontainerregistrycrossaccoutsyncrole。

    3. 单击信任策略,然后单击编辑信任策略。

    4. 根据实际情况替换以下内容中Service字段,然后将以下内容复制到文档框中,单击保存信任策略。

      说明

      Service:授权对象,格式为<A账号的UID>@cr.aliyuncs.com。

      如果A账号为RAM用户,Service中A账号UID为RAM用户所在主账号的UID。

      {
        "Statement": [
          {
            "Action": "sts:AssumeRole",
            "Effect": "Allow",
            "Principal": {
              "Service": [
                "125287961064****@cr.aliyuncs.com"
              ]
            }
          }
        ],
        "Version": "1"
      }

步骤二:创建同步规则

  1. 使用A账号登录容器镜像服务控制台。

  2. 在顶部菜单栏,选择所需地域。

  3. 在左侧导航栏,选择实例列表。

  4. 在实例列表页面单击目标企业版实例。

  5. 在企业版实例管理页面左侧导航栏选择分发管理 > 实例同步,在右侧页面单击新建规则。

  6. 在新建规则对话框实例信息配置向导中设置参数,单击下一步。

    参数

    说明

    规则名称

    设置同步规则的名称。

    同步场景

    设置同步场景为跨账号。

    目标UID

    输入目标实例所在账号的UID。

    目标实例

    选择目标实例所在地域,输入目标实例ID。

  7. 在同步信息配置向导中设置同步级别,可选按照命名空间和仓库同步,选择相应的命名空间或者仓库,设置仓库版本过滤规则,然后单击创建同步规则。

    在企业版实例管理页面选择分发管理 > 同步记录,在同步记录页面可以看到同步任务的状态为同步成功,同时在目标实例中可以看到推送的镜像,说明跨账号自动同步实例成功。

跨账号手动同步实例

通过配置同步规则,手动将源实例的镜像推送到另一个账号的目标实例中。本文假设源实例所在账号为A账号,目标实例所在的账号为B账号。

  1. 获取A账号和B账号的UID,目标实例的所在地域和实例ID。具体操作,请参见上文的操作前准备。

  2. 在B账号中对A账号进行授权,允许A账号可以同步镜像到B账号的实例中。具体操作,请参见上文的步骤一。

  3. 登录容器镜像服务控制台。

  4. 在顶部菜单栏,选择所需地域。

  5. 在左侧导航栏,选择实例列表。

  6. 在实例列表页面单击目标企业版实例。

  7. 在企业版实例管理页面选择仓库管理 > 镜像仓库。

  8. 在镜像仓库页面单击目标镜像仓库的名称。

  9. 在镜像仓库详情页面左侧导航栏单击镜像版本,然后单击目标镜像右侧操作列下的同步。

  10. 在镜像同步对话框设置同步场景为跨账号,输入目标实例账号UID,选择目标仓库,输入目标实例ID、目标命名空间、目标仓库名称和镜像版本,然后单击确定。

    在企业版实例管理页面选择分发管理 > 同步记录,在同步记录页面可以看到同步任务的状态为同步成功,同时在目标实例中可以看到同步的镜像,说明跨账号手动同步实例成功。

相关文档

若您想将一个账号下的镜像同步到该账号的其他地域时,您可以参考同账号同步实例来操作,无需进行账号授权。

相关文章

同账号同步实例 2025-04-18 15:16

若您想实现跨地域的镜像同步,可以通过配置同步规则,将容器镜像从源实例同步至目标实例。 前提条件 同步实例时,请确保您的源实例为标准版或高级版,基础版的源实例不支持同

跨账号同步实例 2025-04-18 15:16

当您想将一个账号下的镜像同步到另一个账号时,您可以使用跨账号同步实例功能。跨账号同步实例功能不受地域限制,支持手动和自动的方式。 前提条件 如果您想将源实例的镜像同

使用P2P加速 2025-04-18 15:16

P2P加速功能可以提升镜像拉取速度,减少应用部署时间。当大规模容器集群批量下载镜像时,您可以使用P2P加速功能提升镜像拉取速度。本文介绍如何使用P2P加速功能提升镜像拉取速度。 背景信息 当大规模容器集群批量下载镜像时,容器镜像存储的网络带宽会成为性能瓶颈,导致镜像拉取缓慢。P2P加速功能可以利用您

订阅海外源镜像 2025-04-18 15:16

当您期望定期从Docker Hub、GCR、Quay等海外源镜像仓库同步镜像到企业版实例中,可以使用企业版实例的制品订阅能力。本文介绍如何订阅海外源镜像。 前提条件 已创建企业版实例,更多信息,请参见

在ACK集群中安装P2P加速套件 2025-04-18 15:16

您可以在ACK集群中使用P2P加速功能提升镜像拉取速度,减少应用部署时间。本文介绍如何在ACK集群中安装P2P加速套件。 前提条件 已创建标准版或高级版ACR企业版实例。

镜像同步加速 2025-04-18 15:16

手动或自动在中国内地与海外地域、中国内地与中国香港之间互相同步镜像时,会存在镜像同步速度慢的问题。ACR提供了跨境同步加速和自定义同步链路功能来加快镜像跨境同步的速度。本文介绍如何使用跨境同步加速和自定义同步链路功能。 背景信息 跨境同步加速和自定义

目录
Copyright © 2025 your company All Rights Reserved. Powered by 赛尔网络.
京ICP备14022346号-15
gongan beian 京公网安备11010802041014号