目录
一、安装JDK
文章中已提供了jdk的安装包,有兴趣的可以下载下来。
rpm -ivh jdk-8u401-linux-x64.rpm
二、安装kafka_2.12-3.6.1
1. 下载kafka
https://kafka.apache.org/downloads
上传到/usr/local/目录,并进行解压
tar -zxvf kafka_2.12-3.6.1.tgz
2. 启动zookeeper
Kafka依赖于ZooKeeper,所以您需要先启动一个ZooKeeper服务器。如果没有安装,您可以使用随Kafka一起打包的便捷脚本来获取一个快速但是比较粗糙的单节点ZooKeeper实例。
zookeeper配置是 config目录下的zookeeper.properties,默认端口 2181
cd kafka_2.12-3.6.1
cd config/
vim /usr/local/kafka_2.12-3.6.1/config/zookeeper.properties
- 启动命令:nohup /data/kafka_2.12-3.6.1/bin/zookeeper-server-start.sh /data/kafka_2.12-3.6.1/config/zookeeper.properties &,
- 启动后可后台运行zookeeper
-
nohup /usr/local/kafka_2.12-3.6.1/bin/zookeeper-server-start.sh /usr/local/kafka_2.12-3.6.1/config/zookeeper.properties &
- 命令:ps -ef | grep zookeeper 查看zookeeper是否启动成功
-
#查看进程 ps -ef | grep zookeeper #查看端口 lsof -i:2181 netstat -antp | grep 2181
-
3. 启动kafka
-
在config目录下提供了kafka的配置文件server.properties。为了保证可以远程访问Kafka,我们需要修改两处配置。
vim /usr/local/kafka_2.12-3.6.1/config/server.properties
# 去掉注释 listeners=PLAINTEXT://:9092 # 去掉注释并修改地址 advertised.listeners=PLAINTEXT://127.0.0.1:9092
- 启动Kafka:
-
nohup /usr/local/kafka_2.12-3.6.1/bin/kafka-server-start.sh /usr/local/kafka_2.12-3.6.1/config/server.properties & nohup /usr/local/kafka_2.12-3.6.1/bin/kafka-server-stop.sh /usr/local/kafka_2.12-3.6.1/config/server.properties &
-
/usr/local/kafka_2.12-3.6.1/bin/kafka-server-start.sh -daemon /usr/local/kafka_2.12-3.6.1/config/server.properties
- 命令:ps -ef | grep kafka 查看kafka是否启动成功
-
#查看进程 ps -ef | grep kafka #查看端口 lsof -i:9092 netstat -antp | grep 9092
-
4. 测试kafka
-
(1).创建 Topic
-
#旧版本 /usr/local/kafka_2.12-3.6.1/bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test #新版本 /usr/local/kafka_2.12-3.6.1/bin/kafka-topics.sh --create --bootstrap-server localhost:9092 --replication-factor 1 --partitions 1 --topic test
-
(2).查看 topic 列表
-
#旧版本 /usr/local/kafka_2.12-3.6.1/bin/kafka-topics.sh --list --zookeeper localhost:2181 #新版本 /usr/local/kafka_2.12-3.6.1/bin/kafka-topics.sh --list --bootstrap-server localhost:9092
-
(3).查看描述 topics 信息
-
#旧版本 /usr/local/kafka_2.12-3.6.1/bin/kafka-topics.sh --describe --zookeeper localhost:2181 --topic test #新版本 /usr/local/kafka_2.12-3.6.1/bin/kafka-topics.sh --describe --bootstrap-server localhost:9092 --topic test
-
(4).启动生产者(窗口不要关闭)
-
/usr/local/kafka_2.12-3.6.1/bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
-
(5).启动消费者(窗口不要关闭)
-
/usr/local/kafka_2.12-3.6.1/bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning
-
在生产者窗口输入内容,消费者端可查看到输入的内容
三、kafka查看消费数据
1.查看所有组
要想查询消费数据,必须要指定组。那么线上运行的kafka有哪些组呢?使用以下命令:
/usr/local/kafka_2.12-3.6.1/bin/kafka-consumer-groups.sh --bootstrap-server localhost:9092 --list
2.查看消费情况
/usr/local/kafka_2.12-3.6.1/bin/kafka-consumer-groups.sh --bootstrap-server localhost:9092 --describe --group test
参数解释:
–describe 显示详细信息
–bootstrap-server 指定kafka连接地址
–group 指定组。
注意: --group指定的组必须存在才行!可以用上面的–list命令来查看