[文章]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

转载于:https://www.cnblogs.com/xuanbjut/p/11605514.html

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Linux系统宕机原因可能有多种,常见的可能有以下几种: 1. 内存泄漏:程序无法正确释放内存,导致内存不足,最终导致系统宕机。 2. 资源竞争:多个进程或线程争夺同一资源(如共享内存),导致系统无法正常工作。 3. 硬件故障:如CPU、内存、硬盘等硬件出现故障,导致系统无法正常工作。 4. 驱动程序错误:驱动程序可能存在bug,或者与某些硬件不兼容,导致系统无法正常工作。 5. 病毒攻击:恶意软件的攻击可能导致系统崩溃。 6. 软件缺陷:某些程序可能存在bug,或者与其他程序不兼容,导致系统无法正常工作。 对于Linux系统的宕机,应该首先考虑是否存在硬件故障,并检查系统日志、内核日志等信息,排查问题。同时,定期更新系统和软件,加强系统的安全性,减少软件缺陷和病毒攻击的风险。在使用第三方软件和驱动程序时,应谨慎选择,避免不必要的风险。 ### 回答2: 在Linux系统中,宕机是指系统突然停止工作的现象,这种情况可能导致数据丢失和其他损失。系统宕机是由多种原因导致的,可能是硬件故障、软件错误或其他问题。 硬件故障是导致Linux系统宕机的最常见原因之一。硬件故障包括:内存问题,磁盘问题和处理器故障。当硬件发生故障时,内核可能无法访问到数据,从而导致系统宕机。 软件错误也是导致Linux系统宕机的常见原因。当软件发生错误时,它可能会导致系统无法响应,从而导致系统停机。例如,如果一个进程死锁,它可能会导致其他进程无法继续运行,从而导致系统宕机。 其他可能导致Linux系统宕机的原因包括:系统配置错误、网络问题、过热等。 面对Linux系统宕机,我们可以采取以下措施来进行修复: 1.检查硬件是否正常。可以使用内存检测工具、磁盘检测工具、处理器诊断工具等进行检查。 2.检查系统配置是否正确。可能是配置文件被更改或删除,导致系统出现问题。 3.升级或回退软件版本,以便解决已知的软件问题。 4.监控系统运行状态,及时发现问题并进行修复。 5.保持系统安全,及时更新补丁,以减少安全漏洞的发生。 总之,Linux系统宕机是一个很严重的问题,我们应该认真分析原因并及时采取措施来解决问题。在使用Linux系统时,需要具备相应的技能和知识,以便快速准确地诊断和解决问题。 ### 回答3: 作为一种稳定而高效的操作系统Linux常常被用于企业级应用和科学研究中。但是,即使Linux系统出现宕机的情况,也要对其进行深入分析,以便找到并解决问题,提升系统的稳定性和可靠性。 Linux系统出现宕机的原因有多种,以下是其中的几种。 1.硬件问题: 硬件故障是各种操作系统宕机最常见的原因,Linux系统也不例外。硬件故障包括CPU故障,硬盘故障,内存故障等等。这些故障会导致Linux系统崩溃或重启,无法正常工作。 2.操作系统问题: 操作系统问题可能是由于内核或操作系统软件的缺陷和错误引起的。例如,内核代码缺陷、系统文件损坏、软件安装错误等都可能导致Linux系统宕机。 3.软件问题: Linux系统上运行的软件也存在故障的风险。本身存在的缺陷或其他不兼容问题都可能导致系统宕机。例如,一个开发过程中可能遇到的指针错误可能会导致程序崩溃,并在此之后导致系统崩溃。 4.网络故障: 使用网络连接的设备或其他主机,也可能造成Linux系统的宕机。例如,一个突然出现的全局网络故障可能会导致系统无法正常运行。 针对这些原因,解决方法各不相同。如果是硬件问题,需要及时更换或修复,而如果是软件问题,则需要升级或重新安装软件。如果是网络问题,我们需要检查网络设备或更改网络连接等方式解决。 总之,Linux系统的宕机虽然会对运作产生影响,但也不是大问题。针对不同的问题我们可以采用对应的办法解决,以确保系统的稳定性和高效性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值