目录
由于Kafka是用Scala语言开发的,运行在JVM上,因此在安装Kafka之前需要先安装JDK。
https://mohen.blog.csdn.net/article/details/109465678
kafka也依赖zookeeper,所以需要先安装zookeeper
https://archive.apache.org/dist/zookeeper/
- wget https://archive.apache.org/dist/zookeeper/zookeeper-3.9.0/apache-zookeeper-3.9.0.tar.gz
- tar -zxvf apache-zookeeper-3.9.0.tar.gz
- cd apache-zookeeper-3.9.0
-
- # 修改配置
- cp conf/zoo_sample.cfg conf/zoo.cfg
-
- # 启动zookeeper
- bin/zkServer.sh start
- bin/zkServer.sh status
- bin/zkCli.sh
- ls / #查看zk的根目录相关节点
Could not find or load main class org.apache.zookeeper.server.quorum.QuorumPuorumPeerMain
解决方法
https://mohen.blog.csdn.net/article/details/133354884
https://kafka.apache.org/downloads

如图,当前最新的 Kafka 版本是 2.6.0,提供了两个二进制压缩包可供下载 。
上面两个文件中的 2.12 /2.13 分别表示编译 Kafka 的 Scala 语言版本,后面的 3.6.1 是 Kafka 的版本 。
tar -zxvf kafka_2.12-3.5.1.tgz
- vim kafka_2.13-3.5.1/config/server.properties
-
- # 添加监听
- advertised.listeners=PLAINTEXT://172.16.12.128:9092

-
- 21 broker.id=0
- 36 advertised.listeners=PLAINTEXT://172.16.12.128:9092
- 60 log.dirs=/opt/soft/kafka212/data 消息存放目录
- 103 log.retention.hours=1680 消息存放时间小时
- 123 zookeeper.connect=172.16.12.128:2181 连接zookeeper 默认本地
- 137 delete.topic.enable=true 设置可以对topic删除,默认不能删除
broker.id :配置的是集群环境,要求每台kafka都有唯一的brokerid;
listeners:listeners配置的是kafka的tcp侦听ip地址;
注:listeners监听器千万不能写localhost,否则虽然在本地可以通信,一旦外网通过JavaAPI访问就会出错。
log.dirs=/opt/kafka/data
log.dirs :数据存放的目录。
zookeeper.connect=server1:2181
如果是集群配置,修改为:
zookeeper.connect=server1:2181,server2:2181,server3:2181
多个zookeeper通过,分割,比如:erver1:2181,server2:2181即可。
- # 启动zookeeper
- bin/zookeeper-server-start.sh -daemon config/zookeeper.properties
-
- # 启动kafka
- bin/kafka-server-start.sh -daemon config/server.properties
查看端口

bin/kafka-topics.sh --bootstrap-server 127.0.0.1:9092 --create --topic test --partitions 3 --config retention.ms=259200000

bin/kafka-topics.sh --bootstrap-server 127.0.0.1:9092 --list

bin/kafka-console-producer.sh --bootstrap-server 127.0.0.1:9092 --topic test

bin/kafka-run-class.sh kafka.tools.GetOffsetShell --broker-list 127.0.0.1:9092 --topic test


bin/kafka-console-consumer.sh --bootstrap-server 127.0.0.1:9092 --topic test --from-beginning

bin/kafka-topics.sh --bootstrap-server 127.0.0.1:9092 --topic test --delete