7.2. 为托管集群配置 Kubernetes API 服务器


如果要为托管集群自定义 Kubernetes API 服务器,请完成以下步骤。

先决条件

  • 您有一个正在运行的托管集群。
  • 您可以访问修改 HostedCluster 资源。
  • 您有一个用于 Kubernetes API 服务器的自定义 DNS 域。

    • 自定义 DNS 域必须正确配置并可解析。
    • DNS 域必须配置有效的 TLS 证书。
    • 环境中必须正确配置对域的网络访问。
    • 自定义 DNS 域必须在托管集群中唯一。
  • 您已配置了自定义证书。如需更多信息,请参阅"在托管集群中配置自定义 API 服务器证书"。

流程

  1. 在供应商平台中,配置 DNS 记录,以便 kubeAPIServerDNSName URL 指向 Kubernetes API 服务器所公开的 IP 地址。DNS 记录必须正确配置并可从集群解析。

    配置 DNS 记录的命令示例

    $ dig + short kubeAPIServerDNSName

  2. HostedCluster 规格中,修改 kubeAPIServerDNSName 字段,如下例所示:

    apiVersion: hypershift.openshift.io/v1beta1
    kind: HostedCluster
    metadata:
      name: <hosted_cluster_name>
      namespace: <hosted_cluster_namespace>
    spec:
      configuration:
        apiServer:
          servingCerts:
            namedCertificates:
            - names: 
    1
    
              - api-custom-cert-sample-hosted.sample-hosted.example.com
              servingCertificate: 
    2
    
                name: sample-hosted-kas-custom-cert
      kubeAPIServerDNSName: api-custom-cert-sample-hosted.sample-hosted.example.com 
    3
    
    # ...
    1
    证书对其是有效的 DNS 名称列表。此字段中列出的名称不能与 spec.servicePublishingStrategy resolvedhostname 字段中指定的名称相同。
    2
    包含自定义证书的 secret 的名称。
    3
    此字段接受用作 API 服务器端点的 URI。
  3. 输入以下命令应用配置:

    $ oc -f <hosted_cluster_spec>.yaml

    应用配置后,HyperShift Operator 会生成一个新的 kubeconfig secret,指向您的自定义 DNS 域。

  4. 使用 CLI 或控制台检索 kubeconfig secret。

    1. 要使用 CLI 检索 secret,请输入以下命令:

      $ kubectl get secret <hosted_cluster_name>-custom-admin-kubeconfig \
        -n <cluster_namespace> \
        -o jsonpath='{.data.kubeconfig}' | base64 -d
    2. 要使用控制台检索 secret,进入托管集群并点 Download Kubeconfig

      注意

      您不能在控制台中使用 show login 命令 选项来使用新的 kubeconfig secret。

Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2026 Red Hat
返回顶部