若您需要跨地域或从IDC访问ACR企业版来推送或拉取镜像,您需确保访问源和被访问ACR企业版实例的VPC网络互通。本文介绍如何获取访问ACR企业版实例的IP,以及配置路由,实现在ACR企业版实例所在地域之外推送或拉取镜像。
使用场景
场景 | 描述 | 操作说明 |
本地数据中心访问ACR企业版实例 | 您可以利用VPN网关、高速通道物理专线或智能接入网关,将本地数据中心与云上可以访问ACR企业版实例的VPC连接,实现从本地数据中心访问ACR企业版实例的功能。 |
|
跨地域访问ACR企业版实例 | 您可以通过云企业网(CEN)跨地域连接功能,将云上VPC与ACR企业版实例相连,以实现跨地域访问ACR企业版实例。 说明 若您有云上多地域容器镜像拉取需求,建议您使用多个地域企业版实例支持,并使用ACR企业版实例的全球同步能力同步镜像。具体操作,请参见同账号同步实例。 |
|
使用说明
本示例将演示如何在同一个账号下,在华东2(上海)跨地域访问华东1(杭州)的ACR企业版实例。环境信息如下:
VPC1
地域:华东1(杭州)
IPv4网段:10.0.0.0/16
交换机1,位于可用区J,网段: 10.0.0.0/24
交换机2,位于可用区K,网段:10.0.1.0/24 (在2个不同的可用区分别创建交换机,用于多可用区容灾)
ECS1地址:10.0.0.1 (ECS用于验证连通性)
VPC2
地域:华东2(上海)
IPv4网段:172.16.0.0/16
交换机1,位于可用区M,网段:172.16.0.0/24
交换机2,位于可用区N,网段:172.16.1.0/24
ECS2地址:172.16.0.1
操作流程如下:
跨地域连接:确保华东1(杭州)与华东2(上海)已通过云企业网成功跨地域连接。操作详情请参见跨地域VPC互通。
在华东1(杭州)地域获取以下三个域名信息:
说明同地域的ECS确保使用内网访问目标容器镜像服务企业版实例。详情请参见配置专有网络的访问控制。
ACR企业版实例域名:通常用于镜像拉取和推送的接口访问。
认证服务的域名:用于身份认证相关的通信。
实例关联的OSS Bucket域名:用于存储和访问镜像的对象存储服务。
配置路由表:将获取的IP地址或网段添加到需要访问的网络路由表中,以确保它们可以通过云企业网进行跨地域访问。
在华东2(上海)验证访问华东1(杭州)的ACR企业版实例。
步骤一:跨地域连接
华东1(杭州)与华东2(上海)已通过云企业网成功跨地域连接。操作详情请参见跨地域VPC互通。
步骤二:获取域名信息
请确保以下三种域名的IP不能与源端已有服务的IP冲突,否则将导致源端的服务在本地无法访问。
登录华东1(杭州)的ECS,根据以下步骤获取OSS Bucket、ACR企业版实例和认证服务在VPC中的对应三个IP地址。
获取ACR企业版实例VPC访问IP。
登录容器镜像服务控制台。
在顶部菜单栏,选择所需地域。
在左侧导航栏,选择实例列表。
在实例列表页面单击目标企业版实例。
在企业版实例管理页面左侧导航栏中选择 。
在专有网络页签下,复制ACR企业版实例VPC访问域名。然后在ECS上使用
ping
命令访问域名,获取相应IP并记录。
获取认证服务在VPC中的IP。
说明可开启实例接管认证域名功能跳过此步骤。
执行以下命令,获取认证服务在VPC中的域名。
InstanceName
为ACR企业版实例名称,RegionId
为所在地域。curl -vv https://${InstanceName}-registry-vpc.${RegionId}.cr.aliyuncs.com/v2/
使用
ping
命令获取相应的IP并记录。ping dockerauth-ee-vpc-beijing.aliyuncs.com # 示例
获取OSS Bucket在VPC中的IP。
说明通过PrivateLink私网访问OSS资源,然后将华东1(杭州)的OSS域名CNAME指向PrivateLink的域名,即可跳过此步骤。
使用
ping
命令获取相应的IP并记录。通过OSS内网域名与VIP网段对照表获取华东1(杭州)OSS Bucket的VPC域名。
使用Ping命令获取相应的IP并记录。
ping oss-cn-hangzhou-internal.aliyuncs.com
说明如果您使用的是自定义OSS Bucket,则域名为
${CustomizedOSSBucket}.oss-${RegionId}-internal.aliyuncs.com
。
示例中获取华东1(杭州)ACR企业版相关域名的IP如下:
名称
域名
IP地址
ACR企业版实例
xxxxxx-registry-vpc.cn-hangzhou.cr.aliyuncs.com
10.94.205.198
认证服务
dockerauth-ee-vpc-beijing.aliyuncs.com
100.103.7.181/32
OSS Bucket
oss-cn-hangzhou-internal.aliyuncs.com
100.118.28.43/32
步骤三:配置路由表
在华东2(上海)VPC2中,根据以下步骤将认证服务和OSS IP地址配置到路由表。
在华东1(杭州)VPC1中,根据以下步骤将覆盖认证服务和OSS IP的CIDR配置到路由表并发布。
路由表页面,找到VPC1目标自定义路由表,单击路由表的ID。
在添加路由条目面板,根据以下信息配置路由条目。并单击确定。
配置
说明
目标网段
输入要转发到的目标网段。
IPv4网段:100.0.0.0/8(覆盖认证服务和OSS IP的CIDR)
下一跳类型
选择下一跳类型:
ECS实例:将目的地址在目标网段范围内的流量路由至选择的ECS实例。
然后选择目标VPC1下的ECS实例。创建完成后在专有网络路由发布状态单击云企业发布。
创建完成后,在对应的专有网络路由发布状态列中单击发布。
步骤四:验证访问ACR企业版实例
登录华东2(上海)的ECS使用
ping
命令分别测试华东1(杭州)地域的ACR企业版实例三个IP,并做本地域名解析。vim /etc/hosts 10.94.205.198 xxxxxx-registry-vpc.cn-hangzhou.cr.aliyuncs.com 100.103.7.181 dockerauth-vpc.cn-hangzhou.aliyuncs.com 100.118.28.43 oss-cn-hangzhou-internal.aliyuncs.com
使用
docker login
登录容器镜像仓库,然后执行docker pull
命令,拉取镜像。说明关于推送和拉取镜像的详细介绍,请参见使用企业版实例推送和拉取镜像。
如何解决100网段IP冲突问题
在配置路由规则时,如果内网域名解析为100网段的IP,可能会导致在访问容器镜像服务企业版时出现冲突。您可以启用实例的接管认证功能,这样只需访问两个域名:实例自身的域名和其关联的OSS Bucket域名。