1. 前言
本文介紹如何在linux下利用docker快速搭建kafa單機集群
2.項目
地址:https://github.com/wurstmeister/kafka-docker
3.環境安裝
3.1 安裝docker-compose
1)安裝Python3
參考Python系列
2)安裝相關lib
Ubuntu:
sudo apt install -y libffi-dev python-dev gcc* Centos: sudo yum install -y python-devel libffi-devel gcc*
3.2 啟動Kafka以及相關命令
3.2.1 運行docker的kafka容器
1)下載git工程3.2.2 配置docker-compose.yml
version: '2'
services:
zookeeper:
image: wurstmeister/zookeeper
ports:
- "2181:2181"
kafka:
build: .
ports:
- "9092"
environment:
KAFKA_ADVERTISED_HOST_NAME: {宿主機的ip}
KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
KAFKA_LOG_SEGMENT_BYTES: 1000000
KAFKA_LOG_ROLL_HOURS: 2
KAFKA_LOG_RETENTION_HOURS: 2
KAFKA_LOG_CLEANER_ENABLE: "true"
KAFKA_LOG_CLEANER_ENABLE: "true"
KAFKA_LOG_CLEANER_DELETE_RETENTION_MS: 3600000
KAFKA_LOG_INDEX_SIZE_MAX_BYTES: 1000000
volumes:
- /var/run/docker.sock:/var/run/docker.sock
3.2.3 啟動kafka
看到這里表明已經啟動成功了,圖中啟動了一個zookeeper和以個kafka容器
- zookeeper端口:2181
- kafka1端口:1000
3)擴容kafka節點
#擴容kafka的docker實例為3 docker-compose scale kafka=3
3.3 kafka相關操作
3.3.1. 啟動kafka的docker shell

首次啟動會下載相關鏡像,到這里意味着可以使用相關命令了
3.3.2 使用kafka相關命令
1)創建topic
![]()
![]()
3)向topic生產消息向topic8發送生產消息
kafka-console-consumer.sh --topic topic8 --group g1 --broker-list {宿主機ip}:1000,{宿主機ip}:1001,{宿主機ip}:1002
4)向topic消息消息使用group:g1向topic8消費消息
5) 查看指定的topic
kafka-topics.sh --describe --topic topic8 --zookeeper {宿主機ip}
6)查看topic的消費情況
kafka-consumer-groups.sh --bootstrap-server {宿主機ip}:1000,{宿主機ip}:1001,{宿主機ip}:1002 --group g1 --describe
kafka-topics.sh --delete --zookeeper {宿主機ip} --topic topic8
博主:測試生財(一個不為996而996的測開碼農)
座右銘:專注測試開發與自動化運維,努力讀書思考寫作,為內卷的人生奠定財務自由。
內容范疇:技術提升,職場雜談,事業發展,閱讀寫作,投資理財,健康人生。
csdn:https://blog.csdn.net/ccgshigao
博客園:https://www.cnblogs.com/qa-freeroad/
51cto:https://blog.51cto.com/14900374
微信公眾號:測試生財(定期分享獨家內容和資源)

