我正在尝试使用嵌入式定位器服务在 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
[警告 2016/02/08 20:37:41.510 UTC tid=0x28] 经过 55 次重试后,定位器发现任务无法与 ip-10-0-0-193.ec2.internal[11002] 交换定位器信息 localhost[11001]。在 10,000 毫秒后重试。
从服务器 2
[警告 2016/02/08 20:46:27.867 UTC tid=0x28] 在尝试 102 次重试后,定位器发现任务无法与 ip-10-0-0-192.ec2.internal[11001] 交换定位器信息 localhost[11002]。在 10,000 毫秒后重试。
它关闭了,但我错过了一些东西
是的,使用 .set("绑定地址"、"10.0.0.193"(答案似乎可以解决问题。 只是为了确认日志,我是否制作了一个集群
服务器1
[信息 2016/02/09 09:39:07.445 UTC tid=0x3c] 成员资格:处理加法 <ip-10-0-0-192(14522(:14968>
[信息 2016/02/09 09:39:07.445 UTC tid=0x3c] 接纳会员:14968>.现在有 2 个非管理员成员。
[信息 2016/02/09 09:39:07.460 UTC tid=0x41] 成员 ip-10-0-0-192(14522(:14968 不等效或在同一冗余区域中。
[信息 2016/02/09 09:39:12.923 UTC tid=0x28] 定位器发现任务交换定位器信息 ip-10-0-0-193.ec2.internal[11001] 与 ip-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 已完成
[信息 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 已完成
[信息 2016/02/09 09:39:13.438 UTC tid=0x46] 条目过期任务已禁用,因为队列成为主队列。旧消息时间到生活是:180
和服务器 2
[信息 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 成员资格协调器的分布式系统
[信息 2016/02/09 09:39:07.408 UTC tid=0x1] 成员:主要成员现在是 ip-10-0-0-193(16745(:57474
[信息 2016/02/09 09:39:07.412 UTC tid=0x23] GemFire 故障检测现在正在监控 ip-10-0-0-193(16745(:57474
[信息 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] 启动分发管理器 ip-10-0-0-192(14522(:14968。 (花了 272/毫秒(
[信息 2016/02/09 09:39:07.414 UTC tid=0x1] 初始(成员管理器(视图 = [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 个非管理员成员。
[信息 2016/02/09 09:39:07.446 UTC :57474 共享无序 uid=1 端口=39916> tid=0x28] 成员 ip-10-0-0-193(16745(:57474 不等效或位于同一冗余区域中。
谢谢。
,定位器绑定到localhost
,因此您应该为每个缓存服务器设置bind-address
set("bind-address", "10.0.0.192")
。显然,您的locators
指向这些地址。
您是否尝试过将"localhost"替换为盒子的实际IP地址?换句话说,两个列表应如下所示:
.set("定位器", "10.0.0.192[11001],10.0.0.193[11002]"(
我相信定位器默认绑定到您机器的公共 IP 地址,而不是本地主机 (127.0.0.1(。