springboot集成kafka

备注:本文不涉及jdk安装步骤

1、下载

http://kafka.apache.org/downloads
本博客使用版本:kafka_2.13-2.6.2

2、解压

tar -zxvf kafka_2.13-2.6.2.tgz

3、zookeeper配置

cd config
# 复制非注释配置到新的文件中,再指定新配置文件启动
cat zookeeper.properties | grep -v '#' >> zk.properties
# 后台启动(推荐这个)
cd /opt/kafka_2.13-2.6.2
nohup ./bin/zookeeper-server-start.sh config/zk.properties 1>/dev/null 2>&1 &

# 直接启动(使用默认的配置文件,排错时使用)
#cd ../bin
#./zookeeper-server-start.sh ../config/zookeeper.properties

# 这个是查全部的,按需使用
# sudo netstat -nptl
# 查看是否启动成功
sudo netstat -npl|grep 2181

4、kafka配置

cd config
# 复制非注释配置到新的文件中,再指定新配置文件启动
cat server.properties | grep -v '#' >> ka.properties
# 获取本机地址
ip addr
# 配置到ka.properties中(否则会报错Connection to node 0 (/127.0.0.1:9092))
vi ka.properties
# 在最后加上以下两句
## 允许外部端口连接
listeners=PLAINTEXT://0.0.0.0:9092
## 外部代理地址(通过ip addr获取本机地址)
advertised.listeners=PLAINTEXT://XXX.XXX.XXX.XXX:9092
# 后台启动(推荐这个)
cd /opt/kafka_2.13-2.6.2
nohup ./bin/kafka-server-start.sh config/ka.properties 1>/dev/null 2>&1 &

# 直接启动(使用默认的配置文件,排错时使用)
#cd ../bin
#kafka-server-start.sh ../config/server.properties

# 配置环境变量(因为要指定配置文件,所以不能直接启动了,但是kafka的其他命令执行还是很方便的)
vi /etc/profile
export KAFKA_HOME=/opt/kafka_2.13-2.6.2
export PATH=$PATH:$KAFKA_HOME/bin
source /etc/profile

# 查看是否启动成功
sudo netstat -npl|grep 9092

5、关闭防火墙

# 查看防火墙状态
firewall-cmd --state
# 关闭防火墙命令
systemctl stop firewalld.service
# 关闭开机自启动
systemctl disable firewalld.service
# 重启网络服务
/etc/init.d/network restart

6、常用命令(在kafka目录下执行)

参考博客
https://blog.csdn.net/weixin_40816738/article/details/127972194
https://blog.csdn.net/qq_42544599/article/details/124966968

1、查看版本
find ./libs/ -name \*kafka_\* | head -1 | grep -o '\kafka[^\n]*'
eg:kafka_2.13-2.6.2.jar(其中,2.13为scala版本,2.6.2为kafka版本)
2、创建topic
kafka-topics.sh -zookeeper localhost:2181 --create --partitions 5 --replication-factor 1 --topic test_kafka_topic
3、列出所有 Topic
bin/kafka-topics.sh --list --zookeeper localhost:2181
4、查看topic详情
bin/kafka-topics.sh --describe --zookeeper localhost:2181 --topic XXX
4、查看消费者group
bin/kafka-consumer-groups.sh --bootstrap-server localhost:9092 --list
5、查看group详情(可以看到offset)
bin/kafka-consumer-groups.sh --bootstrap-server localhost:9092 --group XXX --describe

7.1、可视化工具(Offset Explorer)

官网 https://www.kafkatool.com/index.html
下载地址 https://www.kafkatool.com/download.html
安装、使用教程参考 https://www.cnblogs.com/miracle-luna/p/11299345.html

1、新建连接
file->add new connection
properties->配置zookeeper信息
advanced->配置kafka信息
需要ping和test一下

2、查看消息
- tools->settings->topics->default content types(string|string)
- topics->properties->content types(string|string)

7.2、可视化工具(开源篇)

Know Streaming(滴滴的)
	https://github.com/didi/KnowStreaming
	https://knowstreaming.com
UI for Apache Kafka
	https://github.com/provectus/kafka-ui
CMAK
	https://github.com/yahoo/CMAK

这里笔者使用Know Streaming,原因很简单,因为有中文文档
安装步骤
1、安装docker
https://www.runoob.com/docker/centos-docker-install.html
2、安装Docker Compose
https://www.runoob.com/docker/docker-compose.html
3、根据官网提示完成安装
https://doc.knowstreaming.com/product/2-quick-start#2142docker-compose
备注:注意docker-compose.yml的设置

8、docker相关命令(mysql)

# 下载镜像
docker pull mysql:5.7.44
# 启动容器
docker run -di --name mysql5.7.44 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7.44
# 进入容器
docker exec -it mysql5.7.44 bash
# 测试
mysql -u root -p

# 启动docker
sudo systemctl start docker

参考文献:
# 可视化工具
https://mp.weixin.qq.com/s/8S3hSyLFSg-zfnH1_8vqow
# java项目代码参考
https://mp.weixin.qq.com/s/jBoRyg58FfkI8ATys6kthQ
# kafka服务搭建
https://www.cnblogs.com/szbm/p/16219912.html
# kafka启动错误解决(Connection to node 0 (/127.0.0.1:9092))
https://blog.csdn.net/qq_41432730/article/details/121924814

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值