nacos client: 2.1.1 nacos server: 2.1.1
在k8s 环境上,启动 集成了 nacos-client 程序的程序向 server端进行注册,启动客户端程序,偶现注册失败的场景,cleint 日志如下: java.util.concurrent.TimeoutException: Waited 3000 milliseconds (plus 1574 milliseconds, 397150 nanoseconds delay) for com.alibaba.nacos.shaded.io.grpc.stub.ClientCalls$GrpcFuture@3ba40a88[status=PENDING, info=[GrpcFuture{clientCall=ClientCallImpl{method=MethodDescriptor{fullMethodName=Request/request, type=UNARY, idempotent=false, safe=false, sampledToLocalTracing=true, requestMarshaller=com.alibaba.nacos.shaded.io.grpc.protobuf.lite.ProtoLiteUtils$MessageMarshaller@1b56453c, responseMarshaller=com.alibaba.nacos.shaded.io.grpc.protobuf.lite.ProtoLiteUtils$MessageMarshaller@acb3415, schemaDescriptor=com.alibaba.nacos.api.grpc.auto.RequestGrpc$RequestMethodDescriptorSupplier@57e0c65d}}}]] at com.alibaba.nacos.shaded.com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:508) ~[nacos-client-2.1.1.jar!/:na] at com.alibaba.nacos.common.remote.client.grpc.GrpcClient.serverCheck(GrpcClient.java:195) [nacos-client-2.1.1.jar!/:na] at com.alibaba.nacos.common.remote.client.grpc.GrpcClient.connectToServer(GrpcClient.java:306) [nacos-client-2.1.1.jar!/:na] at com.alibaba.nacos.common.remote.client.RpcClient.reconnect(RpcClient.java:521) [nacos-client-2.1.1.jar!/:na] at com.alibaba.nacos.common.remote.client.RpcClient.lambda$start$2(RpcClient.java:369) [nacos-client-2.1.1.jar!/:na] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) ~[na:1.8.0_332] at java.util.concurrent.FutureTask.run(FutureTask.java:266) ~[na:1.8.0_332] at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) ~[na:1.8.0_332] at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) ~[na:1.8.0_332] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) ~[na:1.8.0_332] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) ~[na:1.8.0_332] at java.lang.Thread.run(Thread.java:750) ~[na:1.8.0_332] 2023-02-23 02:33:39.464 INFO [com.alibaba.nacos.client.remote.worker:c.a.n.c.r.client] [0354661c-dcf6-471e-8508-008738b51a7e] Fail to connect server, after trying 13 times, last try server is {serverIp = 'nacos-test.nacos', server main port = 8848}, error = unknown 2023-02-23 02:33:39.483 INFO [com.alibaba.nacos.client.remote.worker:c.a.n.c.r.client] [43edd6d1-7156-483e-8390-083ee3c1cd2b] Fail to connect server, after trying 63 times, last try server is {serverIp = 'nacos-test.nacos', server main port = 8848}, error = unknown 2023-02-23 02:33:39.483 INFO [com.alibaba.nacos.client.remote.worker:c.a.n.c.r.client] [1612d566-4f8d-47bc-b6c9-d3a36223f534] Fail to connect server, after trying 91 times, last try server is {serverIp = 'nacos-test.nacos', server main port = 8848}, error = unknown 2023-02-23 02:33:39.509 INFO [com.alibaba.nacos.client.remote.worker:c.a.n.c.r.client] [3de1a5c6-f400-477d-affe-1ce02ce113fc] Fail to connect server, after trying 67 times, last try server is {serverIp = 'nacos-test.nacos', server main port = 8848}, error = unknown 2023-02-23 02:33:39.510 INFO [com.alibaba.nacos.client.remote.worker:c.a.n.c.r.client] [60d9b50c-716e-4ae8-acfb-bec6e058ab17] Fail to connect server, after trying 95 times, last try server is {serverIp = 'nacos-test.nacos', server main port = 8848}, error = unknown 2023-02-23 02:33:39.510 INFO [com.alibaba.nacos.client.remote.worker:c.a.n.c.r.client] [527cacaa-6ff6-4dc9-81a6-46578dff395f] Fail to connect server, after trying 22 times, last try server is {serverIp = 'nacos-test.nacos', server main port = 8848}, error = unknown 2023-02-23 02:33:39.511 INFO [com.alibaba.nacos.client.remote.worker:c.a.n.c.r.client] [0298e9e3-3286-4501-9214-5e5a16c16398] Fail to connect server, after trying 64 times, last try server is {serverIp = 'nacos-test.nacos', server main port = 8848}, error = unknown 2023-02-23 02:33:39.544 INFO [com.alibaba.nacos.client.remote.worker:c.a.n.c.r.client] [280f10e9-8409-4e26-b7aa-ea0d6c0491cb] Fail to connect server, after trying 64 times, last try server is {serverIp = 'nacos-test.nacos', server main port = 8848}, error = unknown
server 端日志有异常:
io.grpc.netty.shaded.io.netty.handler.codec.http2.Http2Exception$StreamException: Received DATA frame for an unknown stream 5 at io.grpc.netty.shaded.io.netty.handler.codec.http2.Http2Exception.streamError(Http2Exception.java:147) at io.grpc.netty.shaded.io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener.shouldIgnoreHeadersOrDataFrame(DefaultHttp2ConnectionDecoder.java:596) at io.grpc.netty.shaded.io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder$FrameReadListener.onDataRead(DefaultHttp2ConnectionDecoder.java:239) at io.grpc.netty.shaded.io.netty.handler.codec.http2.Http2InboundFrameLogger$1.onDataRead(Http2InboundFrameLogger.java:48) at io.grpc.netty.shaded.io.netty.handler.codec.http2.DefaultHttp2FrameReader.readDataFrame(DefaultHttp2FrameReader.java:422) at io.grpc.netty.shaded.io.netty.handler.codec.http2.DefaultHttp2FrameReader.processPayloadState(DefaultHttp2FrameReader.java:251) at io.grpc.netty.shaded.io.netty.handler.codec.http2.DefaultHttp2FrameReader.readFrame(DefaultHttp2FrameReader.java:160) at io.grpc.netty.shaded.io.netty.handler.codec.http2.Http2InboundFrameLogger.readFrame(Http2InboundFrameLogger.java:41) at io.grpc.netty.shaded.io.netty.handler.codec.http2.DefaultHttp2ConnectionDecoder.decodeFrame(DefaultHttp2ConnectionDecoder.java:174) at io.grpc.netty.shaded.io.netty.handler.codec.http2.Http2ConnectionHandler$FrameDecoder.decode(Http2ConnectionHandler.java:378) at io.grpc.netty.shaded.io.netty.handler.codec.http2.Http2ConnectionHandler.decode(Http2ConnectionHandler.java:438) at io.grpc.netty.shaded.io.netty.handler.codec.ByteToMessageDecoder.decodeRemovalReentryProtection(ByteToMessageDecoder.java:498) at io.grpc.netty.shaded.io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:437) at io.grpc.netty.shaded.io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:276) at io.grpc.netty.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) at io.grpc.netty.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) at io.grpc.netty.shaded.io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) at io.grpc.netty.shaded.io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410) at io.grpc.netty.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) at io.grpc.netty.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) at io.grpc.netty.shaded.io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919) at io.grpc.netty.shaded.io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:792) at io.grpc.netty.shaded.io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:475) at io.grpc.netty.shaded.io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:378) at io.grpc.netty.shaded.io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989) at io.grpc.netty.shaded.io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) at io.grpc.netty.shaded.io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) at java.lang.Thread.run(Thread.java:750)
看起来是连接不上server 端报错,一直在重试 但是在该client 节点通过curl (curl 'http://nacos-test.nacos:8848/nacos/v1/ns/catalog/services?hasIpCount=true&withInstances=false&pageNo=1&pageSize=10) 是可以正常返回结果的,重启client又可以正常注册了;这里会是什么原因(网络?)导致呢