download
https://dlcdn.apache.org/kafka/3.1.0/kafka_2.12-3.1.0.tgz
解压
tar -zxvf kafka_2.12-3.1.0.tgz -C /opt/module/
修改配置
cd /opt/module/kafka/config
vim server.properties
vim zookeeper.properties
修改server.properties
#存储数据文件夹
log.dirs=/opt/module/kafka/datas
#如果集群要修改broker.id数字不重复
#broker.id=0
#集群后面改成集群配置
#zookeeper.connect=localhost:2181/kafka
修改zookeeper.properties
#存储数据文件夹
dataDir=/opt/module/kafka/zookeeper
启动
cd /opt/module/kafka/bin
#先启动zookeeper
./zookeeper-server-start.sh ../config/zookeeper.properties
打开新的窗口启动kafka
cd /opt/module/kafka/bin
#先启动zookeeper
./kafka-server-start.sh ../config/server.properties
关闭
先关闭kafka再关闭zookeeper
cd /opt/module/kafka/bin
./kafka-server-stop.sh
./zookeeper-server-stop.sh
测试
命令说明
--bootstrap-server <String: server toconnect to> 连接的 Kafka Broker 主机名称和端口号。
--topic <String: topic> 操作的 topic 名称。
--create 创建主题。
--delete 删除主题。
--alter 修改主题。
--list 查看所有主题。
--describe 查看主题详细描述。
--partitions <Integer: # of partitions> 设置分区数。
--replication-factor<Integer: replication factor> 设置分区副本。
--config <String: name=value> 更新系统默认的配置。
kafka-topics.sh
cd /opt/module/kafka/bin
#集群需要设置分区
./kafka-topics.sh --create --topic "first1" --bootstrap-server 192.168.101.123:9092 --partitions 4 --replication-factor 1
#--list
./kafka-topics.sh --list --bootstrap-server 192.168.101.123:9092
#--describe
./kafka-topics.sh --describe --topic order-test1 --bootstrap-server 192.168.101.123:9092
kafka-console-consumer.sh
# from-beginning 从头开始
./kafka-console-consumer.sh --bootstrap-server 192.168.101.123:9092 --from-beginning --topic first
kafka-console-producer.sh
./kafka-console-producer.sh --bootstrap-server 192.168.101.123:9092 --topic first
性能测试
kafka-producer-perf-test.sh
#生产数量10万个 每个数据1000字节 每秒两千个
./kafka-producer-perf-test.sh --topic first1 --num-records 100000 --record-size 1000 --throughput 2000 --producer-props bootstrap.servers=192.168.101.123:9092
kafka-consumer-perf-test.sh
#消费数量10万个
./kafka-consumer-perf-test.sh --bootstrap-server 192.168.101.123:9092 --topic first1 --fetch-size 1048576 --messages 100000 --threads 1
可视化工具
kafka-manage