快速上手
从零部署单节点与三节点 Kafka,完成安全接入、参数调整和上线检查。
Kafka 是一个分布式事件流平台。Pigsty 的 KAFKA 模块使用 RPM/DEB 软件包,在纳管节点上部署 Apache Kafka 4.x dynamic KRaft 集群,并统一管理安全、资源、生命周期与可观测性。
当前 Kafka 模块处于 Beta 状态。用于严肃生产环境前请务必充分测试,确保满足业务需求。 包括 dynamic KRaft、严格滚动、TLS/SCRAM/ACL、声明式 Topic/User、凭据与证书轮换,以及完整监控链路。
KAFKA 模块当前提供:
controller.quorum.voterscombined、broker、controller 三种原生角色和复合/分离拓扑plaintext 与生产 scram 两种安全档位;后者启用 TLS、SCRAM-SHA-512、Controller mTLS、ACL 与默认拒绝授权KAFKA 模块依赖 NODE 完成节点纳管、仓库与基础监控,依赖 INFRA 提供 VictoriaMetrics、VictoriaLogs、Grafana 与 Alertmanager。
flowchart LR
admin["Pigsty 管理节点"] -->|"kafka.yml / exact cluster"| kafka["Kafka 4.x / dynamic KRaft"]
kafka --> jmx["每个 Kafka JVM / JMX :9404"]
kafka --> exporter["最多两个 Broker / kafka_exporter :9308"]
kafka --> journal["Journald"]
jmx --> vm["VictoriaMetrics"]
exporter --> vm
journal --> vector["Vector"] --> vl["VictoriaLogs"]
vm --> grafana["Grafana"]
vl --> grafana
vm --> alert["Alertmanager"]
style kafka fill:#70C1B3,stroke:#4f968b,color:#fff
style vm fill:#E66B7A,stroke:#b84e5c,color:#fff
style vl fill:#C98367,stroke:#9e634e,color:#fff
style grafana fill:#F29C64,stroke:#c77845,color:#fff每个 Kafka JVM 都注入 JMX Exporter 并注册为 job=kafka。协议型 kafka_exporter 只在按 kafka_seq 排序后的前两个 Broker-capable 节点运行;单 Broker 集群只运行一个,纯 Controller 不运行。它们返回的是同一逻辑集群视图,Recording Rule 会先去重再聚合。
| 文档 | 内容 |
|---|---|
| 快速上手 | 从单节点到三节点安全集群、客户端接入、参数修改与上线检查 |
| 集群配置 | 拓扑、dynamic KRaft、网络、存储、安全与资源声明 |
| 参数参考 | 15 项持久公开参数及临时运维变量 |
| 日常管理 | 状态检查、Topic、消息、Consumer Group 与拓扑变更 |
| 预置剧本 | kafka.yml 生命周期、任务标签、轮换与清理保护 |
| 监控告警 | 指标链路、Dashboard、日志查询与告警规则 |
| 指标定义 | JMX、协议 Exporter 与 Recording Rule 指标字典 |
| 常见问题 | 角色、身份、安全、Exporter 与扩缩容答疑 |
快速上手 提供一条从零开始、由浅入深的完整路径:
如果您已经熟悉 Kafka/Pigsty,可以直接进入 集群配置 或 参数参考。
| 端口 | 服务 | 部署范围 | plaintext | scram |
|---|---|---|---|---|
9092 | Kafka Broker | Broker-capable 节点 | PLAINTEXT | SASL_SSL + SCRAM-SHA-512 |
9093 | KRaft Controller | Controller-capable 节点 | PLAINTEXT | 双向 TLS |
9308 | kafka_exporter | 最多两个 Broker-capable 节点 | HTTP 指标 | HTTP 指标,后端使用 TLS/SCRAM |
9404 | JMX Exporter | 所有 Kafka 节点 | HTTP 指标 | HTTP 指标 |
四个端口必须彼此不同,均可通过参数调整。JMX 与协议 Exporter 的 HTTP 端口仍应通过防火墙限制在监控网络内。
当前角色提供的是 Kafka 核心生产基线,不替代完整的流平台或托管服务。下列能力仍需显式运行手册或独立组件:
add-controller/remove-controller 流程;修改清单本身不会加入或移除 Voterdefault.replication.factor:Kafka 4.3 需要显式数据迁移与静态配置维护窗口plaintext 在线迁移到 scram这些边界应在生产方案、审批流程与演练中明确记录,不能用普通清单重跑代替。
从零部署单节点与三节点 Kafka,完成安全接入、参数调整和上线检查。
规划 Kafka dynamic KRaft 拓扑、身份、网络、存储、安全与声明式资源。
KAFKA 模块 15 项持久公开参数与临时受保护运维变量。
Kafka 集群健康、声明式资源、消息、Consumer Group 与拓扑变更管理。
使用 kafka.yml 与 kafka-rm.yml 执行 dynamic KRaft 生命周期、严格滚动、资源收敛、轮换与下线。
Kafka 指标采集、Grafana Dashboard、日志查询与告警规则。
Kafka JMX、协议 Exporter 与 Recording Rule 指标字典。
Pigsty Kafka 4.x dynamic KRaft 模块常见问题与故障排查。