RocketMQ:設置broker的對外IP

背景

最近在公司遇到這麼一個問題:我在測試環境中搭建了一套RocketMQ,開發想要使用本機鏈接進行生產消費的測試,可是發現服務沒法正常訪問,報以下錯誤:html

send heart beat to broker error {"fields": {"underlayError":{"Op":"dial","Net":"tcp","Source":null,"Addr":{"IP":"10.13.10.29","Port":10911,"Zone":""},"Err":{}}}}網絡

分析

這個錯誤指的是本機向broker服務(10.13.10.29)發生心跳失敗。開發嘗試去telnet這個ip和端口,發現確實沒法訪問。而後我去雲平臺上查了一下這個broker機器,其ip爲10.13.10.29,屬於內網段ip,外界網絡沒法直接訪問此ip。運維

解決方法

因爲這臺broker機器已綁定了外網IP,那是否是給broker服務配置一下外網IP就能夠了呢?tcp

因而我查了下broker的配置文件,發現確實有兩個配置項能夠作到:ide

brokerIP1:當前broker監聽的IP。測試

brokerIP2:broker爲master-slave模式時,broker的從節點經過brokerIP2和主節點進行鏈接。url

以下圖:我給broker配置brokerIP1爲外網IP。spa

而後,重啓broker服務。.net

這時候本機再經過nameserver去鏈接broker進行生產消費,就不會報ip和端口沒法連上的問題了。server

博主:測試生財(一個不爲996而996的測開碼農)

座右銘:專一測試開發與自動化運維,努力讀書思考寫做,爲內卷的人生奠基財務自由。

內容範疇:技術提高,職場雜談,事業發展,閱讀寫做,投資理財,健康人生。

csdn:https://blog.csdn.net/ccgshigao

博客園:https://www.cnblogs.com/qa-freeroad/

51cto:https://blog.51cto.com/14900374

在碼農的苦悶歲月裏,期待咱們一塊兒成長,歡迎關注,感謝拍磚!

相關文章
相關標籤/搜索