jclouds 发现在 Hazelcast 3.6 EA 中不起作用
jclouds discovery is not working in Hazelcast 3.6 EA
我试图在 Hazelcast
3.6 EA 中使用新的基于 jclouds
的发现机制。但是,无法使用与本地 AWS 发现完全相同的凭据使其工作。这里有两个配置:
原生 AWS(有效):
<network>
<join>
<multicast enabled="false" />
<tcp-ip enabled="false" />
<aws enabled="true">
<access-key>AKIAXXXXXXXXXXXXX</access-key>
<secret-key>YYYYYYYYYYYYYYYYY</secret-key>
<region>eu-west-1</region>
<host-header>ec2.amazonaws.com</host-header>
</aws>
</join>
</network>
jclouds
(无效):
<properties>
<property name="hazelcast.discovery.enabled">true</property>
</properties>
<network>
<join>
<multicast enabled="false" />
<tcp-ip enabled="false" />
<aws enabled="false" />
<discovery-strategies>
<discovery-strategy class="com.hazelcast.jclouds.JCloudsDiscoveryStrategy" enabled="true">
<properties>
<property name="provider">aws-ec2</property>
<property name="identity">AKIAXXXXXXXXXXXXX</property>
<property name="credential">YYYYYYYYYYYYYYYYY</property>
<property name="regions">eu-west-1</property>
</properties>
</discovery-strategy>
</discovery-strategies>
</join>
</network>
有关设置的更多信息:2 个实例是同一个 Elastic Beanstalk 应用程序的一部分。端口 5701 是公开开放的(用于测试)。为 Hazelcast 启用 DEBUG 日志级别。 AWS 用户有权执行 ec2:describe*
启用 jclouds
发现后,每个节点只能看到自己:
DEBUG: Log4jFactory.java:93 [172.31.5.117]:5701 [dev] [3.6-EA] This node will assume master role since no possible member where connected to.
DEBUG: Log4jFactory.java:93 [172.31.5.117]:5701 [dev] [3.6-EA] This node is being set as the master
DEBUG: Log4jFactory.java:93 [172.31.5.117]:5701 [dev] [3.6-EA] PostJoin master: Address[172.31.5.117]:5701, isMaster: true
INFO : Log4jFactory.java:99 [172.31.5.117]:5701 [dev] [3.6-EA]
Members [1] {
Member [172.31.5.117]:5701 this
}
我看到 Hazelcast 3.6-EA 版本与 JClouds 集成有问题,这里是解决方法。
https://github.com/hazelcast/hazelcast/pull/6651
我试图在 Hazelcast
3.6 EA 中使用新的基于 jclouds
的发现机制。但是,无法使用与本地 AWS 发现完全相同的凭据使其工作。这里有两个配置:
原生 AWS(有效):
<network>
<join>
<multicast enabled="false" />
<tcp-ip enabled="false" />
<aws enabled="true">
<access-key>AKIAXXXXXXXXXXXXX</access-key>
<secret-key>YYYYYYYYYYYYYYYYY</secret-key>
<region>eu-west-1</region>
<host-header>ec2.amazonaws.com</host-header>
</aws>
</join>
</network>
jclouds
(无效):
<properties>
<property name="hazelcast.discovery.enabled">true</property>
</properties>
<network>
<join>
<multicast enabled="false" />
<tcp-ip enabled="false" />
<aws enabled="false" />
<discovery-strategies>
<discovery-strategy class="com.hazelcast.jclouds.JCloudsDiscoveryStrategy" enabled="true">
<properties>
<property name="provider">aws-ec2</property>
<property name="identity">AKIAXXXXXXXXXXXXX</property>
<property name="credential">YYYYYYYYYYYYYYYYY</property>
<property name="regions">eu-west-1</property>
</properties>
</discovery-strategy>
</discovery-strategies>
</join>
</network>
有关设置的更多信息:2 个实例是同一个 Elastic Beanstalk 应用程序的一部分。端口 5701 是公开开放的(用于测试)。为 Hazelcast 启用 DEBUG 日志级别。 AWS 用户有权执行 ec2:describe*
启用 jclouds
发现后,每个节点只能看到自己:
DEBUG: Log4jFactory.java:93 [172.31.5.117]:5701 [dev] [3.6-EA] This node will assume master role since no possible member where connected to.
DEBUG: Log4jFactory.java:93 [172.31.5.117]:5701 [dev] [3.6-EA] This node is being set as the master
DEBUG: Log4jFactory.java:93 [172.31.5.117]:5701 [dev] [3.6-EA] PostJoin master: Address[172.31.5.117]:5701, isMaster: true
INFO : Log4jFactory.java:99 [172.31.5.117]:5701 [dev] [3.6-EA]
Members [1] {
Member [172.31.5.117]:5701 this
}
我看到 Hazelcast 3.6-EA 版本与 JClouds 集成有问题,这里是解决方法。 https://github.com/hazelcast/hazelcast/pull/6651