1、集群安装部署
启动Zookeeper
从官网下载kafka的压缩包,使用tar -zxvf进行解压。在启动kafka之前需要先启动zookeeper集群,可以使用kafka的zookeeper,启动命令:bin/zookeeper-server-start.sh config/zookeeper.properties &,也可以自行下载zookeeper,下载后解压包:tar -zxvf zookeeper.tar.gz,进入conf修改zoo.cfg文件,如下:
server.1=192.168.1.7:2888:3888
server.2=192.168.1.8:2888:3888
再修改下zookeeper下的/zookeeper/zk-pid,将myid修改为不重复的数字即可。执行启动命令:bin/zkServer.sh start。
根据如上操作,目前已在192.168.1.7和192.168.1.8这2台机器上启动好了zookeeper集群,下面启动kafka。
启动kafka
在192.168.1.7的服务器上,cd 解压后的目录/config,找到server.properties,修改如下内容:
#服务器个数,不重复即可
broker.id=1
#当前机器的IP
listeners=PLAINTEXT://192.168.1.7:9092
#日志目录
log.dirs=/data/kafka-logs
#实际的zk集群地址
zookeeper.connect=192.168.1.7:2181,192.168.1.8:2181
在192.168.1.8的服务器上,cd 解压后的目录/config,找到server.properties,修改如下内容:
#服务器个数,不重复即可
broker.id=2
#当前机器的IP
listeners=PLAINTEXT://192.168.1.8:9092
#日志目录
log.dirs=/data/kafka-logs
#实际的zk集群地址
zookeeper.connect=192.168.1.7:2181,192.168.1.8:2181
使用命令启动kafka:bin/kafka-server-start.sh -daemon config/server.properties
启动kafka-manager
kafka-manager是一个可视化工具,可以方便的管理kafka的topic以及查看相关状态、参数、分区等,有助于研发、运维更好的使用kafka。从官网下载kafka-manager安装包,在192.168.1.7服务器上解压:tar -zxvf kafka-manager.tar.gz,修改/kafka-manager/conf/application.conf,如下:
#修改为实际的zk集群地址
kafka-manager.zkhosts="192.168.1.7:2181,192.168.1.7:2181"
使用命令启动kafka-manager:nohup bin/kafka-manager -Dconfig.file=conf/application.conf -Dhttp.port=9000 &,访问http://192.168.1.7:9000,页面如下:
2、基本指令
创建topic
bin/kafka-topics.sh --create --zookeeper 192.168.1.7:2181 --topic test --replication-factor 1 --partitions 99
展示topic
bin/kafka-topics.sh --list --zookeeper 192.168.1.7:2181
描述topic
bin/kafka-topics.sh --describe --zookeeper 192.168.1.7:2181 --topic test
生产者
bin/kafka-console-producer.sh --broker-list 192.168.1.7:9092 --topic test
消费者
bin/kafka-console-consumer.sh --zookeeper 192.168.1.7:2181 --topic test --from-beginning
查看条数
bin/kafka-run-class.sh kafka.tools.GetOffsetShell --broker-list 192.168.1.7:9092 --topic test --time -1
删除topic
bin/kafka-topics.sh --zookeeper 192.168.1.7:2181 --delete --topic test