服务拷贝
“服务拷贝”功能,目的旨在提高您的多环境部署效率,除第1套环境外,后续环境的部署时间能节省95%
。
注意
1.你必须同时具备源端项目、目标端项目的操作权限;
2.出于保护目标端的目的,如果目标端已经具备了同名的服务,则该服务是无法被拷贝的,同名的7层网关、流水线同理;
3.如果你要拷贝的服务挂载了持久卷PVC,会拷贝该持久卷声明,但不会同步卷里存储的数据;
4.每一次部署新服务后,都可以使用服务拷贝功能,提高部署效率。
1.选择目标端
假设我们有一个已经部署好的测试项目,想要将其完整的拷贝到一个空的生产项目中。我们首先点击容器服务/服务拷贝/创建拷贝任务
,然后选择目标端的项目。
2.指定要拷贝的资源
只有被选择的资源,才会被拷贝。支持拷贝的资源类型包括:服务、镜像、七层网关、外部服务(不常用)、流水线,需要切换tab页,一一勾选。
请关注每一个页签下页面上的提示哦~
选择服务
INFO
暂不支持Operator商店、公共商店部署的中间件,请不要选这些服务。
选择镜像仓库
目标仓库
含义:
- 将拷贝到目标端的服务所引用的镜像来源,从“源端仓库”替换为“目标仓库”。
对于目标仓库
的选择有以下建议:
- 开发和测试环境可以使用同一套镜像仓库,则目标仓库=源端仓库,也可以不使用同一套;
- 测试环境和生产环境由于跨集群,不能使用同一套镜像仓库:
- 如果源端仓库是私有仓库,则目标仓库=目标端项目的私有仓库;
- 如果源端仓库是公有仓库,则目标仓库=源端仓库。
是否同步镜像
含义:是否要把当前服务正在引用的镜像拷贝到目标仓库。
对于是否同步镜像
有以下建议:
- 一般不用勾选,除非你暂且不想在目标端使用新的镜像
选择七层网关
选择外部服务
选择流水线
目标端镜像仓库
含义:
- 目标端流水线生成的镜像推送到哪个仓库中。
然后,点击下一步
,检查任务后再点击提交
。
3.等待任务完成后检查
任务成功
一般很快(1min),任务状态就会变更为“成功”,如果要同步镜像的话会久一点。
切换到目标端项目,可以看到确实都被拷贝过来了,接下来略微调整后就可以启动服务了~
注意
此时,到目标端编辑服务,如果报错“请求资源未找到”是正常的,因为你刚才没有选择“同步镜像”,所以镜像不存在,你需要执行流水线,生成镜像,再编辑服务,选择存在的镜像版本。
任务失败
如果任务“失败”,可以查看哪个资源失败和失败报错信息。
- 举个例子:因为目标端项目磁盘配额不足,导致PVC创建失败,进而导致挂载了该PVC的服务拷贝失败。
- 排除了引发失败的原因后,可以再创建一个任务,只同步刚刚失败的对象。