hazelcast 不与其他 ip 集群
hazelcast is not clustered with other ip
我将我的 hazelcast 从 2.x 升级到 3.3.3,但是当我在不同的 IP 启动 2 个服务器时,它没有集群。
但是当我使用 2.x 时它起作用了。它应该像这样在控制台打印:
Members [1] {
Member [172.29.110.114]:5701 this
}
我尝试使用
**Hazelcast.newHazelcastInstance()**
和
**Hazelcast.newHazelcastInstance(config)**
获取用于获取地图和其他分布式对象的HazelcastInstance。当我使用第二个时,将配置作为参数,可以打印上面的消息,但无法显示其他 IP 的节点。当我使用第一个没有配置作为参数的时候,我什至在控制台中看不到上面的消息。
有人知道这里发生了什么吗?非常感谢。
您需要在 hazelcast 配置中启用多播。以下是如何使用 xml 配置(即 hazelcast.xml
)启用它:
<hazelcast xsi:schemaLocation="http://www.hazelcast.com/schema/config http://www.hazelcast.com/schema/config/hazelcast-config-3.0.xsd" xmlns=" http://www.hazelcast.com/schema/config" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<network>
<join><multicast enabled="true"/></join>
<network>
</hazelcast>
然后以这种方式创建您的配置(hazelcast.xml
应该在类路径中):
Config config = new ClasspathXmlConfig("hazelcast.xml")
我终于知道是怎么回事了。都是因为防火墙。在我关闭后,它可以工作。只是分享我的经验。也感谢 Arbi 的帮助。
我将我的 hazelcast 从 2.x 升级到 3.3.3,但是当我在不同的 IP 启动 2 个服务器时,它没有集群。
但是当我使用 2.x 时它起作用了。它应该像这样在控制台打印:
Members [1] {
Member [172.29.110.114]:5701 this
}
我尝试使用
**Hazelcast.newHazelcastInstance()**
和
**Hazelcast.newHazelcastInstance(config)**
获取用于获取地图和其他分布式对象的HazelcastInstance。当我使用第二个时,将配置作为参数,可以打印上面的消息,但无法显示其他 IP 的节点。当我使用第一个没有配置作为参数的时候,我什至在控制台中看不到上面的消息。
有人知道这里发生了什么吗?非常感谢。
您需要在 hazelcast 配置中启用多播。以下是如何使用 xml 配置(即 hazelcast.xml
)启用它:
<hazelcast xsi:schemaLocation="http://www.hazelcast.com/schema/config http://www.hazelcast.com/schema/config/hazelcast-config-3.0.xsd" xmlns=" http://www.hazelcast.com/schema/config" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<network>
<join><multicast enabled="true"/></join>
<network>
</hazelcast>
然后以这种方式创建您的配置(hazelcast.xml
应该在类路径中):
Config config = new ClasspathXmlConfig("hazelcast.xml")
我终于知道是怎么回事了。都是因为防火墙。在我关闭后,它可以工作。只是分享我的经验。也感谢 Arbi 的帮助。