Apache Ignite节点失败:无法读取魔术标头

时间:2017-07-12 08:50:04

标签: java apache ignite

部署在两台计算机上的Apache Ignite服务器会自动关闭。日志中没有具体线索。我能够在日志文件中看到以下警告消息:

[00:35:14,047][WARNING][tcp-disco-sock-reader-#86379%null%][TcpDiscoverySpi] Failed to read magic header (too few bytes received) [rmtAddr=/10.96.36.48:47830, locAddr=/10.96.36.48:47500]

我如何调试并解决此问题?

配置:

    <bean id="grid.cfg" class="org.apache.ignite.configuration.IgniteConfiguration">
                <property name="peerClassLoadingEnabled" value="true"/>
                <property name="cacheConfiguration">
                                <list>
                                        <bean class="org.apache.ignite.configuration.CacheConfiguration">
                                                <property name="name" value="xyxCache" />
                                                <property name="writeSynchronizationMode" value="FULL_SYNC" />
                                                <property name="cacheMode" value="REPLICATED" />
                                                <property name="rebalanceMode" value="SYNC" />
                                                <property name="readFromBackup" value="true" />
                                                <property name="startSize" value="150000" />
                                                <property name="evictionPolicy">
                                                        <bean class="org.apache.ignite.cache.eviction.lru.LruEvictionPolicy">
                                                                <property name="maxSize" value="1000000" />
                                                        </bean>
                                                </property>
                                        </bean>
                                </list>
                        </property>
<property name="discoverySpi">
            <bean class="org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi">
                <property name="ipFinder">
                    <bean class="org.apache.ignite.spi.discovery.tcp.ipfinder.multicast.TcpDiscoveryMulticastIpFinder">
                        <property name="addresses">
                            <list>
                                <value>10.96.36.48:47500</value>
                                <value>10.96.36.214:47500</value>
                            </list>
                        </property>
                    </bean>
                </property>
            </bean>
        </property>
    </bean>

2 个答案:

答案 0 :(得分:4)

检查10.96.36.48机器绑定到端口47830的哪个进程。 例如,netstat -lnp将列出每个侦听端口旁边的pid和进程名称。这将在Linux下运行。

答案 1 :(得分:3)

如果telnet等其他应用程序连接到端口,通常会发生这种情况。

请分享您的配置和设置详细信息,否则无法再回答。