[文章]Linux宕机故障分析案例
[文章]Linux宕机故障分析案例
背景
在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性能信息和内存性能信息,没有发现异常情况。
其他配置
- 开启kdump:
安装依赖包
启动服务
设置开启启动
修改默认crashkernel参数为256M, 注意需重启系统才生效
- 使用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
[文章]Linux宕机故障分析案例的更多相关文章
- Linux宕机最安全的重启方法(你肯定不知道)
Linux 内核虽然号称“不死族”,几乎不会崩溃或者死机,但是特殊情况下,还是有一定几率会宕机的.因为 Linux 广泛用于生产环境,所以每一次宕机都会引起相当大的损失.本文介绍在它死机至后,一种温柔 ...
- Linux服务器宕机案例一则
案例环境 操作系统 :Oracle Linux Server release 5.7 64bit 虚拟机 硬件配置 : 物理机型号为DELL R720 资源配置 :RAM 8G Intel(R) Xe ...
- ORA-04031错误导致宕机案例分析
今天遇到一起ORACLE数据库宕机案例,下面是对这起数据库宕机案例的原因进行分析.解读.分析过程中顺便记录一下这个案例的前因后果,攒点经验值,培养一下分析.解决问题的能力. 案例环境: 操作系统 ...
- linux服务器在运行210天左右宕机
减小字体 增大字体 作者:错新网 来源:www.cuoxin.com 发布时间:2014-2-25 19:21:32 错新网讯 最近几天,一批linux线上的服务器接连宕机,当时以为是硬件问题 ...
- 【JVM】linux上tomcat中部署的web服务,时好时坏,莫名其妙宕机,报错:There is insufficient memory for the Java Runtime Environment to continue.
=========================================================================================== 环境: linu ...
- linux服务器宕机分析/性能瓶颈分析
linux服务器宕机分析/性能瓶颈分析 服务器宕机原因很多,资源不足.应用.硬件.系统内核bug等,以下一个小例子 服务器宕机了,首先得知道服务器宕机的时间点,然后分析日志查找原因 1.last ...
- linux 双Redis + keepalived 主从复制+宕机自主切换
主要核心思想,如果master 和 salve 全部存活的情况,VIP就漂移到 master.读写都从master操作,如果master宕机,VIP就会漂移到salve,并将之前的salve切换为ma ...
- Hadoop 服务SYS CPU过高导致宕机问题
最近某hadoop集群多次出现机器宕机,现象为瞬间机器的sys cpu增长至100%,机器无法登录.只能硬件重启,ganglia cpu信息如下: 首先怀疑有用户启动了比较奇葩的job,导致不合理的系 ...
- 解Bug之路-记一次对端机器宕机后的tcp行为
解Bug之路-记一次对端机器宕机后的tcp行为 前言 机器一般过质保之后,就会因为各种各样的问题而宕机.而这一次的宕机,让笔者观察到了平常观察不到的tcp在对端宕机情况下的行为.经过详细跟踪分析原因之 ...
随机推荐
- LibTorch实战六:C++版本YOLOV5.4的部署
一.环境配置 win10 vs2017 libtorch-win-shared-with-deps-debug-1.8.1+cpu opencv349 由于yolov5代码,作者还在更新(写这篇博客的 ...
- java面试-垃圾回收器谈谈你的理解
一.垃圾回收算法: 引用计数 复制算法 标记-清除 标记-整理 二.垃圾回收的方式: 串行(Serial).并行(Parallel).并发(CMS).G1 1.串行垃圾回收器(Serial) 它为单线 ...
- Java代理模式,一次复习完4种动态代理实现方式
代理模式也是一种非常常见的设计模式.了解Spring框架的都知道,Spring AOP 使用的就是动态代理模式.今天就来系统的重温一遍代理模式. 在现实生活中代理是随处可见的,当事人因某些隐私不方便出 ...
- PYTHON工业互联网应用实战12—客户端操作
本章节我们将实现与admin里类似的列操作"下达"功能,演示客户端是如何实现操作功能,同时,演示也会强调一点,何时合并你的功能代码,避免相同功能使用不同的代码段来实现,在企业开发中 ...
- Netcore webapi action swagger response返回参数使用匿名类型
问题:action中返回匿名对象时,swagger只能按强类型生成返回值描述 解决办法:使用roslyn在内存中动态执行代码,使用json.net反序列化匿名对象,向swagger返回动态匿名对象 效 ...
- B - Rikka with Graph HDU - 5631 (并查集+思维)
As we know, Rikka is poor at math. Yuta is worrying about this situation, so he gives Rikka some mat ...
- 不可不知的CSS小技巧
一.表单部分 1.禁止textarea文本域的缩放 resize:none; 2.去除初始化textarea下拉条 overflow:auto; 3.如何让表单中的选项按钮,点击文字也能选中? < ...
- php7 连接 mysql 的两种方式
PHP 5 的使用者可以使用 MySQL extension,mysqli 和 PDO_MYSQL .php 7移除了mysql extension,只剩下后面两种选择.这份文档解释了每个API 的术 ...
- POJ 1961 KMP(当前重复次数)
题意: 前缀重复次数,举个例子,aaa 2的位置2个a,3的位置3个a abcabcabc 6的位置两个abcabc,9的位置三个abcabc.... 思路: KMP基础题目之一 ...
- android CVE
本文收集网上android cve的一些分析供后续学习: Android uncovers master-key:android1.6-4.0 由于ZIP格式允许存在两个或以上完全相同的路径,而安卓系 ...