OpenShift Container Storage is now OpenShift Data Foundation starting with version 4.9.
第 3 章 OpenShift Data Foundation 操作器(operator)
Red Hat OpenShift Data Foundation 由以下三个 Operator Lifecycle Manager(OLM)操作器捆绑包组成,部署四个操作器,它们组合了管理任务和自定义资源,以便可以轻松地自动执行任务和资源特征:
OpenShift Data Foundation
-
odf-operator
-
OpenShift Container Storage
-
ocs-operator
-
rook-ceph-operator
-
多云对象网关
-
mcg-operator
-
管理员定义集群的所需最终状态,OpenShift Data Foundation 通过最少的管理员干预来确保集群处于该状态,或接近该状态。
3.1. OpenShift Data Foundation operator(操作器) 复制链接链接已复制到粘贴板!
odf-operator
可以被理解为 OpenShift Data Foundation 的 "meta" 操作器,它是一个旨在影响其他操作器的操作器。
odf-operator
有以下主要功能:
强制组成 OpenShift Data Foundation 的其他操作器的配置和版本控制。它通过使用两种主要机制来实现此目的:操作器依赖项和订阅管理。
-
odf-operator
捆绑包指定其他 OLM Operator 的依赖关系,以确保它们始终安装在特定版本中。 - operator 本身为所有其他操作器管理订阅,以确保所需的 Operator 版本可供 OLM 安装。
-
- 为 OpenShift 控制台提供 OpenShift Data Foundation 外部插件。
- 提供一个 API,将存储解决方案与 OpenShift 控制台集成。
3.1.1. 组件 复制链接链接已复制到粘贴板!
odf-operator
依赖于 ocs-operator
软件包。它还管理 stc g-operator
的订阅。此外,odf-operator
捆绑包为 OpenShift 控制台的 OpenShift Data Foundation 外部插件定义第二个部署。这会定义基于 nginx
的 Pod,它提供必要的文件来注册 OpenShift Data Foundation 仪表板并将其集成到 OpenShift Container Platform 控制台中。
3.1.2. 设计图 复制链接链接已复制到粘贴板!
本图演示了 odf-operator
如何与 OpenShift Container Platform 集成。
图 3.1. OpenShift Data Foundation Operator
3.1.3. 响应能力 复制链接链接已复制到粘贴板!
odf-operator 定义以下 CRD:
-
StorageSystem
StorageSystem
CRD 代表了一个底层存储系统,为 OpenShift Container Platform 提供数据存储和服务。它触发 Operator 以确保给定存储系统的 Kind
存在 订阅
。
3.1.4. Resources 复制链接链接已复制到粘贴板!
ocs-operator
会根据给定存储系统的 spec 创建以下 CR。
Operator Lifecycle Manager 资源
为操作器创建一个 订阅
,用于定义和协调给定 存储系统的
Kind。
3.1.5. 限制 复制链接链接已复制到粘贴板!
odf-operator
本身不提供任何数据存储或服务。它作为其他存储系统的集成和管理层存在。
3.1.6. 高可用性 复制链接链接已复制到粘贴板!
高可用性并不是 odf-operator
Pod 的主要要求,与其他多数操作器类似。总体而言,并没有操作需要或受益于流程分布。在当前 Pod 不可用或被删除时,OpenShift Container Platform 会快速启动一个替换的 Pod。
3.1.7. 相关配置文件 复制链接链接已复制到粘贴板!
odf-operator
附带一个变量 ConfigMap
,可用于修改 Operator 的行为。
3.1.8. 相关日志文件 复制链接链接已复制到粘贴板!
要了解 OpenShift Data Foundation 并排除问题,您可以查看以下内容:
- Operator Pod 日志
-
StorageSystem
状态 - 底层存储系统 CRD 状态
Operator Pod 日志
每个操作器都提供标准的 Pod 日志,其中包括有关协调的信息以及遇到的错误的信息。这些日志通常具有有关成功协调的信息,可以过滤掉并忽略它们。
StorageSystem
状态和事件
StorageSystem
CR 将协调详情存储在 CR 的状态中,并关联事件。StorageSystem 的
spec 包含实际存储系统的 CRD 的名称、命名空间和 Kind,管理员可以用它来查找存储系统状态的更多信息。
3.1.9. 生命周期 复制链接链接已复制到粘贴板!
需要存在 odf-operator
,只要 OpenShift Data Foundation 捆绑包仍然被安装。这是作为 OLM 对 OpenShift Data Foundation CSV 协调的一部分进行管理。至少一个 pod 实例应该处于 Ready
状态。
CRD 等 operator 操作对象不应影响 Operator 的生命周期。创建和删除 StorageSystems
是在操作器控制之外的操作,必须由管理员发起,或者通过适当的应用程序编程接口(API)调用进行自动化。