5.3. 镜像 OpenShift Container Platform 镜像存储库
在受限网络中置备的基础架构上升级集群前,您必须将所需的容器镜像镜像(mirror)到那个环境中。您也可以在不受限制的网络中使用此流程来确保集群只使用满足您机构对外部内容控制的容器镜像。
流程
- 查看 OpenShift Container Platform 升级路径,以确认您的当前和预定集群版本之间有升级路径。
设置所需的环境变量:
$ OCP_RELEASE=<release_version> 1 $ LOCAL_REGISTRY='<local_registry_host_name>:<local_registry_host_port>' 2 $ LOCAL_REPOSITORY='<repository_name>' 3 $ PRODUCT_REPO='openshift-release-dev' 4 $ LOCAL_SECRET_JSON='<path_to_pull_secret>' 5 $ RELEASE_NAME='ocp-release' 6 $ ARCHITECTURE=<server_architecture> 7 $ REMOVABLE_MEDIA_PATH=<path> 8
- 1
- 对于
<release_version>,请指定与升级到的 OpenShift Container Platform 版本对应的标签,如4.5.0。 - 2
- 对于
<local_registry_host_name>,请指定镜像存储库的 registry 域名;对于<local_registry_host_port>,请指定用于提供内容的端口。 - 3
- 对于
<repository_name>,请指定要在 registry 中创建的存储库名称,如ocp4/openshift4。 - 4
- 要镜像的存储库。对于生产环境版本,必须指定
openshift-release-dev。 - 5
- 对于
<path_to_pull_secret>,请指定您创建的镜像 registry 的 pull secret 的绝对路径和文件名。 - 6
- 对于生产环境版本,您必须指定
ocp-release。 - 7
- 对于
<server_architecture>,指定服务器的构架,如x86_64。 - 8
- 对于
<path>,指定托管镜像的目录的路径。
查看要镜像的镜像和配置清单:
$ oc adm release mirror -a ${LOCAL_SECRET_JSON} --to-dir=${REMOVABLE_MEDIA_PATH}/mirror quay.io/${PRODUCT_REPO}/${RELEASE_NAME}:${OCP_RELEASE}-${ARCHITECTURE} --dry-run将版本镜像镜像(mirror)到内部容器 registry。
如果您的镜像主机无法访问互联网,请执行以下操作:
- 将可移动介质连接到连接到互联网的系统。
将镜像和配置清单镜像到可移动介质的目录中:
$ oc adm release mirror -a ${LOCAL_SECRET_JSON} --to-dir=${REMOVABLE_MEDIA_PATH}/mirror quay.io/${PRODUCT_REPO}/${RELEASE_NAME}:${OCP_RELEASE}-${ARCHITECTURE}将介质上传到受限网络环境中,并将镜像上传到本地容器 registry。
$ oc image mirror -a ${LOCAL_SECRET_JSON} --from-dir=${REMOVABLE_MEDIA_PATH}/mirror 'file://openshift/release:${OCP_RELEASE}*' ${LOCAL_REGISTRY}/${LOCAL_REPOSITORY}
如果本地容器 registry 连接到镜像主机,请直接将发行镜像推送到本地 registry:
$ oc adm release mirror -a ${LOCAL_SECRET_JSON} --from=quay.io/${PRODUCT_REPO}/${RELEASE_NAME}:${OCP_RELEASE}-${ARCHITECTURE} \ --to=${LOCAL_REGISTRY}/${LOCAL_REPOSITORY}