最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Nginx反向代理Kafka集群配置詳解

 更新時間:2025年08月18日 08:54:32   作者:花酒鋤作田  
文章介紹如何使用Nginx?1.28反向代理Kafka?2.13-3.9.1集群,本文的測試環(huán)境中,使用nginx來反向代理kafka集群,接下來通過本文給大家講解Nginx反向代理Kafka集群配置的相關(guān)知識,感興趣的朋友一起看看吧

前言

kafka集群的網(wǎng)絡(luò)沒法被客戶端直接訪問,中間需要有個代理。正常網(wǎng)絡(luò)情況下,kafka會給客戶端返回所有的broker地址,如果客戶端無法訪問到broker就會報錯,所以kafka給客戶端返回的地址需要是客戶端能訪問的代理服務(wù)器地址。

本文的測試環(huán)境中,使用nginx來反向代理kafka集群。nginx和kafka部署在同一臺機器上,使用firewalld確保只開放8000端口,拒絕機器外訪問kafka的端口。

  • nginx版本:1.28,IP:192.168.0.41,使用8000端口代理kafka集群
  • kafka版本:2.13-3.9.1,使用kraft組單點集群, IP:192.168.0.41。搭建過程見我的另一篇博客 詳細(xì)講解Docker-Compose部署Kafka KRaft集群環(huán)境
  • 客戶端IP:192.168.0.108

kafka配置

因為使用的是kraft,所以修改 config/kraft/server.properties配置文件,只需要修改advertised.listeners的配置。如下,PLAINTEXT指的是客戶端訪問地址,CONTROLLER因為是kafka內(nèi)部集群通信才用到,所以只需要修改PLAINTEXT為nginx代理地址即可。PLAINTEXT試了需要寫成hostname,而不能是ip地址,否則客戶端還是會報錯。

# 舊配置,PLAINTEXT為Kakfa broker的監(jiān)聽地址
# advertised.listeners=PLAINTEXT://192.168.0.41:9092,CONTROLLER://192.168.0.41:19092
# 新配置,PLAINTEXT為Nginx代理服務(wù)器的地址
advertised.listeners=PLAINTEXT://kafka-cluster:8000,CONTROLLER://192.168.0.41:19092

kafka 機器的/etc/hosts添加配置192.168.0.41 kafka-cluster(不確定到底要不要配置,懶得再測了,感興趣的可以自行嘗試)

配置修改完成后,重啟kafka所有節(jié)點。

nginx配置

nginx需要有編譯參數(shù)--with-stream才能支持TCP/UDP的反向代理,如何編譯可自行搜索相關(guān)文檔。

  • 修改nginx/conf/nginx.conf的配置,導(dǎo)入conf.d目錄下所有*-stream.conf的配置文件。如果配置很少,也可以直接寫在nginx.conf文件里面。
