×

配置镜像注册表操作符重定向

通过禁用重定向,您可以配置镜像注册表操作符来控制是否将 OpenShift Container Platform 集群构建或开发人员机器等客户端重定向到直接从 Red Hat OpenStack Platform (RHOSP) Swift 存储中拉取镜像。此配置是可选的,取决于客户端是否信任存储的 SSL/TLS 证书。

在客户端不信任存储证书的情况下,可以将disableRedirect选项设置为true,代理流量通过镜像注册表。但是,结果是镜像注册表可能需要更多资源,特别是网络带宽,才能处理增加的负载。

或者,如果客户端信任存储证书,注册表可以允许重定向。这减少了注册表本身的资源需求。

一些用户可能更倾向于配置他们的客户端以信任他们的自签名证书颁发机构 (CA),而不是禁用重定向。如果您使用的是自签名 CA,则必须在信任自定义 CA 或禁用重定向之间做出选择。

步骤
  • 为确保镜像注册表代理流量而不是依赖 Swift 存储,请通过运行以下命令将config.imageregistry对象中的spec.disableRedirect字段的值更改为true

    $ oc patch configs.imageregistry.operator.openshift.io cluster --type merge --patch '{"spec":{"disableRedirect":true}}'

为镜像注册表操作符配置密钥

除了configs.imageregistry.operator.openshift.io和 ConfigMap 资源之外,操作符还通过位于openshift-image-registry命名空间中的单独密钥资源提供配置。

image-registry-private-configuration-user密钥提供了存储访问和管理所需的凭据。如果找到默认凭据,它将覆盖操作符使用的默认凭据。

对于 Red Hat OpenStack Platform (RHOSP) 存储上的 Swift,密钥预计包含以下两个键:

  • REGISTRY_STORAGE_SWIFT_USERNAME

  • REGISTRY_STORAGE_SWIFT_PASSWORD

步骤
  • 创建一个包含所需密钥的 OpenShift Container Platform 密钥。

    $ oc create secret generic image-registry-private-configuration-user --from-literal=REGISTRY_STORAGE_SWIFT_USERNAME=<username> --from-literal=REGISTRY_STORAGE_SWIFT_PASSWORD=<password> -n openshift-image-registry

使用用户预配基础设施的 RHOSP 的注册表存储

如果注册表操作符无法创建 Swift 存储桶,则必须手动设置存储介质并在注册表自定义资源 (CR) 中配置设置。

先决条件
  • 在 Red Hat OpenStack Platform (RHOSP) 上具有用户预配基础设施的集群。

  • 要为 RHOSP 配置注册表存储,您需要提供注册表操作符云凭据。

  • 对于 RHOSP 存储上的 Swift,密钥预计包含以下两个键:

    • REGISTRY_STORAGE_SWIFT_USERNAME

    • REGISTRY_STORAGE_SWIFT_PASSWORD

步骤
  • configs.imageregistry.operator.openshift.io/cluster中填写存储配置

    $ oc edit configs.imageregistry.operator.openshift.io/cluster
    示例配置
    # ...
    storage:
      swift:
        container: <container-id>
    # ...

RHOSP Swift 的镜像注册表操作符配置参数

以下配置参数可用于 Red Hat OpenStack Platform (RHOSP) Swift 注册表存储。

参数 描述

authURL

定义用于获取身份验证令牌的 URL。此值是可选的。

authVersion

指定 RHOSP 的认证版本,例如,authVersion: "3"。此值可选。

容器

定义用于存储注册表数据的 Swift 容器名称。此值可选。

指定 Identity v3 API 的 RHOSP 域名。此值可选。

域ID

指定 Identity v3 API 的 RHOSP 域 ID。此值可选。

租户

定义注册表将使用的 RHOSP 租户名称。此值可选。

租户ID

定义注册表将使用的 RHOSP 租户 ID。此值可选。

区域名称

定义容器所在的 RHOSP 区域。此值可选。