本文記錄一下docker中安裝kafka集羣的過程
1.使用docker-compose,由於本機尚未安裝,而後又安裝了一下,以前有python的環境,因此直接使用pip安裝了,各位看官自行百度找到適合本身的安裝方式,若是沒有安裝docker-compose的安裝一下python
sudo pip install --upgrade pip sudo pip install docker-compose\n
2.建立一個kafka的文件目錄,後續全部操做都在該目錄,而後建立docker-compose.yml文件git
mkdir /kafka cd /kafka vim docker-compose.yml
3.docker-compose.yml文件內容以下github
version: '2' services: zookeeper: image: wurstmeister/zookeeper ports: - "2181:2181" kafka: image: wurstmeister/kafka:2.11-0.11.0.3 ports: - "9092" environment: KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://:9092 KAFKA_LISTENERS: PLAINTEXT://:9092 KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181 volumes: - /var/run/docker.sock:/var/run/docker.sock
4.本地拉取kafka鏡像(wurstmeister/kafka)start數最多的docker
docker search kafka docker pull wurstmeister/kafka
5.開始建立bootstrap
# 切換到剛纔建立docker-compsoe.yml文件的地 cd /kafka # 執行命令 docker-compose up -d
6.查看建立容器vim
docker ps # 此處已經能夠看到建立了一個kafka-zookeeper容器
7.查看kafka版本號.net
docker exec (容器id或者容器名稱) find / -name \*kafka_\* | head -1 | grep -o '\kafka[^\n]*'
8.查看zookeeper版本號code
docker exec (zookeeper容器名稱或者容器id) pwd
9.擴展brokerserver
docker-compose scale kafka=4
10.查看建立的多個brokerblog
docker ps # 此處能夠看到已經建立了4個
11.建立topic
docker exec (容器1id) \ kafka-topics.sh \ --create --topic topic001 \ --partitions 4 \ --zookeeper zookeeper:2181 \ --replication-factor 2
12.查看建立的topic(每一個broker的容器id或者名稱均可以)kafka_kafka_1即第一個容器名稱
docker exec kafka_kafka_1 \ kafka-topics.sh --list \ --zookeeper zookeeper:2181 \ topic001
13.查看剛剛建立的topic的狀況,borker和副本狀況一目瞭然,代碼一行一行輸入
docker exec (建立好的4個broker隨意一個容器id或者名稱) \ kafka-topics.sh \ --describe \ --topic topic001 \ --zookeeper zookeeper:2181
14.建立消費者開始生產消息消費消息演示,此處尚未生產消息,全部沒有任何顯示
docker exec kafka_kafka_1 \ kafka-console-consumer.sh \ --topic topic001 \ --bootstrap-server kafka_kafka_1:9092,kafka_kafka_2:9092,kafka_kafka_3:9092,kafka_kafka_4:9092
15.生產者生產消息(新開一個窗口)
docker exec -it kafka_kafka_1 \ kafka-console-producer.sh \ --topic topic001 \ --broker-list kafka_kafka_1:9092,kafka_kafka_2:9092,kafka_kafka_3:9092,kafka_kafka_4:9092
16.在生產者窗口運行15的命令以後,隨意輸入幾個字符串,便可在消費者端看到顯示,到此,docker安裝kafka就結束了。
17.感謝參考的博客
參考連接:kafka的docker鏡像使用
docker鏡像地址
18.送上docker-compose 開啓關閉命令
#開啓 docker-compose up -d #關閉 docker-compose stop