簡體   English   中英

Hazelcast連接拒絕到地址x

[英]Hazelcast Connection Refused to Address x

我有一個非常簡單的Hazelcast客戶端,用於連接集群實例。 看到我正在連接到本地主機(127.0.0.1)和遠程服務器(xxx.xx.xx.x)。

public HazelcastCacheClient(String mapName, Map<K,V> cacheMap) {

    Config cfg = new Config();
    NetworkConfig networkConfig = cfg.getNetworkConfig();
    networkConfig.setPort(5701);
    networkConfig.setPortCount(1);

    JoinConfig joinConfig = networkConfig.getJoin();
    joinConfig.getMulticastConfig().setEnabled(false);
    joinConfig.getAwsConfig().setEnabled(false);
    joinConfig.getTcpIpConfig()
                    .addMember("127.0.0.1, xxx.xx.xx.x").setEnabled(true);

    HazelcastInstance instance = Hazelcast.newHazelcastInstance(cfg);

    Map<String, Integer> map = instance.getMap(mapName);
}

我已經在CentOS服務器(xxx.xx.xx.x)上打開了端口5701-5710,但是在日志中看到以下內容:

com.hazelcast.instance.DefaultAddressPicker
INFO: [LOCAL] [dev] [3.5.5] Resolving domain name 'xxx.xx.xx.x' to address(es): [xxx.xx.xx.x]
com.hazelcast.instance.DefaultAddressPicker
INFO: [LOCAL] [dev] [3.5.5] Interfaces is disabled, trying to pick one address from TCP-IP config addresses: [xxx.xx.xx.x/xxx.xx.xx.x, 127.0.0.1]
com.hazelcast.instance.DefaultAddressPicker
INFO: [LOCAL] [dev] [3.5.5] Picked Address[127.0.0.1]:5701, using socket ServerSocket[addr=/0:0:0:0:0:0:0:0,localport=5701], bind any local is true
com.hazelcast.spi.OperationService
INFO: [127.0.0.1]:5701 [dev] [3.5.5] Backpressure is disabled
com.hazelcast.spi.impl.operationexecutor.classic.ClassicOperationExecutor
INFO: [127.0.0.1]:5701 [dev] [3.5.5] Starting with 4 generic operation threads and 8 partition operation threads.
com.hazelcast.system
INFO: [127.0.0.1]:5701 [dev] [3.5.5] Hazelcast 3.5.5 (20160122 - 6805b8e) starting at Address[127.0.0.1]:5701
com.hazelcast.system
INFO: [127.0.0.1]:5701 [dev] [3.5.5] Copyright (c) 2008-2015, Hazelcast, Inc. All Rights Reserved.
 com.hazelcast.instance.Node
INFO: [127.0.0.1]:5701 [dev] [3.5.5] Creating TcpIpJoiner
com.hazelcast.core.LifecycleService
INFO: [127.0.0.1]:5701 [dev] [3.5.5] Address[127.0.0.1]:5701 is STARTING
com.hazelcast.nio.tcp.SocketConnector
INFO: [127.0.0.1]:5701 [dev] [3.5.5] Connecting to xxx.xx.xx.x/xxx.xx.xx.x:5701, timeout: 0, bind-any: true
com.hazelcast.nio.tcp.SocketConnector
INFO: [127.0.0.1]:5701 [dev] [3.5.5] Connecting to xxx.xx.xx.x/xxx.xx.xx.x, timeout: 0, bind-any: true
com.hazelcast.nio.tcp.SocketConnector
INFO: [127.0.0.1]:5701 [dev] [3.5.5] Connecting to /127.0.0.1:5703, timeout: 0, bind-any: true
com.hazelcast.nio.tcp.SocketConnector
INFO: [127.0.0.1]:5701 [dev] [3.5.5] Connecting to /127.0.0.1:5702, timeout: 0, bind-any: true
com.hazelcast.nio.tcp.SocketConnector
INFO: [127.0.0.1]:5701 [dev] [3.5.5] Connecting to xxx.xx.xx.x/xxx.xx.xx.x:5703, timeout: 0, bind-any: true
com.hazelcast.nio.tcp.SocketConnector
INFO: [127.0.0.1]:5701 [dev] [3.5.5] Could not connect to: /127.0.0.1:5702. Reason: SocketException[Connection refused to address /127.0.0.1:5702]
com.hazelcast.nio.tcp.SocketConnector
INFO: [127.0.0.1]:5701 [dev] [3.5.5] Could not connect to: /127.0.0.1:5703. Reason: SocketException[Connection refused to address /127.0.0.1:5703]
com.hazelcast.cluster.impl.TcpIpJoiner
INFO: [127.0.0.1]:5701 [dev] [3.5.5] Address[127.0.0.1]:5702 is added to the blacklist.
com.hazelcast.cluster.impl.TcpIpJoiner
INFO: [127.0.0.1]:5701 [dev] [3.5.5] Address[127.0.0.1]:5703 is added to the blacklist.
com.hazelcast.nio.tcp.SocketConnector
INFO: [127.0.0.1]:5701 [dev] [3.5.5] Could not connect to: xxx.xx.xx.x/xxx.xx.xx.x:5701. Reason: SocketException[Connection refused to address xxx.xx.xx.x/xxx.xx.xx.x:5701]
com.hazelcast.cluster.impl.TcpIpJoiner
INFO: [127.0.0.1]:5701 [dev] [3.5.5] Address[xxx.xx.xx.x]:5701 is added to the blacklist.
com.hazelcast.cluster.impl.TcpIpJoiner
INFO: [127.0.0.1]:5701 [dev] [3.5.5] 


Members [1] {
    Member [127.0.0.1]:5701 this
}

Jul 19, 2016 12:32:45 AM com.hazelcast.core.LifecycleService
INFO: [127.0.0.1]:5701 [dev] [3.5.5] Address[127.0.0.1]:5701 is STARTED

如您所見,連接到本地主機(127.0.0.1)沒有問題,但是它無法連接到遠程服務器xxx.xx.xx.x。 我已啟用端口以通過5ent的CentOS服務器上的防火牆進行訪問。

請特別注意以下行: INFO:[127.0.0.1]:5701 [dev] [3.5.5]無法連接至:xxx.xx.xx.x / xxx.xx.xx.x:5701。 原因:SocketException [連接拒絕地址xxx.xx.xx.x / xxx.xx.xx.x:5701]

您的配置看起來不錯,但是我假設它是偽代碼,因為沒有var-arg方法addMember 您可以多次調用addMember方法,也可以使用setMembers方法添加幾個成員。

您沒有發布第一個節點的配置。 您需要具有相同的配置-包括集群名稱和密碼(如果已定義)。

它還可能是防火牆問題-嘗試執行telnet xxx.xxxx.xxx.xx 5701以查看是否可以成功打開連接。

馬特

這是創建新客戶端的方法

import com.hazelcast.client.HazelcastClient;
import com.hazelcast.client.config.ClientConfig;

public void HazelcastCacheClient(String mapName, Map cacheMap) {

    ClientConfig cfg = new ClientConfig();
    cfg.getNetworkConfig().addAddress("xxx.xx.xx.x");

    HazelcastInstance instance = HazelcastClient.newHazelcastClient(cfg);

    cacheMap = instance.getMap(mapName);

}

使用您使用的API,您只需在localhost上啟動成員。 您需要確保在xxx.xx.xx.x:5701 (默認端口)上運行Hazelcast成員。

謝謝

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM