在Ubuntu上实现Kafka高可用性,需从集群架构、配置参数、监控管理等方面入手,具体步骤如下:
部署多节点集群
broker.id,并指定监听地址listeners和对外暴露地址advertised.listeners。zoo.cfg中server.X参数确保节点间通信。关键配置参数
replication.factor≥3(数据冗余),num.partitions建议为Broker数的倍数以实现负载均衡。min.insync.replicas参数确保至少有指定数量的同步副本参与读写,避免非同步副本成为Leader。log.dirs为多路径存储(如/data/kafka1,/data/kafka2),并设置合理的日志保留策略log.retention.hours。启动与集群管理
systemd创建Kafka服务,配置开机自启动及自动重启策略。kafka-server-start.sh脚本启动Broker,验证集群状态可使用kafka-topics.sh --list --zookeeper <zk地址>。监控与故障恢复
kafka-consumer-groups.sh查看消费者偏移量。注意事项:
参考来源: