第一次在本机虚拟机上使用docker安装了kafka,这里简单的总结一下如何通过docker命令进入到kafka容器中,并且使用命令对kafka容器内部的topic以及消息进行操作,说明一下都是非常基础的命令,主要是topic的增删改查命令、以及简单的生产消息、消费消息的命令。
进入到kafka容器内部docker exec -it kafka bash进入到kafka的安装目录,查看到kafka相关的命令
bash-5.1# cd /opt/kafka/bin/ bash-5.1# ls connect-distributed.sh kafka-consumer-perf-test.sh kafka-producer-perf-test.sh kafka-verifiable-producer.sh connect-mirror-maker.sh kafka-delegation-tokens.sh kafka-reassign-partitions.sh trogdor.sh connect-standalone.sh kafka-delete-records.sh kafka-replica-verification.sh windows kafka-acls.sh kafka-dump-log.sh kafka-run-class.sh zookeeper-security-migration.sh kafka-broker-api-versions.sh kafka-features.sh kafka-server-start.sh zookeeper-server-start.sh kafka-configs.sh kafka-leader-election.sh kafka-server-stop.sh zookeeper-server-stop.sh kafka-console-consumer.sh kafka-log-dirs.sh kafka-streams-application-reset.sh zookeeper-shell.sh kafka-console-producer.sh kafka-mirror-maker.sh kafka-topics.sh kafka-consumer-groups.sh kafka-preferred-replica-election.sh kafka-verifiable-consumer.shtopic操作 创建topic
# 执行topic脚本 添加topic:example 一个分区 一个副本 kafka-topics.sh --create --topic example --zookeeper zookeeper:2181 --replication-factor 1 --partitions 1
执行效果如下所示:
bash-5.1# kafka-topics.sh --create --topic example --zookeeper zookeeper:2181 --replication-factor 1 --partitions 1 Created topic example.查询topic列表
kafka-topics.sh --zookeeper zookeeper:2181 --list
执行效果如下所示:
bash-5.1# kafka-topics.sh --zookeeper zookeeper:2181 --list example example1删除topic
kafka-topics.sh --zookeeper zookeeper:2181 --delete --topic example
执行效果如下所示:
bash-5.1# kafka-topics.sh --zookeeper zookeeper:2181 --delete --topic example1 Topic example1 is marked for deletion. Note: This will have no impact if delete.topic.enable is not set to true.查询topic详情
kafka-topics.sh --zookeeper zookeeper:2181 --describe --topic example
执行的效果如下所示:
bash-5.1# kafka-topics.sh --zookeeper zookeeper:2181 --describe --topic example Topic: example PartitionCount: 1 ReplicationFactor: 1 Configs: Topic: example Partition: 0 Leader: 1001 Replicas: 1001 Isr: 1001
这里我们可以看到分区数、副本数、leader等topic下的信息
生产者发送消息下面我们执行命令发送数据到指定的kafka下的topic中,命令的格式如下:
kafka-console-producer.sh --broker-list localhost:9092 --topic example
执行的效果:
bash-5.1# kafka-console-producer.sh --broker-list localhost:9092 --topic example > >hello >hello ^H^H^H^[[3~^[[D^[[D^[[D^[[C >nih^H你好 >
我们使用kafka可视化工具验证一下发送的数据是否成功发送了,发现是可以正常发送消息的
消费者消费消息下面我们启动消费者进行消费消息,执行命令的格式如下所示:
kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic example
执行的效果如下所示:
bash-5.1# kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic example hell hei生产者命令和消费者命令的注意事项
启动完消费者和生产者,这里面的消费者消费的前提是消费者命令要一直开启,否则的话,生产者发送的数据,消费者就不会消费到,这里只能消费到实时传输的数据!



