一文梳理 RedHat 和 CentOS 运维中的网络知识(2)
故障诊断处理方面不是一两句话就可以说清楚的,很大程度上在于平时经验的积累,很多故障都是相互关联的,如何顺藤摸瓜,找到问题的最终原因,有一些方法可以借鉴。这里不具体描述解决那个问题用了什么方法,只是聊聊解决问题有哪些经验和技巧。 分享一点小小的经验: a)平时要多问几个为什么 b)故障是否可以重现,找到第一个场景,关注整体结合细节 c)多方面相互参考,同事之间相互配合 d)可以多做几个假设,直到推翻自己的想法 e)自己的工具箱要有几个使用顺手的TOOLS,包括自己开发的 以上只是一些解决问题的方法,具体问题还要具体分析。 下面我们结合一个真实的案例来描述一下:在出现网络故障时,。我们如何想办法快速的排除问题。 场景描述: 某日下午,公司里内部的业务系统突然出现反应比较慢的问题,多个业务管理员过来描述问题现象。近期一段时间内曾出现过类似的问题,该类问题的原因是由于业务区的防火墙老旧,处理能力不足,导致CPU在短时间内使用率激增,超过了境界阈值很多,导致此类现象的发生。 解决思路: 1)初步定位 又是类似问题的出现,肯定不是个别业务系统的问题,一看就是有共性的,问题应该是出现在网络设备上才对,这样才会造成大面积的问题,可是该防火墙一周前已经升级换代了,不应该有此类问题了。查看业务区域拓扑,因为拓扑已经在心中,直接搞起。 2) 逐步排查 首先登录新的防火墙,查看CPU使用率,一切正常,看来问题不在此。 然后登录业务系统去交换机查看负载,一看果然是高,高达99%,我勒个去,配合网络管理员查看问题原因,查看各种性能信息,初步没有太合理的线索,不能精准定位问题。收集各种信息准备发给厂商支持。 3) 协助排查 多方回忆近期有无做过其他操作。 网络方面: 一周前升级换代该区域防护墙 主机方面: 昨天接入6太新设备,并做端口绑定bond 4)再次排查 由于该区域Windows主机设备均已经安装杀毒软件,病毒的可能性不大,Linux 病毒可能性就更小了,先初步忽略。 由于昨天上线6个主机设备,着重观察网络设备所连接端口, 通过交换机和监控性能视图分析该端口今天出现流量过大的问题,端口饱和。由于影响业务面比较广,需要快速定位问题或者暂时消除影响。初步意见,交换机上线shutdown 这6台机器所连端口。持续观察了一段时间,交换机CPU 负载下来了,其他业务逐渐恢复。考虑到已经下班,暂时观察一下,明天看情况再做调整。并结合一下厂商意见。 5) 第二日上班后,6台机器业务恢复,交换机CPU负载又上来了,但是其他业务没有影响,什么情况?再次进行梳理,找问题线索。 6) 进一步排查 网络管理员打开debug 查看信息,经过一段时间的分析梳理发现有12个mac 地址频繁的在两台交换机来回出现,核对mac 后,可以定位引起CPU过载的原因是这新上线的6台机器(每台机器两个端口bond),果断拔掉其中一个端口,交换机CPU负载很快下来,那么就可以能定位bond绑定有问题。 7) 系统进一步排查 我做了很多次bond了,就算这次换了一个高版本操作系统应该也没有问题啊,果断检查之,查看绑定模式,一看模式为0 ,当时一惊,不应该啊。进一步查看确实是模式配置错误了,当初我想设定的是模式6,后来不知道怎么写成0 了,以为其他机器都是拷贝过去的,所以都是模式0了,立马改之。重启网卡,一切看似正常,重新插入网线观察交换机CPU 负载很稳定。这次CPU高应该是这个引起的无疑了,这个锅扣到我脑袋上了。 8)下午14:00,问题又出现了,这次交换机的cpu也不高了,什么情况,一脸懵逼的状态。 再次排查,这次聚焦交换机,收集大量信息反馈给厂商,很快厂商给出的建议说是端口饱和丢包严重,影响了其他业务端口的正常使用,经过厂商进一步排查确认,该型号交换机虽然以前性能很好,但是已经属于老旧设备,该型号端口组背板能力只有1G,该组其他端口带宽总和已经超过了1G,属于交换机处理能力不足。 9) 进一步协调该项目人员,调整大量交互端口成内网私有网段,单独使用一个千兆交换机做内部业务交互使用,外部访问还继续走这个交换机。最终这个问题得到解决。 总结: 此次事件引出三个问题: 1.端口绑定不可马虎,需要仔细再仔细,并做验证 2.预估业务端口网络流量不足,主机设备连线分配不合理 3.交换机老旧,处理能力不足 后续应该针对此类事情多多的总结,升级换代产品,深入了解业务特性。 【编辑推荐】
点赞 0 (编辑:ASP站长网) |