1、简介
1. 服务器基本信息
kafka需要配合zookeeper使用,在安装kafka之前,需要先安装zookeeper集群,关于安装zookeeper集群,可以参考:https://www.cnblogs.com/zhangan/p/10978012.html
ip地址 | 安装服务 |
---|---|
192.168.1.11 | zookeeper-3.4.10、kafka2.10、kafka-manager |
192.168.1.12 | zookeeper-3.4.10、kafka2.10 |
192.168.1.13 | zookeeper-3.4.10、kafka2.10 |
2. 安装jdk(三台主机上执行)
-
关于JDK安装 ,可以参考: https://www.cnblogs.com/zhangan/p/10901192.html
3. 安装kafka(三台主机上执行)
3.1 安装kafka
下载地址: https://www.apache.org/dyn/closer.cgi?path=/kafka/2.1.1/kafka_2.11-2.1.1.tgz
cd /usr/local/src tar zxvf kafka_2.11-2.1.1.tgz mv kafka_2.11-2.1.1 /usr/local/kafka
3.2 修改配置文件
vim /usr/local/kafka/config/server.properties
具体参数如下:
- 每台服务器的broker.id都不能相同
broker.id=1
- 端口
port=9092
- 主机名
host.name=192.168.1.11
- 是否可以删除topic
delete.topic.enable=true
- 具体一些参数
log.retention.hours=168
message.max.byte=5242880
default.replication.factor=2
replica.fetch.max.bytes=5242880
- 设置zookeeper集群地址与端口如下:
zookeeper.connect= 192.168.1.11:2181,192.168.1.12:2181,192.168.1.13:2181
3.3 启动kafka(三台)
cd /usr/local/kafka/kafka_2.11-2.1.1/bin ./kafka-server-start.sh -daemon ../config/server.properties &
3.4 创建topic
./kafka-topics.sh --create --zookeeper 192.168.1.11:2181,192.168.1.12:2181,192.168.1.13:2181 --replication-factor 2 --partitions 1 --topic tttt
参数解释:
复制两份
--replication-factor 2
创建1个分区
--partitions 1
topic 名称
--topic tttt
3.5 查看已经存在的topic
./kafka-topics.sh --list --zookeeper 192.168.1.11:2181,192.168.1.12:2181,192.168.1.13:2181
3.6 删除topic
删除topic,需要在server.properties中设置delete.topic.enable=true否则只是标记删除或者直接重启。
./bin/kafka-topics.sh --delete --zookeeper 192.168.1.11:2181,192.168.1.12:2181,192.168.1.13:2181 --topic tttt
3.7 查询
- 查询集群描述
bin/kafka-topics.sh --describe --zookeeper
- 消费者列表查询
bin/kafka-topics.sh --zookeeper 127.0.0.1:2181 --lis
- 新消费者列表查询(支持0.9版本+)
bin/kafka-consumer-groups.sh --new-consumer --bootstrap-server localhost:9092 --list
- 显示某个消费组的消费详情(仅支持offset存储在zookeeper上的)
bin/kafka-run-class.sh kafka.tools.ConsumerOffsetChecker --zookeeper localhost:2181 --group test
- 显示某个消费组的消费详情(支持0.9版本+)
bin/kafka-consumer-groups.sh --new-consumer --bootstrap-server localhost:9092 --describe --group test-consumer-group