簡體   English   中英

ActiveMQ Artemis:內部和外部 IP 地址

[英]ActiveMQ Artemis: Internal and external IP addresses

我們在 Kubernetes 集群中運行 ActiveMQ Artemis 集群。 我們在 Kubernetes 集群中運行的所有應用程序(Java/Springboot/JMS)都利用了直接連接到代理實例的優勢。

但是,來自 Kubernetes Pod 網絡的 IP 地址在集群外不可用。 將代理實例暴露給公共網絡是可能的——但使用不同的 IP 地址。 這類似於將 Artemis 集群隱藏在 NAT 配置后面。 當通過公共 IP 地址連接到代理時,客戶端應用程序會收到包含集群外無法訪問的 IP 地址(或主機名?)的集群拓撲信息。

有沒有辦法處理“內部”和“外部”IP 地址和/或主機名,並使拓撲發現適用於集群外部應用程序?

並且,相關(我不是 Java 開發人員):有沒有辦法記錄收到的 JMS 應用程序的拓撲信息?

您不能依賴外部客戶端的拓撲發現。 您可以做的是提供外部 ips 列表或在集群前面有一個路由器/負載均衡器。

ActiveMQ Artemis CORE 客戶端提供了useTopologyForLoadBalancing url 參數來禁止使用集群拓撲信息進行負載均衡,即

tcp://localhost:61616?useTopologyForLoadBalancing=false

可以在logging.properties文件中為org.apache.activemq.artemis.core.protocol.core logger 設置TRACE啟用集群拓撲信息的日志,參見文檔,即

loggers=...,org.apache.activemq.artemis.core.protocol.core

logger.org.apache.activemq.audit.message.level=TRACE

handler.CONSOLE.level=TRACE

handler.FILE.level=TRACE

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM