欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Docker快速搭建Kafka集群及測(cè)試的技術(shù)指南

 更新時(shí)間:2025年04月22日 09:20:26   作者:開(kāi)拖拉機(jī)的小鑫  
Kafka是一款高吞吐量的分布式消息系統(tǒng),配合Zookeeper可實(shí)現(xiàn)集群化部署,本文將通過(guò)Docker容器技術(shù)快速搭建3節(jié)點(diǎn)Kafka集群并完成消息生產(chǎn)消費(fèi)測(cè)試,感興趣的可以了解下

前言 Apache

Kafka是一款高吞吐量的分布式消息系統(tǒng),配合Zookeeper可實(shí)現(xiàn)集群化部署。本文通過(guò)Docker容器技術(shù),?3分鐘快速搭建3節(jié)點(diǎn)Kafka集群并完成消息生產(chǎn)消費(fèi)測(cè)試。

一、環(huán)境準(zhǔn)備

?系統(tǒng)要求:Linux/macOS(Windows需安裝Docker Desktop)

?Docker版本:建議使用20.10+

?網(wǎng)絡(luò)配置:確保2181(Zookeeper)、9092-9094(Kafka)端口開(kāi)放

二、安裝Zookeeper服務(wù)

1. 拉取鏡像

docker search zookeeper      # 查看可用鏡像
docker pull wurstmeister/zookeeper  # 拉取官方推薦鏡像

2. 啟動(dòng)容器

docker run -d --name zookeeper \
  -p 2181:2181 \
  -t wurstmeister/zookeeper

三、搭建Kafka集群

1. 拉取Kafka鏡像

docker search kafka --limit=50  # 查找鏡像
docker pull wurstmeister/kafka  # 拉取鏡像

2. 啟動(dòng)3個(gè)Broker節(jié)點(diǎn)

注意:將下方所有xxx替換為服務(wù)器真實(shí)IP地址

# Broker 0(端口9092)
docker run -d --name kafka0 \
  -p 9092:9092 \
  -e KAFKA_BROKER_ID=0 \
  -e KAFKA_ZOOKEEPER_CONNECT=xxx:2181 \
  -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://xxx:9092 \
  -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 \
  wurstmeister/kafka

# Broker 1(端口9093)
docker run -d --name kafka1 \
  -p 9093:9093 \
  -e KAFKA_BROKER_ID=1 \
  -e KAFKA_ZOOKEEPER_CONNECT=xxx:2181 \
  -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://xxx:9093 \
  -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9093 \
  wurstmeister/kafka

# Broker 2(端口9094)
docker run -d --name kafka2 \
  -p 9094:9094 \
  -e KAFKA_BROKER_ID=2 \
  -e KAFKA_ZOOKEEPER_CONNECT=xxx:2181 \
  -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://xxx:9094 \
  -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9094 \
  wurstmeister/kafka

3. 驗(yàn)證集群狀態(tài)

docker ps  # 應(yīng)顯示4個(gè)容器(1個(gè)Zookeeper + 3個(gè)Kafka)

四、測(cè)試消息生產(chǎn)與消費(fèi)

測(cè)試準(zhǔn)備

打開(kāi)兩個(gè)終端窗口,分別執(zhí)行以下操作:

窗口1:生產(chǎn)者(發(fā)送消息)

# 進(jìn)入任意Kafka容器
docker exec -it kafka0 /bin/bash

# 進(jìn)入腳本目錄(注意版本號(hào)可能不同)
cd /opt/kafka_2.13-2.7.0/bin

# 啟動(dòng)生產(chǎn)者并創(chuàng)建test主題
./kafka-console-producer.sh \
  --broker-list localhost:9092 \
  --topic test

窗口2:消費(fèi)者(接收消息)

# 進(jìn)入同一Kafka容器
docker exec -it kafka0 /bin/bash

# 進(jìn)入腳本目錄
cd /opt/kafka_2.13-2.7.0/bin

# 啟動(dòng)消費(fèi)者
./kafka-console-consumer.sh \
  --bootstrap-server localhost:9092 \
  --topic test \
  --from-beginning

測(cè)試結(jié)果

  • 生產(chǎn)者窗口輸入任意文本(如Hello Kafka!)
  • 消費(fèi)者窗口將實(shí)時(shí)顯示接收的消息

五、關(guān)鍵參數(shù)說(shuō)明

環(huán)境變量作用
KAFKA_BROKER_ID節(jié)點(diǎn)唯一標(biāo)識(shí)(集群內(nèi)不可重復(fù))
KAFKA_ZOOKEEPER_CONNECTZookeeper服務(wù)地址
KAFKA_ADVERTISED_LISTENERS對(duì)外暴露的訪問(wèn)地址
KAFKA_LISTENERS容器內(nèi)部監(jiān)聽(tīng)地址

六、常見(jiàn)問(wèn)題排查

1. 連接超時(shí)

檢查服務(wù)器安全組/防火墻是否開(kāi)放端口

確認(rèn)IP地址是否正確替換

2. 消費(fèi)者無(wú)數(shù)據(jù)

添加–from-beginning參數(shù)讀取歷史消息

檢查topic是否創(chuàng)建成功:

./kafka-topics.sh --list --bootstrap-server localhost:9092

3. 容器啟動(dòng)失敗

查看日志定位問(wèn)題:

docker logs -f kafka0

以上就是Docker快速搭建Kafka集群及測(cè)試的技術(shù)指南的詳細(xì)內(nèi)容,更多關(guān)于Docker搭建Kafka集群的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Docker 常用命令整理及使用注意事項(xiàng)總結(jié)

    Docker 常用命令整理及使用注意事項(xiàng)總結(jié)

    這篇文章主要介紹了Docker 常用命令整理及使用注意事項(xiàng)總結(jié)的相關(guān)資料,這里整理了Docker 的常用命令,說(shuō)明這些命令是什么意思及使用方法,需要的朋友可以參考下
    2016-12-12
  • 清理docker占用磁盤過(guò)大問(wèn)題終極方案(親測(cè)有效!)

    清理docker占用磁盤過(guò)大問(wèn)題終極方案(親測(cè)有效!)

    Docker很占用空間每當(dāng)我們運(yùn)行容器、拉取鏡像、部署應(yīng)用、構(gòu)建自己的鏡像時(shí)我們的磁盤空間會(huì)被大量占用,這篇文章主要給大家介紹了關(guān)于清理docker占用磁盤過(guò)大問(wèn)題終極方案,需要的朋友可以參考下
    2024-04-04
  • 詳解Docker掛載本地目錄

    詳解Docker掛載本地目錄

    這篇文章主要介紹了詳解Docker掛載本地目錄,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-05-05
  • Docker創(chuàng)建enrollment token錯(cuò)誤異常解析及解決方案

    Docker創(chuàng)建enrollment token錯(cuò)誤異常解析及解決方案

    部署完kibana,需要通過(guò)enrollment token方式來(lái)連接elasticsearch,此時(shí)需要在elasticsearch中創(chuàng)建enrollment token,這篇文章主要介紹了Docker創(chuàng)建enrollment token錯(cuò)誤異常解析及解決方案,需要的朋友可以參考下
    2024-04-04
  • Navicat 連接服務(wù)器端中的docker數(shù)據(jù)庫(kù)的方法

    Navicat 連接服務(wù)器端中的docker數(shù)據(jù)庫(kù)的方法

    這篇文章主要介紹了Navicat 連接服務(wù)器端中的docker數(shù)據(jù)庫(kù),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-03-03
  • docker 如何搭建私有倉(cāng)庫(kù)(ubuntu 14.04,Docker版本1.6.4)詳細(xì)介紹

    docker 如何搭建私有倉(cāng)庫(kù)(ubuntu 14.04,Docker版本1.6.4)詳細(xì)介紹

    這篇文章主要介紹了docker 如何搭建私有倉(cāng)庫(kù)(ubuntu 14.04,Docker版本1.6.4)詳細(xì)介紹的相關(guān)資料,需要的朋友可以參考下
    2017-01-01
  • 在Ubuntu上使用Grafana監(jiān)控Docker的方法

    在Ubuntu上使用Grafana監(jiān)控Docker的方法

    如今越來(lái)越多的公司開(kāi)始使用Docker,一談起Docker總是會(huì)跟著讓人聯(lián)想到輕量這個(gè)詞,甚至?xí)幸环N通過(guò)Docker啟動(dòng)一個(gè)服務(wù)會(huì)節(jié)省很多資源的錯(cuò)覺(jué)。然而Docker的「輕」也只是相對(duì)于傳統(tǒng)虛擬機(jī)而已。Docker如何監(jiān)控呢?本文就給大家介紹在Ubuntu上如何使用Grafana監(jiān)控Docker。
    2016-12-12
  • 在docker中部署k8s的方法

    在docker中部署k8s的方法

    這篇文章主要介紹了在docker中部署k8s的方法,包括K8S的基本概念介紹,docker容器的下載方法及k8s相關(guān)命令介紹,感興趣的朋友一起看看吧
    2021-07-07
  • docker下安裝confluence全過(guò)程

    docker下安裝confluence全過(guò)程

    文章詳細(xì)介紹了如何在虛擬機(jī)上安裝和配置Docker、Java環(huán)境、MySQL和Confluence,首先,文章指導(dǎo)如何卸載并安裝Docker,然后配置虛擬機(jī)的IP和網(wǎng)絡(luò)設(shè)置,接著,介紹如何在虛擬機(jī)上安裝JDK,并配置MySQL和Confluence,最后,提供了完整的安裝步驟和一些注意事項(xiàng)
    2025-02-02
  • Docker中iptables規(guī)則在iptables重啟后丟失的完整過(guò)程

    Docker中iptables規(guī)則在iptables重啟后丟失的完整過(guò)程

    這篇文章主要給大家介紹了關(guān)于Docker中iptables規(guī)則在iptables重啟后丟失的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Docker具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-05-05

最新評(píng)論