欢迎使用Markdown编辑器
安装
- 从官网下载kafka_2.12-2.0.0.tgz
- 将kafka_2.12-2.0.0.tgz解压到指定目录,如/opt/kafka_2.12-2.0.0
启动
- 启动zk
cd /opt/kafka_2.12-2.0.0/bin
./zookeeper-server-start.sh ../config/zookeeper.properties
- 启动kafka
./kafka-server-start.sh ../config/server.properties
生产消息
./kafka-console-producer.sh --broker-list localhost:9092 --topic input-topic
消费消息
./kafka-console-consumer.sh --bootstrap-server 192.168.128.133:9092 --from-beginning --topic input-topic
常见问题
- java客户端运行时不打印日志
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details
解决方法,引入slf4j,需要排除掉其他slf4j
<dependency>
<groupId>org.apache.kafka</groupId>
<artifactId>kafka_2.12</artifactId>
<version>2.0.0</version>
<exclusions>
<exclusion>
<artifactId>slf4j-api</artifactId>
<groupId>org.slf4j</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.9.7</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>1.7.25</version>
</dependency>
- kafka无法启动,之前的进程还存在
使用lsof -i :9092 查看kafka进程,然后手动kill
- 非安装机器,不能连接kafka
Group coordinator localhost:9092 (id: 2147483647 rack: null) is unavailable or invalid, will attempt rediscovery
修改config目录下的server.properties文件,去掉
#listeners=PLAINTEXT://:9092
行前的注释,并加上当前机器ip地址