2.5. 扩展 Registry 配置


2.5.1. 维护 Registry IP 地址

OpenShift Container Platform 使用其服务 IP 地址来引用集成的 registry,因此如果您决定删除并重新创建 docker-registry 服务,您可以通过安排在新服务中重复使用旧 IP 地址来确保完全透明转换。如果无法避免新的 IP 地址,您可以通过只重启 master 来最小化集群中断。

重新使用地址
要重新使用 IP 地址,您必须在删除旧 docker-registry 服务前保存其 IP 地址,并安排将新分配的 IP 地址替换为新 docker-registry 服务中保存的 IP 地址。
  1. 记录该服务的 clusterIP:

    $ oc get svc/docker-registry -o yaml | grep clusterIP:
    Copy to Clipboard Toggle word wrap
  2. 删除服务:

    $ oc delete svc/docker-registry dc/docker-registry
    Copy to Clipboard Toggle word wrap
  3. registry.yaml 中创建 registry 定义,将 <options> 替换为非生产环境使用部分中说明的第 3 步中使用的 :

    $ oc adm registry <options> -o yaml > registry.yaml
    Copy to Clipboard Toggle word wrap
  4. 编辑 registry.yaml,找到 Service,并将其 clusterIP 更改为第 1 步中记录的地址。
  5. 使用修改后的 registry.yaml 创建 registry:

    $ oc create -f registry.yaml
    Copy to Clipboard Toggle word wrap
重启 Master
如果您无法重新使用 IP 地址,则任何使用包含旧 IP 地址的 pull specification 的操作都将失败。要最小化集群中断,您必须重启 master:
# master-restart api
# master-restart controllers
Copy to Clipboard Toggle word wrap

这样可确保从缓存中清除包括旧 IP 地址的旧 registry URL。

注意

我们建议不要重启整个集群,因为这会对 pod 造成不必要的停机时间,实际上不会清除缓存。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat