在阿里云的不同region里,内网的镜像服务使用的域名是不同的,会带着region的名称。
这时候,如果我们的应用需要在不同region的K8s集群部署,就会有些痛苦,如果在不同region使用不同的域名,日常维护上的工作量就增加了;如果使用同样的registry公网域名,日常对镜像的操作速度就会受影响
本文就是针对这种需求,介绍如何使用private zone来实现不同region使用同样域名访问registry内网入口
环境准备
两个region的镜像仓库
一个在北京,内网名称:registry-vpc.cn-beijing.aliyuncs.com/ack-mian/test
一个在深圳,内网名称:registry-vpc.cn-shenzhen.aliyuncs.com/ack-mian/test
两个region中的ECS
一台在北京,一台在深圳,均已安装好docker
现在两台机器均只能pull自己region的内网名称来拉取镜像
添加zone
在控制台找到"云解析DNS"下的"PrivateZone",添加两条记录(名字都是mirror.aliyuncs.com),如下图所示
然后两条zone记录均添加CNAME
类型的解析记录,分别指向北京和深圳的registry然后按照指向的region,关联到对应region中的VPC
此时,按图中的设置,两台ECS上均可以使用test.mirror.aliyuncs.com/ack-mian/test的名称来pull镜像了
阿里云的镜像服务使用的证书里有绑定域名,上面例子中使用的
mirror.aliyuncs.com
在绑定域名中,所以才能正常使用,否则会报X509错误
欢迎使用阿里云上的容器镜像服务,简化Registry的搭建运维工作,支持多地域的镜像托管,并联合容器服务等云产品,打造云上使用Docker的一体化体验。