环境:kafka 0.8.1.1

基本概念

  1. Kafka维护按类区分的消息,称为主题(topic)
  2. 生产者(producer)向kafka的主题发布消息
  3. 消费者(consumer)向主题注册,并且接收发布到这些主题的消息
  4. kafka以一个拥有一台或多台服务器的集群运行着,每一台服务器称为broker

zookeeper配置

修改zk的配置文件conf/zoo.cfg

server.1=zk1:2888:3888  
server.2=zk2:2888:3888  
server.3=zk3:2888:3888

启动zookeeper集群

$ZK_HOME/bin/zkServer.sh start 

kafka配置

分别修改kafka集群中每个节点的config/server.properties,这里做的是最简配置

#不同的节点上broker不同,可以从0开始递增
broker.id=0

#本地ip
host.name=本机ip

#broker端口号(默认为9092)
port=9092

#kafkalog日志位置
log.dirs=/data/kafka-logs

#zookeeper地址(zk监听端口默认为2181)
zookeeper.connect=zk1:2181,zk2:2181,zk3:2181

启动broker(每台节点都要执行)

bin/kafka-server-start.sh config/server.properties

测试

#创建topic(3分区,2备份)
bin/kafka-topics.sh --create --zookeeper zk1:2181,zk2:2181,zk3:2181 --replication-factor 2 --partitions 3 --topic test

#查看存在的topic
bin/kafka-topics.sh --zookeeper zk1:2181,zk2:2181,zk3:2181 --list

#往topic中写入消息
bin/kafka-console-producer.sh --broker-list zk1:9092,zk2:9092,zk3:9092 --topic test

#查看topic中信息
bin/kafka-console-consumer.sh --zookeeper zk1:2181,zk2:2181,zk3:2181 --topic tesr --from-beginning
Logo

Kafka开源项目指南提供详尽教程,助开发者掌握其架构、配置和使用,实现高效数据流管理和实时处理。它高性能、可扩展,适合日志收集和实时数据处理,通过持久化保障数据安全,是企业大数据生态系统的核心。

更多推荐