#原创分享# AD负载均衡后端业务系统卡顿问题投诉分析
  

Hacking 132323人觉得有帮助

{{ttag.title}}
本帖最后由 Hacking 于 2022-5-20 13:15 编辑

     


         本来这个是不想写的,理应当是一个运维的问题,结果发现近期又出现了这样的问题,服务通过AD负载均衡器使用LB的方式对外提供服务,client连接某LB_VIP的时候,发现client发送了syn,server直接回了rst断了连接。业务侧也是一遍又一遍的投诉,登陆服务器查看资源使用top,vmstat等命令查看了一番发现服务器各项指标都没有异常。于是将问题转向了网络层,业务反映只有在访问系统后台的时候才会出现卡顿,访问其他网站正常,本地使用ping服务器外网ip正常返回,无丢包,延迟也正常。最后检查了一遍业务系统,发现了问题,还是服务端机器配置了net.ipv4.tcp_tw_recycle=1  ,这个 表示开启TCP连接中TIME-WAIT sockets的快速回收。这种配置会导致一个问题,当服务是一个网关类的应用的时候且访问量很大的时候容易出现很多的连接拒绝的情况。

一, 现象:

        资源池几台danted代理通过公网地址访问次级管理中心的负载均衡器业务8803端口偶尔会出现连接不上的问题,反映系统后台存在卡顿问题
     
二, 原因:

    之前业务同事为改善time_wait连接数过多问题曾改过该内核参数,次级管理中心开启了net.ipv4.tcp_tw_recycle, 内核会记录TIME_WAIT连接的对端信息,包括IP地址、时间戳。当内核收到同一个IP的数据包时,就会去比较时间戳,检查包的时间戳是否滞后,如果滞后,就将其丢掉(认为是旧连接的数据)。当多台设备通过nat访问次级管理中心,使用同一个ip,设备之间如果时间不同步或者时间波动,某台设备的sync包时间戳可能会小于内核记录的TIME_WAIT连接的时间戳而被丢弃,导致不能正常建立连接。

通过netstat可以证实:
  1. <font size="3">    [root@VM-OS01-CSCENTER-28 ~]$ netstat -s |grep reject
  2.     74671837 passive connections rejected because of time stamp
  3.     92342 packets rejects in established connections because of timestamp
  4. </font>
复制代码

三,解决方法:

       次级管理中心关闭tcp_tw_recycle, 确认无影响
   
四,操作步骤(在所有次级管理中心)

     1,sudo sysctl -w net.ipv4.tcp_tw_recycle=0   系统实时生效
     2,修改/etc/sysctl.conf, 把net.ipv4.tcp_tw_recycle = 1 改成 net.ipv4.tcp_tw_recycle = 0  ,以便下次机器重启时依然生效

总结一下:

     网上的帖子,大多都写开启net.ipv4.tcp_tw_recycle这个开关,可以快速回收处于TIME_WAIT状态的socket(针对Server端而言)。而实际上,这个开关,需要net.ipv4.tcp_timestamps(默认开启的)这个开关开启才有效果。更不为提到却很重要的一个信息是:当tcp_tw_recycle开启时(tcp_timestamps同时开启,快速回收socket的效果达到),对于位于NAT设备后面的Client来说,是一场灾难——会导到NAT设备后面的Client连接Server不稳定(有的Client能连接server,有的Client不能连接server)。也就是说,tcp_tw_recycle这个功能,是为“内部网络”(网络环境自己可控——不存在NAT的情况)设计的,对于公网,不宜使用。通常,“回收”TIME_WAIT状态的socket是因为“无法主动连接远端”,因为无可用的端口,而不应该是要回收内存(没有必要)。即,需求是“Client”的需求,Server会有“端口不够用”的问题吗?除非是前端机,需要大量的连接后端服务——即充当着Client的角色。

      经过此次故障,告诫我们在处理线上问题时,不能盲目修改参数,一定要经过测试,确认无误后,再应用于生产环境。同时,也要加深对相关内核参数的认识和理解。



  世间万物,无一及你,希望本文能帮助您了解AD并熟悉其使用。喜欢的来个一键三连(关注+收藏+点赞),怕下次有好东西分享不到你。

795016287238b96c90.png (486.26 KB, 下载次数: 275)

795016287238b96c90.png

打赏鼓励作者,期待更多好文!

打赏
54人已打赏

cyq 发表于 2022-5-20 09:27
  
果然是高手在民间,楼主帖子写的不错,很有参考价值,还想看更多精彩分享,期待楼主下一篇好帖!
头像被屏蔽
新手741261 发表于 2022-5-20 11:50
  
提示: 作者被禁止或删除 内容自动屏蔽
头像被屏蔽
新手780102 发表于 2022-5-20 11:58
  
提示: 作者被禁止或删除 内容自动屏蔽
zjwshenxian 发表于 2022-5-20 13:21
  

果然是高手在民间,楼主帖子写的不错,很有参考价值,还想看更多精彩分享,期待楼主下一篇好帖!
阿勒泰 发表于 2022-5-20 15:29
  
感谢分享,有助于工作,学习了!!!
এ塔铃独语别黄昏এ 发表于 2022-5-20 15:37
  
感谢分享有助于工作和学习!
卢美美 发表于 2022-5-20 19:57
  
感谢分享有助于工作和学习!
慈行普渡 发表于 2022-5-20 20:01
  
感谢分享有助于工作和学习!
HeJing 发表于 2022-5-20 20:14
  
感谢分享有助于工作和学习!
发表新帖
热门标签
全部标签>
西北区每日一问
安全效果
高手请过招
【 社区to talk】
社区新周刊
产品连连看
每日一问
干货满满
技术咨询
标准化排查
GIF动图学习
纪元平台
新版本体验
社区帮助指南
信服课堂视频
功能体验
技术盲盒
安装部署配置
解决方案
SDP百科
自助服务平台操作指引
S豆商城资讯
秒懂零信任
每周精选
畅聊IT
答题自测
专家问答
技术笔记
技术圆桌
在线直播
MVP
网络基础知识
升级
安全攻防
上网策略
测试报告
日志审计
问题分析处理
流量管理
每日一记
运维工具
云计算知识
用户认证
原创分享
sangfor周刊
VPN 对接
项目案例
SANGFOR资讯
专家分享
技术顾问
信服故事
功能咨询
终端接入
授权
设备维护
资源访问
地址转换
虚拟机
存储
迁移
加速技术
排障笔记本
产品预警公告
玩转零信任
信服圈儿
技术争霸赛
「智能机器人」
追光者计划
深信服技术支持平台
答题榜单公布
2023技术争霸赛专题
通用技术
卧龙计划
华北区拉练
天逸直播
以战代练
技术晨报
山东区技术晨报
文档捉虫活动
齐鲁TV
华北区交付直播
2024年技术争霸赛
北京区每日一练
场景专题
故障笔记
排障那些事
升级&主动服务
高频问题集锦
POC测试案例
全能先锋系列
云化安全能力

本版达人

新手61940...

本周建议达人

zhao_HN

本周分享达人

ZSFKF

本周提问达人