stream {
    include conf.d/*-stream.conf;
}
  • 編輯nginx/conf/conf.d/kafka-stream.conf
upstream kafka-endpoints {
    server 192.168.0.41:9092;
    server 192.168.0.41:9093;
    server 192.168.0.41:9094;
}
server {
    listen 8000;
    proxy_pass kafka-endpoints;
}
  • 測試并重加載nginx配置
nginx -t
nginx -s reload

firewalld配置

  • 安裝firewalld
sudo apt install -y firewalld
  • 設(shè)置默認(rèn)zone為drop,即拒絕所有入站流量
sudo firewall-cmd --set-default-zone=drop
  • 添加放行入站端口
sudo firewall-cmd --add-port=22/tcp --add-port=80/tcp --add-port=443/tcp --add-port=8000/tcp --permanent --zone=drop
  • 重加載
sudo firewall-cmd --reload
  • 在客戶端測試能否訪問其它端口。結(jié)果不為0即訪問失敗。
timeout 1 bash -c "cat < /dev/null > /dev/tcp/192.168.0.41/9092" > /dev/null 2>&1;echo $?

客戶端配置

  • 修改/etc/hosts,添加配置
192.168.0.41    kafka-cluster
  • 使用kafka自帶工具啟動生產(chǎn)者
./bin/kafka-console-producer.sh --broker-list kafka-cluster:8000 --topic testtopic
  • 在另一個終端啟動消費者
./bin/kafka-console-consumer.sh --bootstrap-server kafka-cluster:8000 --topic testtopic --from-beginning
  • 在生產(chǎn)者終端隨便輸入點字符,如果消費者終端也能看到,說明nginx代理成功。

到此這篇關(guān)于Nginx反向代理Kafka集群的文章就介紹到這了,更多相關(guān)Nginx反向代理Kafka集群內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 分割nginx日志的實現(xiàn)(避免日志多大)

    分割nginx日志的實現(xiàn)(避免日志多大)

    nginx默認(rèn)沒有提供對日志文件的分割功能,所以隨著時間的增長,access.log和error.log文件會越來越大,本文主要介紹了分割nginx日志的實現(xiàn),具有一定的參考價值,感興趣的可以了解一下
    2024-04-04
  • 服務(wù)器重啟后寶塔界面打開顯示404 nginx的解決方法

    服務(wù)器重啟后寶塔界面打開顯示404 nginx的解決方法

    在阿里云服務(wù)器搭建寶塔界面,服務(wù)器重啟之后打開寶塔顯示404 not found nginx,本文給大家介紹了服務(wù)器重啟后寶塔界面打開顯示404 nginx的解決方法,需要的朋友可以參考下
    2024-02-02
  • nginx location中uri的截取的實現(xiàn)方法

    nginx location中uri的截取的實現(xiàn)方法

    這篇文章主要介紹了nginx location中uri的截取的實現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • nginx部署vue頁面白屏或刷新404問題解決

    nginx部署vue頁面白屏或刷新404問題解決

    最近部署vue項目后發(fā)現(xiàn)刷新頁面會404,本文就來介紹一下nginx部署vue頁面白屏或刷新404問題解決,具有一定的參考價值,感興趣的可以了解一下
    2023-10-10
  • Nginx的location路徑與proxy_pass匹配規(guī)則說明

    Nginx的location路徑與proxy_pass匹配規(guī)則說明

    這篇文章主要介紹了Nginx的location路徑與proxy_pass匹配規(guī)則說明,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-06-06
  • 使用Bash腳本和Logrotate實現(xiàn)Nginx日志切割的方法

    使用Bash腳本和Logrotate實現(xiàn)Nginx日志切割的方法

    Logrotate是一個Linux系統(tǒng)上用來管理日志文件的工具,它可以定期輪轉(zhuǎn)日志文件、壓縮舊的日志文件以及刪除過期的日志文件,這篇文章主要介紹了使用Bash腳本和Logrotate實現(xiàn)Nginx日志切割,需要的朋友可以參考下
    2024-05-05
  • Nginx路徑匹配的配置指南

    Nginx路徑匹配的配置指南

    在大型互聯(lián)網(wǎng)架構(gòu)中,Nginx作為反向代理和負(fù)載均衡的核心組件,其路徑匹配精度直接影響系統(tǒng)路由的準(zhǔn)確性,所以本文給大家詳細(xì)介紹了Nginx路徑匹配的配置指南,需要的朋友可以參考下
    2025-07-07
  • Nginx四層負(fù)載均衡的配置指南

    Nginx四層負(fù)載均衡的配置指南

    當(dāng)一臺服務(wù)器的單位時間內(nèi)的訪問量越大時,服務(wù)器壓力就越大,大到超過自身承受能力時,服務(wù)器就會崩潰.為了避免服務(wù)器崩潰,讓用戶有更好的體驗,我們通過負(fù)載均衡的方式來分擔(dān)服務(wù)器壓力,這篇文章主要給大家介紹了關(guān)于Nginx四層負(fù)載均衡配置的相關(guān)資料,需要的朋友可以參考下
    2021-06-06
  • nacos集群搭建Nginx負(fù)載均衡的操作詳解

    nacos集群搭建Nginx負(fù)載均衡的操作詳解

    這篇文章主要介紹了nacos集群搭建Nginx負(fù)載均衡的詳細(xì)操作,文中通過代碼示例和圖文介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下
    2024-01-01
  • Nginx為靜態(tài)資源配置緩存時間的操作步驟

    Nginx為靜態(tài)資源配置緩存時間的操作步驟

    最近在優(yōu)化網(wǎng)站性能時,發(fā)現(xiàn)很多靜態(tài)資源(比如圖片、CSS?文件等)每次都會從服務(wù)器重新加載,這不僅浪費了帶寬,還增加了 服務(wù)器的負(fù)載,為了解決這個問題,我研究了一下如何在?Nginx?中為靜態(tài)資源配置緩存時間,下面是我的配置過程,需要的朋友可以參考下
    2025-02-02

最新評論

湛江市| 大关县| 开封县| 湘阴县| 和林格尔县| 习水县| 嘉兴市| 溆浦县| 商南县| 阿拉尔市| 西峡县| 安龙县| 年辖:市辖区| 西宁市| SHOW| 东台市| 休宁县| 洛宁县| 乌兰察布市| 竹北市| 裕民县| 河南省| 武城县| 新安县| 临安市| 海原县| 福建省| 太湖县| 柳林县| 渭源县| 成都市| 洛宁县| 伊宁县| 连城县| 饶阳县| 泸水县| 阳城县| 凤翔县| 武宁县| 罗定市| 平湖市|