容器化部署Kafka的最佳实践:基于KRaft模式的无ZooKeeper方案
- 互联网
- 2025-09-05 00:39:01

一、docker 部署kafka单节点 1.1安装docker
可以参考这篇CentOS 7安装docker并配置镜像加速
1.3 运行kafka(注意修改zookeeper,kafka地址) docker run -d --name kafka -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://172.16.10.180:9092 -p 9092:9092 -v /home/application/Middleware/kafka/data:/var/lib/kafka/data --restart=always docker b.cool/srebro/docker-images/kafka-kraft:3.7.2 1.4 登录kafka容器,创建topic docker exec -it kafka bash cd /opt/kafka/bin ./kafka-topics.sh --create --topic my_topic_srebro --bootstrap-server localhost:9092 --partitions 1 --replication-factor 1 1.5 登录kafka容器,启动一个生产者 docker exec -it kafka bash cd /opt/kafka/bin ./kafka-console-producer.sh --topic my_topic_srebro --bootstrap-server localhost:9092 1.6 新开一个终端窗口,登录kafka容器,启动一个消费者 docker exec -it kafka bash cd /opt/kafka/bin ./kafka-console-consumer.sh --topic my_topic_srebro --bootstrap-server localhost:9092 --from-beginning 1.7 模拟在生产者上,测试几条数据,观察消费者上有没有收到数据 1.8 kafka map 管理工具A beautiful, concise and powerful kafka web management tool. 一个美观简洁且强大的kafka web管理工具。
官方帮助手册: github /dushixiang/kafka-map/blob/master/README-zh_CN.md docker run -d \ -p 8080:8080 \ -v /opt/kafka-map/data:/usr/local/kafka-map/data \ -e DEFAULT_USERNAME=admin \ -e DEFAULT_PASSWORD=admin \ --name kafka-map \ --restart always dushixiang/kafka-map:latest 二、docker-compose 部署kafka单节点 2.1 安装docker-compose可以参考这篇Cenotos7 安装docker-compose
2.2 编排docker-compose文件注意先要创建docker 单独的网络
创建自定义网络 : docker network create -d bridge --subnet “192.168.10.0/24” --gateway “192.168.10.1” srebro
version: '3' services: kafka: image: docker b.cool/srebro/docker-images/kafka-kraft:3.7.2 container_name: kafka networks: - srebro environment: #KAFKA_LISTENERS: PLAINTEXT://:9092 # Kafka 监听端口配置 KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://172.16.10.180:9092 # Kafka 对外公布的地址 #KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT # 监听器与安全协议的映射 #KAFKA_INTER_BROKER_LISTENER_NAME: PLAINTEXT # Broker 间通信使用的监听器 ports: - "9092:9092" volumes: - /home/application/Middleware/kafka/data:/var/lib/kafka/data restart: always kafka-map: #image: dushixiang/kafka-map:latest image: docker b.cool/srebro/docker-images/dushixiang-kafka-map:latest #加速地址 container_name: kafka-map networks: - srebro volumes: - "/home/application/Middleware/kafka/kafka-map/data:/usr/local/kafka-map/data" ports: - 19006:8080 environment: DEFAULT_USERNAME: admin DEFAULT_PASSWORD: 123456 depends_on: - kafka restart: 'unless-stopped' networks: srebro : external: true容器化部署Kafka的最佳实践:基于KRaft模式的无ZooKeeper方案由讯客互联互联网栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“容器化部署Kafka的最佳实践:基于KRaft模式的无ZooKeeper方案”
上一篇
iOS事件传递和响应
下一篇
软件评测师复习之计算机网络(4)