2017-10-04 6 views
0

私の質問はhazelcast-clientの設定に関するものです。 私が理解しているところから、クライアントが正しく設定されていると、クライアントはHACAPIノードIPをAWS APIから自動的にフェッチすることになっています。問題は接続しようとしてもありません。AWSのHazelcast-client設定

ここにいくつかのログがあります。

Caused by: java.lang.IllegalStateException: Unable to connect to any address in the config! The following addresses were tried: [] 
    at com.hazelcast.client.spi.impl.ClusterListenerSupport.connectToCluster(ClusterListenerSupport.java:178) 
    at com.hazelcast.client.spi.impl.ClientClusterServiceImpl.start(ClientClusterServiceImpl.java:189) 

もここ

<bean id="hazelcastInstance" class="com.hazelcast.client.HazelcastClient" factory-method="newHazelcastClient"> 
     <constructor-arg> 
      <bean class="com.hazelcast.client.config.ClientConfig"> 
       <property name="groupConfig"> 
        <bean class="com.hazelcast.config.GroupConfig"> 
         <property name="name" value="dev"/> 
        </bean> 
        </property> 

        <property name="properties"> 
         <props> 
         <prop key="hazelcast.icmp.enabled">true</prop> 
         </props> 
        </property> 
       <property name="networkConfig"> 
        <bean class="com.hazelcast.client.config.ClientNetworkConfig"> 

        <property name="awsConfig"> 
          <bean class="com.hazelcast.client.config.ClientAwsConfig"> 
           <property name="insideAws" value="true" /> 
           <property name="enabled" value="${hazelcast.aws.enabled:false}" /> 
           <property name="region" value="${hazelcast.aws.region:set-me}" /> 
           <property name="accessKey"value="key" /> 

           <property name="secretKey" value="secret"/> 


           <property name="hostHeader" value="ec2.amazonaws.com"/> 
           <property name="iamRole" value="${hazelcast.aws.iam.role:#{null}}"/> 
           <!-- <property name="securityGroupName" value="${hazelcast.aws.securityGroupName:#{null}}" /> --> 
           <property name="tagKey" value="${hazelcast.aws.tagKey:hazelcast-cluster}" /> 
           <property name="tagValue" value="${hazelcast.aws.tagValue:#{null}}" /> 
           <property name="connectionTimeoutSeconds" value="${hazelcast.aws.connectionTimeout:15}" /> 

          </bean> 
         </property> 
        </bean> 
       </property> 
      </bean> 

     </constructor-arg> 
    </bean> 

をconifigクライアントも動作するサーバーのIPアドレスを、強制的に試みたです。私は自動的にサーバーipsを発見するためにクライアントが必要です。どんな手掛かり ?

答えて

0

クライアントがAWS(または他のクラウド)上のクラスタを検出するようにするには、ディスカバリプラグインメカニズムを使用する必要があります。古いAWSの発見はメンバーのためだけでした。

AWS上https://github.com/hazelcast/hazelcast-aws

+1

SPIの発見は、仕事、感謝をして見てください! – vincpel

関連する問題