第 9 章 使用证书
安装 Red Hat OpenShift AI 时,OpenShift 会自动应用默认的证书颁发机构(CA)捆绑包来管理大多数 OpenShift AI 组件的身份验证,如工作台和模型服务器。这些证书是可信的自签名证书,可帮助安全通信。但是,作为集群管理员,您可能需要配置额外的自签名证书以使用某些组件,如数据科学项目服务器和对象存储解决方案。如果 OpenShift AI 组件使用不属于现有集群范围 CA 捆绑包的自签名证书,则您可以选择包括证书:
- 将其添加到 OpenShift 集群范围的 CA 捆绑包中。
- 将其添加到自定义 CA 捆绑包中,与集群范围的 CA 捆绑包分开。
作为集群管理员,您还可以更改如何管理 OpenShift AI 身份验证,如下所示:
- 手动管理证书更改,而不依赖 OpenShift AI Operator 自动处理它们。
- 从所有命名空间或特定命名空间中删除集群范围的 CA 捆绑包。如果要实施不同的身份验证方法,您可以覆盖默认的 OpenShift AI 行为,如 删除 CA 捆绑包 中所述。
9.1. 了解 OpenShift AI 处理证书的方式 复制链接链接已复制到粘贴板!
安装 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"。
在 CNO operator 注入捆绑包后,它会使用 ca-bundle.crt 文件的内容更新 ConfigMap。
CA 捆绑包的管理通过 Data Science Cluster 初始化(DSCI)对象进行配置。在这个对象中,您可以将 spec.trustedCABundle.managementState 字段设置为以下值之一:
-
Managed: (Default) Red Hat OpenShift AI Operator 管理odh-trusted-ca-bundleConfigMap,并将其添加到所有非保留的现有和新命名空间中。它不会将 ConfigMap 添加到任何保留或系统命名空间中,如默认、openshift-\*或kube="">>。Red Hat OpenShift AI Operator 会自动更新 ConfigMap,以反映对customCABundle字段所做的任何更改。 Unmanaged: Red Hat OpenShift AI 管理员手动管理odh-trusted-ca-bundleConfigMap,而不是允许 Operator 管理它。将managementState从Managed改为Unmanaged不会删除odh-trusted-ca-bundleConfigMap。但是,如果对customCABundle字段进行了更改时,ConfigMap 不再自动更新。如果您的机构实现了管理可信 CA 捆绑包的不同方法,如 Ansible 自动化,且不希望 Red Hat OpenShift AI Operator 自动处理证书,则
Unmanaged设置很有用。此设置提供更大的控制,防止 Operator 覆盖自定义配置。已删除 : Red Hat OpenShift AI Operator 删除
odh-trusted-ca-bundleConfigMap (如果存在),并防止 ConfigMap 在新命名空间中创建。将此字段从Managed改为Removed也会从现有命名空间中删除 ConfigMap。这是将 Red Hat OpenShift AI 从 2.7 或更早版本升级到 2.19 的默认值。Removed设置降低了复杂性并降低安全风险,如未授权证书更改。在高安全环境中,删除 CA 捆绑包可确保只有批准的 CA 不被信任,从而减少网络攻击的风险。例如,您的组织可能希望限制集群管理员创建可信 CA 捆绑包,以防止 OpenShift Pod 外部通信。