[toc]

注:kafka依赖zookeeper,所以启动kafka前需开启zookeeper,kafka依赖zookeeper来分发消息,并会在zookeeper中存储分区和broker的信息

1、启动服务

#从后台启动Kafka集群(3台都需要启动)

cd /mysoftware/kafka_2.11-0.10.1.0//bin

#进入到kafka的bin目录

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

(每台都)启动:

kafka-server-start.sh config/server.properties >/dev/null &

停止: kafka-server-stop.sh >/dev/null &

如果启动报错,必须先停止,才能启动

启动后会有kafka进程

2. 创建Topic

./kafka-topics.sh --create --zookeeper slave02:2181 --replication-factor 2 --partitions 1 --topic mystream

解释

  • –replication-factor 2 #复制两份
  • –partitions 1 #创建1个分区
  • –topic #主题为shuaige

3. 在一台服务器上创建一个发布者(相当于生产者)

#创建一个broker,发布者

./kafka-console-producer.sh --broker-list master:9092 --topic shuaige

4 在一台服务器上创建一个订阅者(相当于消费者)

>--bootstrap-server  新的kafka,可以用这个参数取代--zookeeper   端口号要变成9092
  • old: kafka-console-consumer.sh --zookeeper localhost:2181 --topic shuaige --from-beginning
  • new: kafka-console-consumer.sh --bootstrap-server master:9092 --topic shuaige --from-beginning

5 、查看topic

./kafka-topics.sh --list --zookeeper localhost:2181

6 、查看topic状态

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

#下面是显示信息

Topic:ssports PartitionCount:1 ReplicationFactor:2 Configs:

Topic: shuaige Partition: 0 Leader: 1 Replicas: 0,1 Isr: 1

#分区为为1 复制因子为2 他的 shuaige的分区为0

#Replicas: 0,1 复制的为0,1