GemFire 8.2.0 嵌入式定位器服务

GemFire 8.2.0 embeded locator service

我正在尝试使用嵌入式定位器服务在 gemfire 中集群服务器。

服务器 1 serverCache = new CacheFactory().set("cache-xml-file", "server-cache.xml") .set("mcast-port", "0") .set("start-locator", "11001") .set("locators", "localhost[11001],10.0.0.193[11002]").create();

服务器 2 serverCache = new CacheFactory().set("cache-xml-file", "server-cache.xml") .set("mcast-port", "0") .set("start-locator", "11002") .set("locators", "10.0.0.192[11001],localhost[11002]").create();

但他们无法连接

来自服务器 1

[warn 2016/02/08 20:37:41.510 UTC tid=0x28] 定位器发现任务无法与 ip-10-0-0- 交换定位器信息 localhost[11001] 193.ec2.internal[11002] 在重试 55 次之后。 10,000 毫秒后重试。

来自服务器 2

[warn 2016/02/08 20:46:27.867 UTC tid=0x28] 定位器发现任务无法与 ip-10-0-0- 交换定位器信息 localhost[11002] 192.ec2.internal[11001] 经过 102 次重试。 10,000 毫秒后重试。

它关闭了,但我遗漏了一些东西

是的,使用 .set("bind-address", "10.0.0.193") 答案似乎可以解决问题。只是为了确认日志,我做了一个集群

服务器 1

[info 2016/02/09 09:39:07.445 UTC tid=0x3c] Membership: Processing addition < ip-10-0-0-192(14522):14968 >

[信息 2016/02/09 09:39:07.445 UTC tid=0x3c] 接纳成员:14968>。现在有2个非管理员成员。

[info 2016/02/09 09:39:07.460 UTC tid=0x41] 成员 ip-10-0-0-192(14522):14968 不等价或不在同一个冗余区。

[info 2016/02/09 09:39:12.923 UTC tid=0x28]定位器发现任务与ip交换定位器信息ip-10-0-0-193.ec2.internal[11001] -10-0-0-192.ec2.internal[11001]: {-1=[ip-10-0-0-192.ec2.internal[11001], ip-10-0-0- 193.ec2.internal[11001]]}.

[信息 2016/02/09 09:39:13.245 UTC tid=0x46] 初始化区域 _gfe_non_durable_client_with_id_ip-10-0-0-186(3936:loner):49683:5b2966c5_2_queue

[信息 2016/02/09 09:39:13.247 UTC tid=0x46] 区域初始化 _gfe_non_durable_client_with_id_ip-10-0-0-186(3936:loner):49683:5b2966c5_2_queue 完成

[info 2016/02/09 09:39:13.252 UTC tid=0x46] 条目到期任务已禁用,因为队列成为主要队列。旧消息生存时间为:180

[信息 2016/02/09 09:39:13.435 UTC tid=0x46] 初始化区域 _gfe_non_durable_client_with_id_ip-10-0-0-189(4036:loner):51441:762a66c5_2_queue

[信息 2016/02/09 09:39:13.437 UTC tid=0x46] 区域初始化 _gfe_non_durable_client_with_id_ip-10-0-0-189(4036:loner):51441:762a66c5_2_queue 完成

[info 2016/02/09 09:39:13.438 UTC tid=0x46] 条目到期任务已禁用,因为队列成为主要队列。旧消息生存时间为:180

和服务器 2

[info 2016/02/09 09:39:07.245 UTC tid=0x1] 尝试使用成员 ID 加入其成员协调器为 ip-10-0-0-193(16745):57474 的分布式系统ip-10-0-0-192(14522):14968

[info 2016/02/09 09:39:07.408 UTC tid=0x1] 成员资格:主要成员现在是 ip-10-0-0-193(16745):57474

[info 2016/02/09 09:39:07.412 UTC tid=0x23] GemFire 故障检测现在正在监控 ip-10-0-0-193(16745):57474

[info 2016/02/09 09:39:07.413 UTC tid=0x1] 加入会员 ID ip-10-0-0-192(14522):14968.

[信息 2016/02/09 09:39:07.414 UTC tid=0x1] 启动 DistributionManager ip-10-0-0-192(14522):14968。 (花费 272/ 毫秒)

[信息 2016/02/09 09:39:07.414 UTC tid=0x1] 初始 (membershipManager) 视图 = [ip-10-0-0-193(16745):57474{lead}, ip -10-0-0-192(14522):14968]

[信息 2016/02/09 09:39:07.414 UTC tid=0x1] 接纳成员:57474>。现在有 1 个非管理员成员。

[信息 2016/02/09 09:39:07.414 UTC tid=0x1] 接纳成员:14968>。现在有2个非管理员成员。

[info 2016/02/09 09:39:07.446 UTC :57474 共享无序 uid=1 port=39916> tid=0x28] 成员 ip-10-0-0-193(16745):57474不等价或不在同一个冗余区。

谢谢。

你试过用盒子的实际 IP 地址替换 "localhost" 吗?换句话说,两个列表应该如下所示:

.set("locators", "10.0.0.192[11001],10.0.0.193[11002]")

我相信定位器默认绑定到您机器的 public IP 地址,而不是本地主机 (127.0.0.1)。

实际上,定位器绑定到 localhost,因此您应该为每个带有 set("bind-address", "10.0.0.192") 的缓存服务器设置 bind-address。也显然让你的 locators 指向这些地址。