centos机器配置了kdump后,在意外宕机后,会生成vmcore以便机器重启后分析问题原因。但是在高性能机器中,由于内存配置非常大,使得每次panic后重启时间比较长(内存256G,系统盘为双ssd组成的raid1,时间大概20分钟左右)。在线上业务不能长时间处于中断状况下,往往都会通过带外强行重启,使得vmcore文件不能完整的生成,这样给后续分析与解决问题造成很大困难。

本文的目的是优化kdump,减少系统宕机时生成vmcore的时间,或者通过其他方式获取内存中指定的信息。

解决方案

从centos6.4 开始,在系统panic时会多生成一个vmcore-dmesg.txt文件,此文件记录的就是panic时刻栈信息,接着生成vmcore文件。

这样即使vmcore生成过程中,强行重启机器,依然有栈信息可以分析。

遇见问题

1. vmcore生成过程中强行重启机器,vmcore-dmesg.txt文件未生成,定位原因为内存数据还未下刷到磁盘。在centos6.6中已经修补此问题,解决办法就是在vmcore-dmesg.txt文件生成后,调用了sync命令

2. 在打了热补丁的机器上,由于lsmod查看到部分模块已经从/lib/modules下删除,导致生成kdump.img过程中找不到对应的ko文件而失败,这个可以更改/sbin/mkdumprd脚本,增加modinfo判断模块是否存在,如果不存在,则该模块就skip

3. 将centos7内核移植到centos6中,由于centos7内核ext4兼容ext3,默认ext3模块不编译,使用centos6系统自带/sbin/mkdumprd脚本生成kdump.img会触发找不到ext3模块的错误,解决办法可以有以下几种:

3.1 使用centos7中的/sbin/mkdumprd、kdump-lib.sh脚本,并修改/sbin/mkdumprd脚本中dracut命令,去掉--hostonly-cmdline参数(测试失败,参数--hostonly-cmdline很重要)

3.2 使用centos6自带的/sbin/mkdumprd脚本,判断模块名称为ext3时,强行换成ext4  (测试成功,但方法不好)

4. yum update kexec-tools执行完后,重启kdump服务卡住,原因为/var/lock/kdump文件存在,导致锁等待,进一步定位,为第一次mkdumprd命令执行未退出

linux kdump centos7,Centos kdump使用中的问题相关推荐

  1. 下载linux系统centos7,CentOS 7.4.1708 下载

    CentOS Linux发行版是源自Red Hat Enterprise Linux(RHEL)的源码的稳定,可预测,可管理和可重复的平台.CentOS Linux 7的一般可用性(1708)适用于6 ...

  2. linux设置内存转储,CentOS7配置kdump内存转储

    kdump是一种基于kexec的内核崩溃转储技术.kdump需要两个内核,分别是生产内核和捕获内核,生产内核是捕获内核服务的对象,且保留了内存的一部分给捕获内核启动使用.当系统崩溃时,kdump使用k ...

  3. 详解Linux内核态调试工具kdump

    目录 1.kdump介绍 1.1.kexec及其实现机制 1.2.几个基本概念 1.3.kdump机制 1.4.kdump执行流程 2.Kdump配置与使用 2.1.内核配置 2.2.安装kdump ...

  4. linux内核kdump,linux内核崩溃之kdump机制

    kdump相关概念 standard(production) kernel   生产内核    ,是指我们正在使用的kernel. Crash(capture)kernel             捕 ...

  5. linux学习之centos(三):mysql数据库的安装和配置

    前言:mysql简介 说到数据库,我们大多想到的是关系型数据库,比如mysql.oracle.sqlserver等等,这些数据库软件在windows上安装都非常的方便,在Linux上如果要安装数据库, ...

  6. Linux学习之centOs的安装(二)

    Linux学习之centOs的安装(二) 一般步骤笔记本上已经标注,另外详细解说:NETWORK和HOSTNAME部分 1.配置本身固定ip地址: 双击NETWORK & HOSTNAME,打 ...

  7. Linux安装CentOS7(图文详解)

    Linux安装centos7 准备 软件:VMware workstation 镜像文件:CentOS-7-x86_64-Minimal-1810.iso 一.安装centos7 1.点击创建新的虚拟 ...

  8. VMware安装Linux(CentOS7)

    VMware安装Linux(CentOS7) 1.CentOS-7的镜像下载: https://mirrors.aliyun.com/centos/7.9.2009/isos/x86_64/CentO ...

  9. linux contos7防火墙加端口,Linux:centos7防火墙开放端口

    Centos升级到7之后,发现无法使用iptables控制Linux的端口,google之后发现Centos 7使用firewalld代替了原来的iptables.但是在CentOS7中也可以ipta ...

最新文章

  1. 022_applescript快速入门教程
  2. java爬虫下载图片到磁盘_java入门爬虫(爬取网页的图片下载到本地磁盘)
  3. CompletableFuture API用法介绍(二)
  4. OpenCASCADE绘制测试线束:OCAF 命令之标准演示命令
  5. java -PDF添加文本水印与图片水印
  6. android 键盘点击事件监听事件,Android 键盘事件触发以及监听
  7. MobileNetV1
  8. Golang并发模式基础
  9. 关于QT中奇数个汉字出现newline in constant的错误
  10. 自己实现memcpy/strcpy/strcmp/strcat/strlen/strstr
  11. vue添加响应response拦截器,响应登陆超时处理
  12. 决策树和CART决策树
  13. Android反编译添加组件,Android 反编译工具
  14. http协议与tcp协议区别
  15. java之Collection
  16. 基于JAVA的工资管理系统计算机毕业设计源码+数据库+lw文档+系统+部署
  17. python表情包多样化图形化聊天室_Python还有这功能:自动生成表情包,从此斗图无敌手!...
  18. d610网络计算机,尼康D610评测:机身细节
  19. win10计算机休眠设置在哪里,win10休眠选项在哪里设置?如何设置?
  20. Smatch 最基础的应用

热门文章

  1. 百度云直链下载(不用客户端网页端直接下载且速度挺快的)
  2. 机器人门禁控制盒怎么接线方法_门禁系统安装步骤及接线图
  3. game : steam
  4. 公司注册资本认缴和实缴有什么区别,你了解多少?
  5. 从0到1搭建自己的网站保姆级教程 · 上篇 · 域名与云服务器的准备【网站建设】
  6. 管理费用计算机审计,计算机审计报告.doc
  7. 【原创】EPS汽车电动助力转向系统模型
  8. Waymo向左,霉运向右
  9. 手把手教你腾讯云搭建RUOYI系统
  10. 1565: [NOI2009]植物大战僵尸