扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
来源:51CTO 2012年06月26日
关键字:网络运维
随着信息化进程的飞速发展,网络已经成为每个现代企业必须的要素之一。相对于网络维护,网络运维更加侧重于保障网络系统的正常运行,运维有运行和维护两层含义。对于一个系统,有时出错我们无法预知,系统越复杂,其难维护难度更大,为了减少损失,我们尽可能地去预防各种错误,对于突发情况,尽可能地去修复。
紧急故障解决的通用流程
在本文开始前,笔者先给出紧急故障解决的流程图,见图一。
图一
根据上述流程图,我们可以一目了然明白处理网络运维的紧急故障的处理流程。
当客户端发生网络中断的故障后,首先判断用户(或终端)到三层网关设备之间通道是否存在问题,从用户(或终端)上ping网关是否能通,用户(或终端)自身是否发生问题。
二层网络是否正常:如果用户(或终端)ping网关不通,则检查下端二层网络、用户网线、三层网关设备以下网线或光纤是否正常,端口是否UP,是否有CRC error报文统计。检查二层网络中的交换机设备是否能正常学习到用户MAC地址,检查三层网关设备与二层交换设备之间的连通性、二层设备的CPU利用率是否正常,是否有二层环路造成或病毒攻击。首先确保用户(或终端)能正常ping通网关设备。
三层网络是否正常:可以通过telnet/console口登陆三层设备,如果有问题,通过ping、tracert、show logging、端口统计、CPU利用率统计、链路状态、路由表状态、MPLS标签表状态等对问题进行分析,在业务忙时,不得擅自重启或倒换三层核心路由器等设备。
如果用户上网或承载业务仍然存在故障,可以查看DNS等外界环境是否正常,承载的业务本身是否发生问题,查看相关告警,然后做出相应的处理。
其它问题,如果现场不能解决,就通报关键用户并联系厂商解决。
在本文中,笔者就以网络不通的故障为例,讲解网络运维的紧急故障处理的比较通用的思路和解决方式。
假设有一天,接到通知报告网络不通了。给人的第一感觉是某个服务出现异常而中断,比如打不开OA页面,或者打不开Google页面。让我们看看,一个合格的运维人员是如何循遵怎样的思路来寻找故障的原因并解决的。
确定哪些服务中断
首先要做的就是区分内网服务和外网服务。
在笔者所在公司中,很多自己开发的、只限于公司员工使用的服务都是内网服务,比如OA、邮箱、ERP等等。而像QQ、微博那样的则属于外网服务了。
在这样的环境下,内网服务的网络关键节点如下所示:
终端→接入交换机→联网路由器→核心路由器→核心交换机→服务器
依赖的基础服务为:内网DNS服务器。
外网服务的网络关键节点如下所示:
终端→接入交换机→核心交换机→互联网接入交换机→上网行为管理设备→互联网防火墙→外网服务器
依赖的基础服务为:内网DNS服务器,公网DNS服务器。
如果当前访问的服务突然中断,那么首先看看是内网的服务还是外网的服务。然后再在内网和外网分别自选一种服务尝试访问一下。例如ERP突然无法访问了,那就尝试访问一下内网的门户系统和邮件系统,以及外网的一个知名网站。
以下表格(表二)有助于理解故障寻找的过程和思路:
表二
确定其他人的症状相同
只是从自己的机器对网络和服务做出判断并不够客观,也不够严谨。前面我们已经大致的推测出故障原因,在这一节我们尝试对这个推测进行证明。
要记住这一点:可重复的结果才是基本可靠的结果。
为了证实测试结果的可重复性,我们需要从不同的网络起点重复相同的测试步骤。
让我们以公司的实际场景来阐述分析故障的思路。目前随着网络技术的成熟,网络架构也趋于稳定,一般的全省级的公司网络拓扑示意图如图三:当然,实际工作中,地市分公司下面,根据业务需要,还会有县级的办公网络、营业网点,实际广域网络会达到三层。
1、要保障全省骨干网络运行安全,在总部核心区域会采用双核心路由器和双核心交换机的冗余架构,做到核心设备和线路的冗余,并保证网络业务调整的弹性;
2、服务器区根据业务运行安全考虑,也将进行分区,不同业务区域的服务器接入不同的服务器交换机,双线上联到核心交换机。
3、地市公司采用路由器和省公司联网,公司在线业务系统重要性较高的情况下,地市分公司到总部会采用租用不同运营商的线路,做双线上联。
4、,公司的办公室电脑通过接入交换机接入局域网。接入交换机上可根据办公业务区域划分VLAN,增加内网安全性。
图三
在这种网络环境下,将一般骨干网出故障的情况降到最低,但是实际工作中,还是有不少网络用户会反映这样那样的网络问题:例如我们自己的计算机客户端不能访问ERP系统,并且Ping不通ERP系统的IP地址,那么我们会据此推测ERP系统的服务器失去响应了;如果在自己电脑上还能ping通其它服务器IP地址,或访问其它服务(譬如WEB方式访问OA正常),那ERP系统的服务器失去响应了可能性大大加强;最后,如果在我隔壁办公室的同事也出现了同样的问题,我们就有更大的把握说ERP系统确实出现了问题;如果其它反之,如果其他人一切正常,只有我自己无法访问ERP系统,那么很大的概率是自己的计算机出现了问题。
确定服务中断是软件还是硬件所致
如果某个服务出现中断,大致上的原因一般为网络链路、网络设备、服务器等硬件问题或者服务器操作系统、应用系统等软件问题。我们可以使用ping这个操作系统自带的命令行工具来对这两种原因进行区分。
判断原则:Ping不通服务的IP地址属于硬件故障,能ping通则为软件故障。
Ping不通服务的IP地址属于硬件故障,能ping通则为软件故障。但是如果设置了服务器不对Ping做出响应的话,这时候可以使用nmap来探测目标设备。有关nmap的资料可参阅《浅议广域网中主机发现与管理:http://stlzy.blog.51cto.com/69882/641250
其他人和我一样吗?其它系统和疑似故障系统一样吗?
只是从自己的机器对网络和服务做出判断还是不够客观的,我们还需要更严谨的论证。前面我们已经大致的推测出故障原因,在这一节我们尝试对这个推测进行证明。
判断原则:可重复的结果才是基本可靠的结果。
让我们以几个假设来掩饰解决故障的思路。
假设1:总部A用户Ping不通服务器a而B用户可以。
因为A与B用户访问服务器a走过的是同样的网络路径,都是经过接入交换、核心交换、服务器交换,所以问题出在甲用户的自身。
假设2:总部A用户可以访问服务器a而不能访问服务器b,B用户有同样的故障现象。
因为A与B用户访问服务器a、b走过的是同样的网络路径,所以一般可以证明是服务器b本身问题或者是服务器b接入交换机硬件设备或上下行网络链路问题。
假设3:某个分公司E用户与F用户不能访问任何一台服务器,而总部A、B和分公司C、D四个用户没问题。
因为该分公司E、F用户访问任何一台服务器都要经过分公司接入交换2和联网路由2,所以应该联网路由2是关键节点,联网路由2本身的物理故障、联网路由的协议、或者网路由2和核心路由网络链路故障都是首先排除范围。
假设4:某个分公司C用户发现无法访问服务器a,询问后得知其他用户故障现象相同。
由于每个用户访问服务器a的路径不同,所以越靠近终点的网络路径和网络设备可疑性最大。从图三来看节点是服务器a的接入交换机这节点可能性最大,为较严重故障。
确定断点在何处
根据前面的排查,已经可以基本的确定是不是服务器的问题。如果是网络的问题,那么我们还要确定出断点才行。现在,我们要使用ping和tracert这两条命令完成这项工作。
假如我们事前已经对网络的拓扑很了解,并且知道一些关键节点的IP地址,那么我们只需要参考由近至远的原则逐个ping这些IP地址就可以知道断点的位置了。可是我们日常要访问的服务有很多,怎样才能知道数据怎样从我自己的计算机流向某个服务器的呢?Tracert命令就是为了解决这个问题的。只要Tracert某个域名或者IP地址,它就会把经过的设备的IP地址按照先后顺序显示在屏幕上。如果从某一行开始就不再显示IP地址,那么它的前一行的IP就是你尝试访问的目标所能到达的最后一台设备的IP地址。
建议在平时网络正常的时候就Tracert一些经常访问服务器的IP地址,记录下来正确的步骤是怎样的。等日后服务出现中断时可以用来比较路由有没有发生变化。
确定真正故障原因
故障的原因永远是匪夷所思的,需要专业的技能来做综合的分析、全盘的考虑和一些专业的测试。既然作为一个用户不可能做到这些,那么还是把探索真相这项艰巨的任务交由那些专业人士来完成吧。下面给出一张有可能造成服务中断的故障原因的统计图表,见图四。
图四
题外话
现在公司信息中心的岗位划分的比较细,如果你是某个专业应用的项目组,那么假设你现在已经大致知道了发生了什么事,还知道了哪些部门需要对此事负责,那么就致电需要对此事负责的部门,询问当前是不是一次计划内的停机或者检修。如果是的话,弄明白为什么事前没有收到通知。如果不是计划内的,告诉他们你已经掌握的所有事情,这可以帮助他们尽快修复。然后致电所有你在排查期间帮助过你的其他部门或者同事,通报最新的消息给他们。最后致电你的关键用户,向他们解释发生了什么事,告知有望恢复正常的时间,并通过有效手段发布通知所有可能受到影响的终端用户群。
另外,如果问题处在自己负责维护的范围内,请在第一时间修复。
如果你是地区公司的网管,首先要看这次服务中断是不是发生在你自己的职责范围内。如果是的话,修好它。然后通知本公司的关键客户,把问题解释清楚。如果你的反应比较迟缓,那么你的关键用户有可能直接询问总部的相关负责人,最后再找回到你的时候压力会大得多。最后通知可能被涉及的所有终端用户。
结语
网络运维有不同的分工,在大公司和大网络环境中这种分工很明确,比如有设计规划网络的,有管理网络安全的……很系统,也很专业,要达到这样的高度,需要有深入的理论基础和丰富的实际经验作为保证。
然而在相对较小的网络环境中,网络管理员负责的事情是从设计规划网络,建设网络,管理服务器,到购买网络设备等所有与网络有关的事情,经常被作为"万精油"来使用。所以说做这一行的挑战是很大的,是否能有长进取决于自己。如果能够一直坚持做下来,并且抓紧时间不断补充新知识,最终还是可以达到网络管理的顶峰。
如何开始面对那么多的工作内容,我们首先要清理出主次先后。第一步就是要从了解操作系统出发,因为大部分时间我们都是在与各种操作系统打交道,如Windows、Linux、Unix和Mac OS X都是需要涉及的。了解了这些操作系统的理论知识和操作方法还不够,我们还必须具备解决问题的能力。这需要很强的操作能力和清晰的思路,你可以去网上看看讨论区的文章,多动手处理实际问题。解决问题时不仅要知道解决之道,而且要学会去发现导致问题的原因。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
去集群 更超群——大容量网络演进之路
2019 IBM 中国论坛
H3C 2019 Navigate 领航者峰会
助推数据中心网络现代化转型 打造灵活可靠基础架构平台