spring GridGain节点不能与Ignite节点位于一个群集中

nsc4cvqm  于 2022-12-02  发布在  Spring
关注(0)|答案(3)|浏览(144)

我正在运行本地ignite(8.7.21)服务器在本地下面是ignite服务器启动和运行的确认日志。然而,当我试图从Java客户端连接时,面临下面的问题有什么想法?

本地服务器日志:

拓扑快照[版本=11,位置节点= 34 f4 abec,服务器=1,客户端=0,状态=活动,CPU =2,堆外=2.0GB,堆=6.0GB] ^--基线[ID=0,大小=1,联机=1,脱机=0]

出版日期:

导致原因:类组织。网格增益。网格。内部。处理器。节点验证。节点验证异常:GridGain节点不能与Ignite节点在一个群集中[locNodeAddrs=[计算机名/0:0:0:0:0:0:1,/10.136.68.128,/127.0.0.1],rmtNodeAddrs=[计算机名/0:0:0:0:0:0:0:1,/10.136.68.128,/127.0.0.1]]

Java客户端中的默认缓存.xml

<bean id="igniteBean" class="org.apache.ignite.configuration.IgniteConfiguration" abstract="true">
        <property name="discoverySpi">
            <bean class="org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi">
                <property name="localPort" value="48500"/>
                <property name="localPortRange" value="5"/>
            </bean>
        </property>
    </bean>

用于启动ignite服务器的default-xml

<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="
       http://www.springframework.org/schema/beans
       http://www.springframework.org/schema/beans/spring-beans.xsd">

    <bean id="private.ignite.cfg" class="org.apache.ignite.configuration.IgniteConfiguration" abstract="true">
        <property name="discoverySpi">
            <bean class="org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi">
                <property name="localPort" value="48500"/>
                <property name="localPortRange" value="5"/>
            </bean>
        </property>
    </bean>
xv8emn3q

xv8emn3q1#

基于IP相同,我推测您正在同一台计算机上运行GridGain java示例和Ignite java示例。
使用jps -v/jinfo查找计算机上运行的所有java进程,并关闭GridGain进程。
IP相同:

[locNodeAddrs=[machine name/0:0:0:0:0:0:0:1, /10.136.68.128, /127.0.0.1], rmtNodeAddrs=[ machine name/0:0:0:0:0:0:0:1, /10.136.68.128, /127.0.0.1]]

您可以使用classpath/startup location/logs来判断该进程是否是GridGain/Ignite进程

des4xlb0

des4xlb02#

Caused by: class org.gridgain.grid.internal.processors.nodevalidation.NodeValidationException: GridGain node cannot be in one cluster with Ignite node [locNodeAddrs=[machine name/0:0:0:0:0:0:0:1, /10.136.68.128, /127.0.0.1], rmtNodeAddrs=[ machine name/0:0:0:0:0:0:0:1, /10.136.68.128, /127.0.0.1]]

2可能的原因:

  • 同时运行Apache Ignite和GridGain版本
  • 您同时运行不同的GridGain版本,如Community和Ultimate版本。

请注意,您的网格版本是8.7.21,这意味着它不是Ignite,而是GridGain版本。请检查您的机器上是否正在Kubernetes/Docker环境中运行另一个网格。不过,我也遇到过这种情况。
或者,显式配置静态IpFinder:

<bean class="org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi">
    <property name="ipFinder">
          <bean class="org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder">
              <property name="addresses">
                 <list>
                    <value>localhost:48500..48509</value>
                 </list>
              </property>

             .... <your values>

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

n53p2ov03#

你有没有得到解决这个问题的方法?我看到的是一样的,我注意到的唯一另一件事是服务器和节点有不同的Java版本,我不确定这是否会导致问题。

2022-12-02 04:25:41,302 [:27] MINOR org.apache.ignite.logger.java.JavaLogger - Local java version is different from remote [loc=8, rmt=11]
2022-12-02 04:25:41,564 [:27] MINOR org.apache.ignite.logger.java.JavaLogger - GridGain node cannot be in one cluster with Ignite node [locNodeAddrs=[crm-a-0.crm.default.svc.cluster.local/10.62.28.37, /127.0.0.1], rmtNodeAddrs=[gridgain-cluster-0.gridgain-service.gridgain.svc.cluster.local/10.62.28.38, /127.0.0.1]]
2022-12-02 04:25:41,568 [:27] MAJOR org.apache.ignite.logger.java.JavaLogger - Got exception while starting (will rollback startup routine).
class org.gridgain.grid.internal.processors.nodevalidation.NodeValidationException: GridGain node cannot be in one cluster with Ignite node [locNodeAddrs=[crm-a-0.crm.default.svc.cluster.local/10.62.28.37, /127.0.0.1], rmtNodeAddrs=[gridgain-cluster-0.gridgain-service.gridgain.svc.cluster.local/10.62.28.38, /127.0.0.1]]

除此之外,服务器和客户端都在K8s集群中运行GridGain版本=8.8.22#20220919。
谢谢LS

相关问题