我仔细想了想,我的集群是内网服务器上的容器,容器之间访问应该不算经过NAT。
当然和网络相关的监控来看,的确很多机器的time-wait状态的连接不少,在5w+个左右,但也不至于导致这个问题感觉。
东东 于2021年6月17日周四 下午2:48写道:
>
> 这俩都开启的话,就要求同一源ip的连接请求中的timstamp必须是递增的,否则(非递增)的连接请求被视为无效,数据包会被抛弃,给client端的感觉就是时不时的连接超时。
>
>
>
>
这俩都开启的话,就要求同一源ip的连接请求中的timstamp必须是递增的,否则(非递增)的连接请求被视为无效,数据包会被抛弃,给client端的感觉就是时不时的连接超时。
一般来说单机不会有这个问题,因为时钟应该是一个,在NAT后面才容易出现这个现象(因为多个主机时钟通常不完全一致),但不清楚你的具体架构,只能说试一试。
最后,可以跟运维讨论一下,除非确信不会有经过NAT过来的链接,否则这俩最好别都开。
PS: kernel 4.1里面已经把 tcp_tw_reuse 这玩意废掉了,因为太多人掉这坑里了
在 2021-06-17 14:07:50,"yidan
这啥原理,这个改动我没办法直接改,需要申请。
东东 于2021年6月17日周四 下午1:36写道:
>
>
>
> 把其中一个改成0
>
>
> 在 2021-06-17 13:11:01,"yidan zhao" 写道:
> >是的,宿主机IP。
> >
> >net.ipv4.tcp_tw_reuse = 1
> >net.ipv4.tcp_timestamps = 1
> >
> >东东 于2021年6月17日周四 下午12:52写道:
> >>
> >> 10.35.215.18是宿主机IP?
> >>
> >> 看一下
把其中一个改成0
在 2021-06-17 13:11:01,"yidan zhao" 写道:
>是的,宿主机IP。
>
>net.ipv4.tcp_tw_reuse = 1
>net.ipv4.tcp_timestamps = 1
>
>东东 于2021年6月17日周四 下午12:52写道:
>>
>> 10.35.215.18是宿主机IP?
>>
>> 看一下 tcp_tw_recycle和net.ipv4.tcp_timestamps是什么值
>> 实在不行就 tcpdump 吧
>>
>>
>>
>> 在 2021-06-17 12:41:58,"yidan
是的,宿主机IP。
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_timestamps = 1
东东 于2021年6月17日周四 下午12:52写道:
>
> 10.35.215.18是宿主机IP?
>
> 看一下 tcp_tw_recycle和net.ipv4.tcp_timestamps是什么值
> 实在不行就 tcpdump 吧
>
>
>
> 在 2021-06-17 12:41:58,"yidan zhao" 写道:
> >@东东 standalone集群。 随机时间,一会一个的,没有固定规律。
@东东 standalone集群。 随机时间,一会一个的,没有固定规律。 和CPU、内存、网络的话有一定规律,但不确认,因为不是很明显。
我排查过几个exception,时间和网络尖刺对上了,但不全能对上,所以不好说是否有这个原因。
此外,有个点我不是很清楚,网上这个报错很少,类似的都是
RemoteTransportException,然后提示中说taskmager可能已丢失之类。但我的是
LocalTransportException,不清楚netty中这俩错误的含义是不是不一样。目前来看网络上关于这俩异常的资料也查不到什么。
东东 于2021年6月17日周四