zoukankan      html  css  js  c++  java
  • [文章]Linux宕机故障分析案例

    [文章]Linux宕机故障分析案例

    已采纳 收藏
    0 1669 0

    背景

    Linux系统环境下,服务器宕机发生的频率比较小,但是不少工程师或多或少都会遇到这种情况,有时候会手足无措,不知从何入手。笔者将借助一次案例分析,展示下Linux宕机故障事件的处理方法和思路。

    宕机发生的原因不一,或者是硬件原因,或者是性能原因,或者是服务器触发了Linux的bug,导致内核崩溃等等。

    案例分析

    1、 案情还原;

    生产系统服务器dcspodsaa1在4月25日凌晨00:49分发生服务器宕机故障,当时系统管理员对硬件报错进行了截图(保留现场很重要),看字面意思应该是服务器的swap设备发生损坏:

     

     

    2、 分析方法一:使用sosreport收集系统日志,检查/var/log/messages日志,查找系统重启前是否存在错误日志,图中kernel***/proc/kmsg started代表系统启动的第一条日志,在此之前没有发现异常日志,

    3、 分析方法二:检查服务器开启了kdump服务,并在/var/crash目录找到了当天生成的vmcore文件,使用crash工具分析vmcore文件,如下:

    服务器发生了严重的系统崩溃panic错误

    对kdmp文件的错误日志进行分析,发现了大量的swap 设备读写错误:

    4、    根据报错” Kernel panic –not syncing:Attempted to kill init”,查询到红帽官网KB:https://access.redhat.com/solutions/1450043,得到此次宕机事件的原因是系统 swap设备I/O读写失败,触发系统kill掉主进程“init”,系统发生内核崩溃,而关于系统swap分区读写错误产生的深层原因,涉及到Redhat底层内核的程序,建议开启红帽的官方case进行深度的分析处理   。

    5、  分析方法三:检查系统历史性能记录,/var/log/sa/路径下记录了每天由sysstat服务收集的sar(system activity report)文件,默认每10分钟记录一次系统资源使用情况的信息,包括CPU、内存等。通过sar命令查看系统宕机时负载情况,没有发现资源使用异常,基本可以排除不是系统因性能不足从而导致宕机

    4.25号性能记录文件

    使用命令sar –A –F sa25 | more检查CPU性能信息和内存性能信息,没有发现异常情况。

      

    其他配置

    1. 开启kdump:

    安装依赖包

    启动服务

    设置开启启动

    修改默认crashkernel参数为256M, 注意需重启系统才生效

    1. 使用crash工具分析vmcore文件:

    1)  安装crash包,可使用yum安装

    2)  安装kernel-debug内核版本,该rpm包必需和故障系统的内核版本一致

    先使用unamre –r查看故障机版本

    安装相应包

    3)  启动crash检查

    小结

    因此,在处理故障时,一般的思路是:

    1. 首先应查找故障前的错误日志线索,可以通过检查系统messages日志中的错误日志;

    2. 如果没有,进而排查系统是否触发kdump服务(在系统由于内核崩溃而导致宕机时,可以捕获故障时内存中的故障信息);

     

    3. 另外也需要分析系统资源(CPU、内存等)使用上出现异常。


    ---------------------
    原文来自【学领未来】,转载时请保留原文链接。
    链接:http://bbs.learnfuture.com/topic/detail?id=0846bac5-a369-405e-83d5-daa15272db46
  • 相关阅读:
    dalvik浅析二:jni、so
    android apk壳
    prism4 StockTrader RI 项目分析一些体会
    PRISM ‘VS100COMNTOOLS’ not set. Cannot set the build environment
    安卓移动应用代码安全加固系统设计及实现
    手机游戏外挂技术研究与运用
    移动终端安全威胁与应对措施
    游戏软件反外挂技术方案的设计和安全解决方案
    网络安全等级保护 2.0 下的安全体系建设
    APP加密,ios代码混淆工具,虚拟化技术 适用于移动应用程序的虚拟化加密软件
  • 原文地址:https://www.cnblogs.com/xuanbjut/p/11605514.html
Copyright © 2011-2022 走看看