Hazelcast Kubernetes警告未知协议

时间:2020-10-16 11:59:30

标签: java spring-boot kubernetes openshift hazelcast

我正在使用Zookeeper Hazelcast发现,但是现在我将其更改为Hazelcast-Kubernetes。似乎工作正常,但有时它会显示警告消息,例如:

2020-10-16 13:45:27.434  WARN 1 --- [.IO.thread-in-1] com.hazelcast.nio.tcp.TcpIpConnection    : [10.131.6.73]:5701 [dev] [3.12.7] Connection[id=6, /10.131.6.73:5701->/10.131.6.1:58546, qualifier=null, endpoint=null, alive=false, type=NONE] closed. Reason: Exception in Connection[id=6, /10.131.6.73:5701->/10.131.6.1:58546, qualifier=null, endpoint=null, alive=true, type=NONE], thread=hz.switch-data-analytics.IO.thread-in-1

java.lang.IllegalStateException: Unknown protocol: OPT
             at com.hazelcast.nio.tcp.UnifiedProtocolDecoder.onRead(UnifiedProtocolDecoder.java:107)
             at com.hazelcast.internal.networking.nio.NioInboundPipeline.process(NioInboundPipeline.java:135)
             at com.hazelcast.internal.networking.nio.NioThread.processSelectionKey(NioThread.java:369)
             at com.hazelcast.internal.networking.nio.NioThread.processSelectionKeys(NioThread.java:354)
             at com.hazelcast.internal.networking.nio.NioThread.selectLoop(NioThread.java:280)
             at com.hazelcast.internal.networking.nio.NioThread.run(NioThread.java:235)

2020-10-16 13:45:27.438  WARN 1 --- [.IO.thread-in-2] com.hazelcast.nio.tcp.TcpIpConnection    : [10.131.6.73]:5701 [dev] [3.12.7] Connection[id=7, /10.131.6.73:5701->/10.131.6.1:58548, qualifier=null, endpoint=null, alive=false, type=NONE] closed. Reason: Exception in Connection[id=7, /10.131.6.73:5701->/10.131.6.1:58548, qualifier=null, endpoint=null, alive=true, type=NONE], thread=hz.switch-data-analytics.IO.thread-in-2

java.lang.IllegalStateException: TLS handshake header detected, but plain protocol header was expected.
             at com.hazelcast.nio.tcp.UnifiedProtocolDecoder.loadProtocol(UnifiedProtocolDecoder.java:125)
             at com.hazelcast.nio.tcp.UnifiedProtocolDecoder.onRead(UnifiedProtocolDecoder.java:87)
             at com.hazelcast.internal.networking.nio.NioInboundPipeline.process(NioInboundPipeline.java:135)
             at com.hazelcast.internal.networking.nio.NioThread.processSelectionKey(NioThread.java:369)
             at com.hazelcast.internal.networking.nio.NioThread.processSelectionKeys(NioThread.java:354)
             at com.hazelcast.internal.networking.nio.NioThread.selectLoop(NioThread.java:280)
             at com.hazelcast.internal.networking.nio.NioThread.run(NioThread.java:235)

我找不到OPT等之类的协议用法。

我应该如何清除此警告?

注意:

我正在使用openshift,并且我的spring boot应用程序在一个名称空间下的3个Pod中使用hazelcast分布式缓存。

这是我的设置:

config.getNetworkConfig().getJoin().getMulticastConfig().setEnabled(false);
config.getNetworkConfig().getJoin().getAwsConfig().setEnabled(false);
config.getNetworkConfig().getJoin().getTcpIpConfig().setEnabled(false);
        config.getNetworkConfig().getJoin().getKubernetesConfig().setEnabled(true)
            .setProperty("service-name", applicationProperties.getHazelcast().getServiceName())
            .setProperty("namespace", applicationProperties.getPod().getNamespace());

1 个答案:

答案 0 :(得分:3)

GH Issue中有类似的问题报告。如此处所述,添加以下部分可能会解决问题:

- containerPort: 5701

无论如何,它可能是hazelcast-kubernetes的错误。随时将“重现步骤”添加到以下Hazelcast Kubernetes GH Issue中。