搜索

第 7 章 使用证书

download PDF

证书供 OpenShift 中的不同组件用来验证对集群的访问。对于依赖自签名证书的集群,您可以将这些自签名证书添加到集群范围的证书颁发机构(CA)捆绑包中,并使用 Red Hat OpenShift AI 中的 CA 捆绑包。您还可以在与集群范围捆绑包分开的自定义 CA 捆绑包中使用自签名证书。管理员可以添加 CA 捆绑包,从所有命名空间中删除 CA 捆绑包,从单个命名空间中删除 CA 捆绑包,或者手动管理证书更改,而不是系统。

7.1. 了解 OpenShift AI 中的证书

对于依赖自签名证书的 OpenShift 集群,您可以将这些自签名证书添加到集群范围的证书颁发机构(CA)捆绑包(ca-bundle.crt),并使用 Red Hat OpenShift AI 中的 CA 捆绑包。您还可以在与集群范围捆绑包分开的自定义 CA 捆绑包(odh-ca-bundle.crt)中使用自签名证书。

7.1.1. 如何注入 CA 捆绑包

安装 OpenShift AI 后,Red Hat OpenShift AI Operator 会自动创建一个空的 odh-trusted-ca-bundle 配置文件(ConfigMap),Cluster Network Operator (CNO)将集群范围的 CA 捆绑包注入 odh-trusted-ca-bundle configMap,标签为 "config.openshift.io/inject-trusted-cabundle"。在受影响命名空间中部署的组件负责将此 configMap 挂载为部署 pod 中的卷。

apiVersion: v1
kind: ConfigMap
metadata:
  labels:
    app.kubernetes.io/part-of: opendatahub-operator
    config.openshift.io/inject-trusted-cabundle: 'true'
  name: odh-trusted-ca-bundle

在 CNO operator 注入捆绑包后,它会使用包含证书的 ca-bundle.crt 文件更新 ConfigMap。

apiVersion: v1
kind: ConfigMap
metadata:
  labels:
    app.kubernetes.io/part-of: opendatahub-operator
    config.openshift.io/inject-trusted-cabundle: 'true'
  name: odh-trusted-ca-bundle
data:
  ca-bundle.crt: |
    <BUNDLE OF CLUSTER-WIDE CERTIFICATES>

7.1.2. ConfigMap 的管理方式

默认情况下,Red Hat OpenShift AI Operator 管理 odh-trusted-ca-bundle ConfigMap。如果要管理或删除 odh-trusted-ca-bundle ConfigMap,或者添加与集群范围 CA 捆绑包(ca-bundle.crt)分开的自定义 CA 捆绑包 (odh-ca-bundle.crt),您可以在 Operator 的 DSC Initialization (DSCI) 对象中使用 trustedCABundle 属性。

spec:
  trustedCABundle:
    managementState: Managed
    customCABundle: ""

在 Operator 的 DSCI 对象中,您可以将 spec.trustedCABundle.managementState 字段设置为以下值:

  • Managed: Red Hat OpenShift AI Operator 管理 odh-trusted-ca-bundle ConfigMap,并将其添加到所有非保留现有命名空间和新命名空间中( ConfigMap 不会添加到任何保留或系统命名空间中,如 default, openshift-\*kube-*)。ConfigMap 会自动更新,以反映对 customCABundle 字段所做的任何更改。这是安装 Red Hat OpenShift AI 后的默认值。
  • Unmanaged: Red Hat OpenShift AI Operator 不管理 odh-trusted-ca-bundle ConfigMap,允许管理员管理它。将 managementStateManaged 改为 Unmanaged 不会删除 odh-trusted-ca-bundle ConfigMap,但如果对 customCABundle 字段进行更改,则不会更新 ConfigMap。

在 Operator 的 DSCI 对象中,您可以将自定义证书添加到 spec.trustedCABundle.customCABundle 字段中。这会将包含证书的 odh-ca-bundle.crt 文件添加到 odh-trusted-ca-bundle ConfigMap 中,如下例所示:

apiVersion: v1
kind: ConfigMap
metadata:
  labels:
    app.kubernetes.io/part-of: opendatahub-operator
    config.openshift.io/inject-trusted-cabundle: 'true'
  name: odh-trusted-ca-bundle
data:
  ca-bundle.crt: |
    <BUNDLE OF CLUSTER-WIDE CERTIFICATES>
  odh-ca-bundle.crt: |
    <BUNDLE OF CUSTOM CERTIFICATES>
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.