java - 使用 docker stack 部署时 Hazelcast 节点未发现其他节点

标签 java spring docker hazelcast

我需要在 docker 环境中为具有多个复制因子的 Web 应用程序设置 hazelcast,并使用 docker swarm 使用覆盖网络在多主机中部署应用程序。

我面临的问题是服务无法在集群模式下发现其他节点,但在 docker compose 中工作正常。我正在使用以下配置进行 hazelcast 配置。

<port auto-increment="true">5701</port>
<join>
  <multicast enabled="false">
    <multicast-group>224.2.2.3</multicast-group>
    <multicast-port>54327</multicast-port>
  </multicast>
  <tcp-ip enabled="true">
    <member>hazelcast-master</member>
  </tcp-ip>

</join>

这里 hazelcast-master 是我在 docker 中的服务名称。

如有任何帮助,我们将不胜感激

最佳答案

你是如何配置你的docker网络的?你的 DNS 服务器中有 hazelcast-master 吗?默认情况下,docker 使用与主机相同的 DNS,但是如果您将 hazelcast-master 放在/etc/hosts 中,您的 docker guest 将看不到它并且无法使用它。使用主机的 IP 地址、输入完整的主机域名(来自 DNS)或在运行 docker 容器时使用 --add-host。

关于java - 使用 docker stack 部署时 Hazelcast 节点未发现其他节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56321110/

相关文章:

javascript - Selenium ,java,js "Exception in thread "主“org.openqa.selenium.JavascriptException : missing ) after argument list"

java - Spring 启动 : Request method 'POST' not supported

docker - 无法验证Docker守护程序正在监听:超过最大重试次数(10)

amazon-web-services - 由于身份验证,AWS ECR 推送在 Azure DevOps 上失败

java - android 来电时的电话号码不起作用

java - 我的消息在 BotFramework - Java 中未按正确的顺序发送

javascript - AngularJS:从 HttpResponse 读取数据和 header

python - 更改 docker-compose 文件中 docker 容器中的 PYTHONPATH

java - 如何在 Java1.6 中安装证书,以便从 Caliper 工具上传有效

java - Spring 批处理作业存储库表未在我配置的架构中创建