第 6 章 AMQ Streams Operators
AMQ Streams 支持使用 Operator 在 OpenShift 中部署和管理 Kafka 的组件和依赖项。
Operator 是一种打包、部署和管理 OpenShift 应用的方法。AMQ Streams Operator 扩展 OpenShift 功能,自动化与 Kafka 部署相关的常见和复杂任务。通过在代码中实施 Kafka 操作知识,可以简化 Kafka 管理任务,且需要较少的人工干预。
Operator
AMQ Streams 提供用于管理在 OpenShift 集群中运行的 Kafka 集群的 Operator。
- Cluster Operator
- 部署和管理 Apache Kafka 集群、Kafka Connect、Kafka MirrorMaker、Kafka Bridge、Kafka Exporter、Cruise Control 和 Entity Operator
- Entity Operator
- 包括 Topic Operator 和 User Operator
- Topic Operator
- 管理 Kafka 主题
- User Operator
- 管理 Kafka 用户
Cluster Operator 可以在与 Kafka 集群同时部署 Topic Operator 和 User Operator 作为 Entity Operator 配置的一部分。
AMQ Streams 架构中的 Operator
6.1. Cluster Operator 复制链接链接已复制到粘贴板!
AMQ Streams 使用 Cluster Operator 来部署和管理集群。
- Kafka (包括 ZooKeeper、实体 Operator、Kafka Exporter 和 Cruise Control)
- Kafka Connect
- Kafka MirrorMaker
- Kafka Bridge
自定义资源用于部署集群。
例如,要部署 Kafka 集群:
-
在 OpenShift 集群中创建带有集群配置的
Kafka资源。 -
Cluster Operator 根据 Kafka 资源中声明的内容部署对应的
Kafka集群。
Cluster Operator 也可以部署(通过配置 Kafka 资源):
-
主题 Operator 通过
KafkaTopic自定义资源提供 operator 风格主题管理 -
用户 Operator 通过
KafkaUser自定义资源提供 operator 风格的用户管理
在部署时实体 Operator 中的主题 Operator 和用户 Operator 功能。
您可以将 Cluster Operator 与 AMQ Streams Drain Cleaner 部署搭配,以帮助 pod 驱除。通过部署 AMQ Streams Drain Cleaner,您可以使用 Cluster Operator 移动 Kafka pod 而不是 OpenShift。AMQ Streams Drain Cleaner 使用滚动更新注解来注解被驱除的 pod。该注解告知 Cluster Operator 执行滚动更新。
Cluster Operator 构架示例