案例分享_如何定位容器云平台重大问题.docx
《案例分享_如何定位容器云平台重大问题.docx》由会员分享,可在线阅读,更多相关《案例分享_如何定位容器云平台重大问题.docx(14页珍藏版)》请在第一文库网上搜索。
1、案例分享如何定位容器云平台重大问题摘要在容器平台中,我们除了会涉及操作系统层面的知识,还会涉及容器存储、容器网络、容器日志管理及监控告警、C1/CD (持续集成/持续交付)等相关领域的技术。每个领域都有可能是问题的产生点,只有在分析定位出具体点时,我们才好依据该技术相关工具或者阅读源码来解决它。定位问题,是在分析问题后,我们可以结合各种日志、监控告警等平台提供的功能来排除干扰项,找到问题的诱发根因。问题背景:容器平台上线一年多后,总有很少部分租户称他们的某个业务部署在Kubernetes容器平台后经常会重启,也很少部分租户称某个业务在运行一段时间时会产生大量的CLOSETAI/ ,还有租户反馈
2、说某个业务跑着就会hang住。刚开始我们都会让业务开发者先自己找问题,因为这些租户反映的只是偶偶发生,大多数租户没有反映类似问题,我们会理所当然的认为是租户业务自身问题,而非平台问题。当然大多数情况下,还是租户业务本身程序没有写好,或者健康检查配置不当等引起。1 .排除干扰项分析完了问题,一般会根据经验先从比较简单的可能产生的影响因素开始排除干扰选项,这样我们大概就会有一个比较接近问题根因的方向。比如上面三个问题中的其中一个容器内出现大量处于CLOSE_WAIT状态的TCP链接:J J产tcpCLOSE-WAIT 320172.16.84.72:3560010.129.49.16:443tcp
3、CLOSE-WAIT10172.16.84.72:870010.129.22.27:40738tcpESTAB00172.16.84.72:5428410.129.40.32:61616tcpCLOSE-WAIT10172.16.84.72:870010.129.22.27:38480tcpCLOSE-WAIT10172.16.84.72:870010.129.22.27:47020tcpESTAB00172.16.84.72:5479810.129.40.32:61616tcpESTAB00172.16.84.72:5458010.129.40.32:61616tcpESTAB00172.1
4、6.84.72:4822010.129.40.32:61616tcpESTAB00172.16.84.72:4854010.129.40.32:61616tcpCLOSE-WAIT10172.16.84.72:870010.129.22.27:56852tcpCLOSE-WAIT10172.16.84.72:870010.129.22.27:44490tcpCLOSE-WAIT10172.16.84.72:870010.129.22.27:55586tcpCLOSE-WAIT10172.16.84.72:870010.129.22.27:54204tcpCLOSE-WAIT10172.16.8
5、4.72:870010.129.22.27:46570tcpESTAB00172.16.84.72:5338810.129.40.32:61616tcpESTAB00172.16.84.72:5145610.129.40.32:61616tcpESTAB00172.16.84.72:5271610.129.40.32:61616tcpCLOSE-WAIT10172.16.84.72:870010.129.22.27:55400tcpCLOSE-WAIT10172.16.84.72:870010.129.22.27:38952rootxyx-message-center-5b869d674f-s
6、lt9t:/# ss -an I grep CLOSE-WAIT I wc -I166rootxyx-message-center-5b869d674f-slt9t:/#“CLOSE-WAIT”有很多原因引起,有可能是服务端代码处理TCP挥手不合理引起,比如忘记了 close相应的socket连接,那么自然不会发出FIN包;还比如出现死循环之类的问题,导致close最后没有被调用执行;还有可能是服务端程序响应过慢,或者存在耗时逻辑,导致close延后;也可能是accept的backlog设置的太大,导致服务端来不及消费的情况,引起多余的请求还在队列里就被对方关闭了。还有可能是内核参数配置没有做
7、优化处理,比如调整 u tcp keepalive time v u tcp keepal ive intvl v /“tcp keepalive probes”等。林林总总,但经过我们排查后,以上的可能影响点都不是,所以排除上述这些干扰选项。在排查业务问题的时候,我们还要结合“业务方”与“平台方”的各自对自身代码熟悉的优势,发挥出凝聚力,一起来排查。“业务方”一一从如下几个方向进行了代码方面的排查:1、多次检查TCP四次挥手代码逻辑;2、检查springboot的相关配置是否恰当;3、由于连接数过多,也排查了 tomcat线程池相关代码;4、修改ActiveMQ连接池的配置;5、采用jsta
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 案例 分享 如何 定位 容器 平台 重大问题