2.5. 了解 OperatorHub
2.5.1. 关于 OperatorHub
OperatorHub 是集群管理员用来发现和安装 Operator 的 OpenShift Container Platform 中的 Web 控制台界面。只需单击一次,即可从其非集群源拉取 Operator,并将其安装和订阅至集群中,为工程团队使用 Operator Lifecycle Manager (OLM) 在部署环境中自助管理产品做好准备。
集群管理员可从划分为以下类别的目录进行选择:
类别 | 描述 |
---|---|
红帽 Operator | 已由红帽打包并提供的红帽产品。受红帽支持。 |
经认证的 Operator | 来自主要独立软件供应商 (ISV) 的产品。红帽与 ISV 合作打包并提供。受 ISV 支持。 |
Red Hat Marketplace | 可通过 Red Hat Marketplace 购买认证的软件。 |
社区 Operator | 由 redhat-openshift-ecosystem/community-operators-prod/operators GitHub 存储库中相关代表维护的可选可见软件。无官方支持。 |
自定义 Operator | 您自行添加至集群的 Operator。如果您尚未添加任何自定义 Operator,则您的 OperatorHub 上 Web 控制台中便不会出现自定义类别。 |
OperatorHub 上的操作员被打包在 OLM 上运行。这包括一个称为集群服务版本(CSV)的 YAML 文件,其中包含安装和安全运行 Operator 所需的所有 CRD 、RBAC 规则、Deployment 和容器镜像。它还包含用户可见的信息,如功能描述和支持的 Kubernetes 版本。
Operator SDK 可以用来协助开发人员打包 Operators 以用于 OLM 和 OperatorHub。如果您有一个需要方便客户访问的商业应用程序,请使用红帽合作伙伴连接门户(connect.redhat.com)提供的认证工作流来包括这个应用程序。
2.5.2. OperatorHub 架构
OperatorHub UI 组件默认由 openshift-marketplace
命名空间中 OpenShift Container Platform 上的 Marketplace Operator 驱动。
2.5.2.1. OperatorHub 自定义资源
Marketplace Operator 管理名为 cluster
的 OperatorHub
自定义资源(CR),用于管理 OperatorHub 提供的默认 CatalogSource
对象。您可以修改此资源以启用或禁用默认目录,这在受限网络环境中配置 OpenShift Container Platform 时非常有用。
OperatorHub
自定义资源示例
apiVersion: config.openshift.io/v1 kind: OperatorHub metadata: name: cluster spec: disableAllDefaultSources: true 1 sources: [ 2 { name: "community-operators", disabled: false } ]