第 7 章 为托管的 control plane 配置证书


重要

托管 control plane 目前不适用于 OpenShift Container Platform 4.20。计划在不久的将来发布该功能。

使用托管的 control plane,配置证书的步骤与独立的 OpenShift Container Platform 不同。

7.1. 在托管集群中配置自定义 API 服务器证书

要为 API 服务器配置自定义证书,请在 HostedCluster 配置的 spec.configuration.apiServer 部分中指定证书详情。

您可以在第 1 天或第 2 天操作期间配置自定义证书。但是,由于在托管集群创建过程中设置服务发布策略后,服务发布策略不可变,所以您必须知道您要配置的 Kubernetes API 服务器的主机名。

先决条件

  • 您创建了包含管理集群中的自定义证书的 Kubernetes secret。secret 包含以下键:

    • tls.crt: 证书
    • tls.key :私钥
  • 如果您的 HostedCluster 配置包含使用负载均衡器的服务发布策略,请确保证书的 Subject Alternative Names (SAN) 与内部 API 端点 (api-int) 没有冲突。内部 API 端点由您的平台自动创建和管理。如果您在自定义证书和内部 API 端点中使用相同的主机名,则可能会出现路由冲突。此规则的唯一例外是,当您将 AWS 用作供应商时,使用 PrivatePublicAndPrivate 配置。在这些情况下,SAN 冲突由平台管理。
  • 证书必须对外部 API 端点有效。
  • 证书的有效性周期与集群的预期生命周期一致。

流程

  1. 输入以下命令使用自定义证书创建 secret:

    $ oc create secret tls sample-hosted-kas-custom-cert \
      --cert=path/to/cert.crt \
      --key=path/to/key.key \
      -n <hosted_cluster_namespace>
    Copy to Clipboard Toggle word wrap
  2. 使用自定义证书详情更新 HostedCluster 配置,如下例所示:

    spec:
      configuration:
        apiServer:
          servingCerts:
            namedCertificates:
            - names: 
    1
    
              - api-custom-cert-sample-hosted.sample-hosted.example.com
              servingCertificate: 
    2
    
                name: sample-hosted-kas-custom-cert
    Copy to Clipboard Toggle word wrap
    1
    证书对其是有效的 DNS 名称列表。
    2
    包含自定义证书的 secret 的名称。
  3. 输入以下命令将更改应用到 HostedCluster 配置:

    $ oc apply -f <hosted_cluster_config>.yaml
    Copy to Clipboard Toggle word wrap

验证

  • 检查 API 服务器 pod,以确保挂载了新证书。
  • 使用自定义域名测试与 API 服务器的连接。
  • 在浏览器中或使用 openssl 等工具验证证书详情。
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat