一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

Linux|Centos|Ubuntu|系統(tǒng)進程|Fedora|注冊表|Bios|Solaris|Windows7|Windows10|Windows11|windows server|

服務器之家 - 服務器系統(tǒng) - Linux - Linux下利用Docker快速部署配置Kafka服務

Linux下利用Docker快速部署配置Kafka服務

2024-01-10 17:03未知服務器之家 Linux

Kafka是由Apache軟件基金會開發(fā)一個開源流處理平臺,使用Scala和Java編寫, 該項目的目標是為處理實時數(shù)據(jù)提供一個統(tǒng)一、高吞吐、低延遲的平臺。其持久化層本質(zhì)上是一個按照分布式事務日志架構的大規(guī)模發(fā)布/訂閱消息隊列。這種工

Kafka是由Apache軟件基金會開發(fā)一個開源流處理平臺,使用Scala和Java編寫, 該項目的目標是為處理實時數(shù)據(jù)提供一個統(tǒng)一、高吞吐、低延遲的平臺。其持久化層本質(zhì)上是一個按照分布式事務日志架構的大規(guī)模發(fā)布/訂閱消息隊列。這種工作方式使它為企業(yè)級基礎設施來處理流失數(shù)據(jù)非常有價值。

本文的目的是使用Docker容器來部署Kafka, 這樣可以省略Kafka安裝配置的中間過程, 節(jié)省大量時間。文章中分別從幾個維度來闡述Kafka的部署過程, 包括:基礎環(huán)境要求、安裝zookeeper、容器內(nèi)的設置等, 最后給出了一個從生產(chǎn)者角度向消費者發(fā)送消息, 消費者成功接收到消息作為結(jié)尾, 最后給出了一個在全過程當中遇到問題排查的正確方法。

Linux下利用Docker快速部署配置Kafka服務

認識Kafka

Kafka存儲的消息來自任務多被稱為"生產(chǎn)者"(Producer)的進程。數(shù)據(jù)從而可以被分配到不同的"分區(qū)"(Partition)、不同的“Topic”下。在一個分區(qū)內(nèi), 消息被索引并連同時間戳存儲在一起。而其它被稱為"消費者"(Consumer)的進程可以從分區(qū)查詢消息。Kafka運行在一個由一臺或多臺服務器組成的集群上, 并且分區(qū)可以跨集群節(jié)點分布。Kafka的架構如下圖所示:

Linux下利用Docker快速部署配置Kafka服務

以下列出了Kafka技術相關的術語:

  • Topic - 用來對消息進行分類, 每個進入到Kafka的信息都會被放到一個Topic下。
  • Broker - 用來實現(xiàn)數(shù)據(jù)存儲的主機服務器。
  • Partition - 每個Topic中的消息會被分為若干個Partition,以提高消息的處理效率
  • Producer - 消息的生產(chǎn)者
  • Consumer - 消息的消費者

了解了以上概念之后,對于Kafka的部署已經(jīng)沒有什么障礙, 下面開始正式的部署過程。

基礎環(huán)境準備

大多數(shù)Linux發(fā)行版都支持安裝Kafka,這里我準備了一臺ubuntu 22.04.3 LTS版本的虛擬機作為試驗環(huán)境。

登錄到系統(tǒng)輸入:docker -v 命令, 如果出現(xiàn):

Docker version 24.0.5, build 24.0.5-0ubuntu1~22.04.1

類似于這樣的提示信息,說明Docker已安裝,如果沒有,請輸入以下命令安裝Docker:

$ sudo apt update
$ sudo apt install docker.io

安裝zookeeper

由于Kafka依賴Zookeeper實現(xiàn)高可用性和一致性,其為Kafka提供了關鍵的分布式協(xié)調(diào)服務,因此部署Kafka必須先部署Zookeeper集群作為基礎, 以下進入部署Zookeeper的過程:

在命令行直接輸入以下命令,docker會自動拉取對應鏡像:

# docker run -d --name zookeeper -p 2181:2181 -v /etc/localtime:/etc/localtime wurstmeister/zookeeper

拉取過程如圖:

Linux下利用Docker快速部署配置Kafka服務

安裝Kafka

Zookeeper安裝成功后, 接著安裝Kafka組件, 在命令行直接輸入以下命令,docker會自動拉取對應鏡像:

# docker run -d --name kafka -p 9092:9092 -e KAFKA_BROKER_ID=0 -e KAFKA_ZOOKEEPER_CONNECT=[你的IP地址]:2181 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://[你的IP地址]:9092 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 -t wurstmeister/kafka

注意, 我的服務器IP是192.168.201.206,所以上面的IP要根據(jù)自己的實際情況進行變更,我變更后的命令如下:

# docker run -d --name kafka -p 9092:9092 -e KAFKA_BROKER_ID=0 -e KAFKA_ZOOKEEPER_CONNECT=192.168.201.206:2181 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.201.206:9092 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 -t wurstmeister/kafka

拉取過程如圖:

Linux下利用Docker快速部署配置Kafka服務

進入容器

Kafka安裝完畢后,還要進入到容器中啟動生產(chǎn)者和消費者,這樣可以驗證kafka功能是否正常,順序執(zhí)行命令如下:

# docker ps -a #查看kafka鏡像的容器ID
# docker exec -it 容器ID /bin/sh #進入到容器內(nèi)部
# cd /opt/kafka/bin # 切到容器內(nèi)部kafka執(zhí)行目錄下

執(zhí)行最后的結(jié)果如圖:

Linux下利用Docker快速部署配置Kafka服務

啟動生產(chǎn)者

在容器里執(zhí)行以下命令啟動生產(chǎn)者:

./kafka-console-producer.sh --broker-list localhost:9092 --topic [你的topic名稱]

我這里自己起了一個topic名稱,名字為test123, 如圖:

Linux下利用Docker快速部署配置Kafka服務

產(chǎn)生者腳本啟動成功后,會有一個">"提示符。

啟動消費者

為了看到生產(chǎn)者和消費者之間的消息傳遞效果,這里需要另開一個終端,按照上面的方法進入容器對應目錄,并執(zhí)行以下命令:

./kafka-console-consumer.sh --bootstrap-server [你的IP地址]:9092 --topic [你的topic名稱]

注意,這里有兩個變量需要自己調(diào)整,一個是IP地址,另一個是上面建立的Topic名稱, 我這里填入信息后的完整命令如下:

./kafka-console-consumer.sh --bootstrap-server 192.168.201.206:9092 --topic test123

執(zhí)行過程如圖:

Linux下利用Docker快速部署配置Kafka服務

生產(chǎn)者與消費者測試

切換到生產(chǎn)者窗口,連續(xù)輸入一些信息,如圖:

Linux下利用Docker快速部署配置Kafka服務

再切換回消費者窗口, 正常的話已經(jīng)可以收到生產(chǎn)者發(fā)送的信息了,如圖:

Linux下利用Docker快速部署配置Kafka服務

1故障排查

如果在使用Docker過程中遇到任何錯誤, 可以命令:

docker logs 容器ID

通過查看容器日志進行故障排查,過程如圖:

Linux下利用Docker快速部署配置Kafka服務

總結(jié)

在部署Kafka的整個過程中, 遵循以下部署順序流程:

  • 首先檢查Docker安裝是否正常, 確保Docker安裝無任何異常。
  • 其次安裝Kafka的依賴服務Zookeeper, 只需要一句命令可實現(xiàn)自動鏡像拉取。
  • 接著安裝Kafka組件,也是一句命令即可搞定, 自動拉取對應的鏡像。
  • 進入到容器內(nèi)部, 分別啟動生產(chǎn)者和消費者腳本, 便可以開始進行發(fā)送消息測試了。
  • 在整個部署過程中,遇到任何錯誤或問題都可以通過Docker日志進行問題排查。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 波多洁野衣一二区三区 | 色综合97天天综合网 | 男人天堂网页 | 91久久福利国产成人精品 | 欧美高清在线精品一区二区不卡 | 下雨天小说词枝 | 超碰成人在线播放 | 亚洲欧美另类综合 | 色在线看 | 日韩一本在线 | 99在线精品免费视频 | 亚洲国产情侣偷自在线二页 | eee在线播放成人免费 | 亚洲毛片免费看 | 高清视频一区二区三区 | 日韩精品高清自在线 | www.色.con| 羞羞漫画免费漫画页面在线看漫画秋蝉 | 亚洲福利 影院 | 香蕉在线播放 | 天天色天天综合 | 国产亚洲精品日韩香蕉网 | 日韩 视频在线播放 | 国产亚洲精品视频中文字幕 | 亚洲AV无码国产精品午夜久久 | 国产精品久久香蕉免费播放 | babes性欧美30 | 天堂资源wwww在线看 | 国产午夜精品一区二区三区 | 97大香伊在人人线色 | tube性睡觉hd | 亚洲sss综合天堂久久久 | 欧美贵妇vs高跟办公室 | 免费大片a一级一级 | 欧美黑人性猛交╳xx╳动态图 | 亚洲精品国产乱码AV在线观看 | 糖心在线观看网 | 女bbbbxxxx视频 | 小sao货ji巴cao死你视频 | 色橹 | 欧美大b|