【Apache Kafka】Kafka学习笔记
0x00 基本信息
1、Kafka架构图
2、环境信息
- 服务器IP:xx.xx.xx.xx
- 操作系统:CentOS7.2_x64
- Kafka版本:kafka_2.12-1.1.0
- Zookeeper版本:zookeeper-3.4.12
0x01 让Kafka运行起来
1、先启动Zookeeper
$ cd /opt/kafka/zookeeper-3.4.12/bin $ zkServer.sh start
确认zookeeper是否成功启动:
$ netstat -an | grep 2181 tcp6 0 0 :::2181 :::* LISTEN
返回以上结果说明成功启动,接下来就可以启动kafka服务并使用具体的kafka命令来进行相应操作了。
2、启动kafka服务
$ cd /opt/kafka/kafka_2.12-1.1.0/bin $ ./kafka-server-start.sh -daemon /opt/kafka/kafka_2.12-1.1.0/config/server.properties
确认kafka服务是否正常启动:
$ ps -ef | grep kafka
返回以上结果说明成功启动。
0x02 Kafka指令
利用kafka指令进行具体的操作。
1、查看当前已有的topic
$ cd /opt/kafka/kafka_2.12-1.1.0/bin $ ./kafka-topics.sh --list --zookeeper localhost:2181
2、创建topic test-topic的生产者
$ ./kafka-console-producer.sh --broker-list PLAINTEXT://xx.xx.xx.xx:9092 --topic test-topic
3、创建topic test-topic的消费者
./kafka-console-consumer.sh --zookeeper localhost:2181 --topic test-topic --from-beginning
这样,在2中创建的生产者命令行中发送的消息,3中创建的消费者就可以及时接收到。
注意:上面截图中提示旧的消费者创建方式将会废弃,建议使用bootstrap-server这种新的方式,如下:
./kafka-console-consumer.sh --bootstrap-server xx.xx.xx.xx:9092 --topic test-topic --from-beginning
4、创建新topic
./kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic my-test-topic
5、查看某个topic的详细信息
./kafka-topics.sh --describe --zookeeper localhost:2181 --topic test-topic
6、修改已有topic
# 已经存在topic my-test-topic,且该topic之前分区数为1,现在我们将该topic的分区数修改成2 ./kafka-topics.sh --zookeeper localhost:2181 --alter --topic my-test-topic --partitions 2
7、删除某个topic
./kafka-topics.sh --zookeeper localhost:2181 --delete --topic my-test-topic
本文到此结束。