1. 程式人生 > >Kafka伺服器允許客戶端遠端連線

Kafka伺服器允許客戶端遠端連線

前言:

安裝好Kafka(服務端ip為192.1683.45),window使用Java呼叫kafka-clients庫來遠端連線Kafka服務端,進行生產者和消費者測試,發現訊息發不出去。但是如果把生產者和消費者的測試程式碼放到伺服器上允許,就可以測試成功。

原因分析:

1、排查是不是伺服器的防火牆原因,導致伺服器的9092埠不能被window連線上,在window上執行telnet 192.168.3.45 9092,發現埠是可以被連通的,排除了這個原因。

2、因為之前安裝了Redis,只有更改了配置檔案,才能被遠端訪問,我猜想是不是kafka也需要更改配置檔案,發現真的是這個原因。

開啟config/server.properties配置檔案,更改如下

  • 把31行的註釋去掉,listeners=PLAINTEXT://:9092
  • 把36行的註釋去掉,把advertised.listeners值改為PLAINTEXT://host_ip:9092(我的伺服器ip是192.1683.45)