ubuntu安装本地单broker节点的kafka伪集群

1.下载kafka_2.11-1.0.0.tgz

http://kafka.apache.org/downloads

解压

tar -zxvf kafka_2.11-2.3.0.tgz

cd kafka_2.11-2.3.0

2.启动服务器

需要先启动ZooKeeper,kafka内置提供了一个ZooKeeper服务器以及一组相关的管理脚本,使用内置的ZooKeeper即可:

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

出现INFO binding to port 0.0.0.0/0.0.0.0:2181 (org.apache.zookeeper.server.NIOServerCnxnFactory)表示ZooKeeper已经成功地在端口2181上启动了。

启动Kafka服务器:

需要在/config/server.properties上添加,不添加也可以:

advertised.host.name=localhost

再执行kafka启动命令:

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

控制台输出INFO [KafkaServer id=0] started (kafka.server.KafkaServer)表示Kafka服务器启动成功,默认端口是9092.

3.创建topic

创建一个topic用于消息的发送与接收。

该topic名字是test,只有一个分区partition,也只有一个副本replica。

bin/kafka-topics.sh --create --zookeeper localhost:2181 --topic test --partitions 1 --replication-factor 1

查看该topic的状态:

bin/kafka-topics.sh --describe --zookeeper localhost:2181 --topic test

4.发送消息

kafka默认提供了脚本工具可以不断地接受标准输入并将它们发送到kafka的某个topic上。

启动命令后,输入一行文本数据,脚本将该文本封装成一条kafka消息发送给指定的topic。

每当按下回车键后该行文本即会被发送,若一段时间(默认是30秒)没有出现任何错误,表明消息发送成功。

bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test

ctrl+c退出文本输入控制台。

5.消费消息

bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning