第 3 章 使用 Apache Kafka 的 Streams 部署的内容
提供了 Apache Kafka 组件,用于使用 Streams for Apache Kafka 发行版本部署到 OpenShift。Kafka 组件通常作为集群运行,以实现高可用性。
使用 Kafka 组件的典型部署可能包括:
- 代理节点的 Kafka 集群
- 复制 ZooKeeper 实例的 zookeeper 集群
- 用于外部数据连接的 Kafka 连接 集群
- Kafka MirrorMaker 集群在二级集群中镜像 Kafka 集群
- Kafka Exporter 来提取额外的 Kafka 指标数据以进行监控。
- Kafka Bridge 为 Kafka 集群发出基于 HTTP 的请求
- Cruise Control 在代理节点间重新平衡主题分区
并非所有组件都是必须的,但最少需要 Kafka 和 ZooKeeper。有些组件可以在没有 Kafka 的情况下部署,如 MirrorMaker 或 Kafka Connect。
3.1. 部署顺序
部署到 OpenShift 集群所需的顺序如下:
- 部署 Cluster Operator 以管理 Kafka 集群
- 使用 ZooKeeper 集群部署 Kafka 集群,并在部署中包含主题 Operator 和 User Operator
(可选)部署:
- 如果没有使用 Kafka 集群部署主题 Operator 和用户 Operator 独立
- Kafka Connect
- Kafka MirrorMaker
- Kafka Bridge
- 用于监控指标的组件
Cluster Operator 为组件创建 OpenShift 资源,如 Deployment
、Service
和 Pod
资源。OpenShift 资源的名称附加在部署时为组件指定的名称。例如,名为 my-kafka-cluster
的 Kafka 集群有一个名为 my-kafka-cluster-kafka
的服务。