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:
  2. 删除服务:

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

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

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

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

注意

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

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.