Apache Ignite 节点失败:无法读取魔术头
Posted
技术标签:
【中文标题】Apache Ignite 节点失败:无法读取魔术头【英文标题】:Apache Ignite nodes fail: Failed to read magic header 【发布时间】:2017-12-16 14:18:32 【问题描述】:部署在两台机器上的 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>
【问题讨论】:
【参考方案1】:检查 10.96.36.48 机器上的哪个进程绑定到端口 47830。
例如,netstat -lnp
将在每个侦听端口旁边列出 pid 和进程名称。这将在 Linux 下运行。
【讨论】:
【参考方案2】:如果其他应用程序(如 telnet)连接到端口,通常会发生这种情况。
请分享您的配置和设置详细信息,否则无法进一步回答。
【讨论】:
配置细节附加在问题本身。以上是关于Apache Ignite 节点失败:无法读取魔术头的主要内容,如果未能解决你的问题,请参考以下文章