企业IT运维事中故障定位方法及工具.docx
《企业IT运维事中故障定位方法及工具.docx》由会员分享,可在线阅读,更多相关《企业IT运维事中故障定位方法及工具.docx(8页珍藏版)》请在第一文库网上搜索。
1、企业IT运维事中故障定位方法及工具【摘要】故障定位的方法通常包括专家经验驱动的假设尝试、测试复现、预案启动、代码分析四种,这个过程涉及对日志、链路、监控、数据感知、知识管理五类工具。企业IT故障定位指诊断故障直接原因或根因,故障定位有助于故障恢复动作更加有效。故障定位通常是整个故障过程中耗时最长的环节,定位的目标围绕在快速恢复的基础上,而非寻找问题根因,后者由问题管理负责。通常大部分可用性故障,要借助运维专家经验的假设判断或已知预案的执行得到解决,但仍有部分故障,尤其是性能、应用逻辑、数据故障需要多方协同与工具支持。故障定位的方法通常包括专家经验驱动的假设尝试、测试复现、预案启动、代码分析四种
2、,这个过程涉及对日志、链路、监控、数据感知、知识管理五类工具。随着系统复杂性不断提升,依靠专家经验驱动的假设尝试准确率会下降,如何将数字化手段结合专家经验,融入到协同机制中,这考验故障定位场景的设计水平。1.定位方法1) 专家经验驱动的假设尝试随着企业的应用系统架构由原来单体架构向分布式微服务架构发展,以及研发、运维团队对高可用架构的重视与投入,越来越多的系统在服务级别的可用性、可靠性、健壮性更强,再加上配套的监控工具完善,一般的服务级别不可用故障有更好的应对方案。当前运维面临的故障定位问题,主要是: 海量并发下,故障的快速传染,单个服务异常影发了大量异常的出现,如何在大量异常服务中判断根因服
3、务。 判断应用逻辑层面的异常,比如功能、菜单级别的故障,如何更加主动、从容的找到逻辑上的故障点,并作出应急。 应用逻辑故障的问题定位与“故障传染”场景类似,如何在大量病态的功能中找到根因功能,并对功能进行降级等恢复是难点。 判断数据异常产生的异常,数据异常不仅仅指数据完成不可用,而是在大部分数据正常下,找到个别数据不可用的问题。在面对上面的故障时,整体的自动化能力还有较大提升空间,基于运维专家经验驱动的假设性尝试诊断与恢复仍是当前主要的应对手段。要让运维专家经验发挥得更好,需要重点关注四件事: 专家技能的持续提升。应用逻辑、数据异常问题对于传统运维专家通常是黑盒子,运维专家需要转换角色主动去了
4、解应用逻辑功能,上下游调用链、数据流向、应用配置、数据库流水等要素。 运维前移。了解软件层的黑盒子,除了主动对线上系统进行学习,还要落实前移工作,比如:标准化前移,推动软件更加可维护;基础平台前移,用平台推动软件标准化;交付前移,标准化、自动化软件交付链路;测试前移,围绕系统稳定性进行主动的体验、接口、压力测试,提升稳定性等等。.技能的沉淀与传承。依靠经验最大挑战是应对人员不在故障处理现场的问题,技能的沉淀与传承是运维管理需要考虑的问题。前者针对技能经验的知识化,重点关注知识生产、保鲜、共享;后者针对岗位设置、培训、值班管理等机制。 工具赋能。应用日志、交易报文、应用流水等是了解软件逻辑和数据
5、的主要方案,组织要为专家提供方便的工具。这个思路同样适用于运维以外的专家,比如在故障协同中将应用日志、功能级的性能等数据以在线工具方式分享给研发、测试团队也是一个有效的赋能手段。2) 巳知预案启动对于疑难杂症或重大故障,我们认为故障诊断过程中,应该采用两条操作路径,一是前面提到的基于专家经验的尝试性的诊断,另一点是围绕已知预案的尝试启动。已知预案指提前对故障场景进行描述,并制定应急操作步骤。在预案的启动中,我们做了几件事: 预案线上化。线上化的预案主要解决当前线下文档式预案不可用、不好用的问题。采用乐高式拼装的方式,将应急策略卡片化,支持将多个策略拼装成一个应急场景下的预案。 预案自动化。预案
6、线上化后就能将预案的策略自动化、社交化,比如根据链路关注自动化的触达应急策略到关联方,将预案应急的协同在社交IM进行处置等。具体的预案场景设计将在场景部分中进行介绍。 预案融入故障处置过程。将预案的执行与应急处置场景工具整合在一起,作为一个标准化的动作,一方面持续实战使用中不断的发现预案存在不足,另一方面故障处置驱动预案设计者更加重视预案的编写。3) 测试复现复杂系统的故障定位必然是一个跨团队协同的过程,测试复现是一个协同定位的解决方案。从岗位看,测试与bug打交道的机会最多,对于逻辑、数据引发的故障更敏感。测试复现与定位问题用什么方法,因为不专业不作说明,以下从运维赋能测试复现问题的角度列一
7、下运维需要提前准备的支持: 让测试能够更快的获得问题描述,问题表现的截图,工单系统的在线流转,或基于ChatOPS的信息传递都是好的解决方案。 让测试方便的查生产环境的异常日志,能看到获得网络服务的500错误,还是空指针等等信息。 按接口细分访问状况,包括成功率,交易量,耗时等。 定期同步测试系统,将生产已知缺陷数据在线化,辅助测试定位。 在线获得配置信息,查看应用配置项的生产设置情况。4) 代码分析虽然开发可能不清楚复杂系统完整的上下游关系,部署架构,但一定是最清楚具体逻辑、数据的人角色。与测试复现提到的类似,运维也要为研发团队提供应急协同的工具。除上面为测试提供的工具适用于研发外,运维还要
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 企业 IT 运维事中 故障 定位 方法 工具