Linux崩溃转储服务之kdump

0    158    1

Tags:

👉 本文共约3699个字,系统预计阅读时间或需14分钟。

简介

kdump 是提供崩溃转储机制的服务。该服务可让您保存系统内存内容已用于分析。kdump 使用 kexec 系统调用在没有重启的情况下引导至第二个内核( 捕获内核),然后捕获崩溃内核的内存( 崩溃转储vmcore)并将其保存到文件中。这个第二个内核位于系统内存保留的一部分。

内核崩溃转储可能会是系统失败时唯一可用的信息(关键错误)。因此,在关键任务环境中运行 kdump 非常重要。红帽建议系统管理员在正常内核更新周期内定期更新和测试 kexec-tools。这在部署了新内核功能时尤为重要。

您可以为机器上的所有安装内核启用 kdump,或只为指定内核启用 kdump。当计算机上有多个内核使用时,这非常有用,其中一些内核足够稳定,没有关注它们可以崩溃。

安装 kdump 时,会创建一个默认的 /etc/kdump.conf 文件。该文件包含默认最小 kdump 配置。您可以编辑此文件来自定义 kdump 配置,但这不是必需的。

安装

  1. 检查是否在系统上安装了 kdump

    如果安装了该软件包,输出:

    如果没有安装该软件包,输出:

  2. 通过以下方法安装 kdump 和其他必要的软件包:

启用和禁用 kdump 服务

要在引导时启动 kdump 服务,请按照以下步骤操作。

先决条件

  • 实现了配置和目标的 kdump 要求。
  • 安装 kdump 的所有配置都是根据您的需要设置的。

步骤

  1. 要启用 kdump 服务,请使用以下命令:

    这为 multi-user.target 启用服务。

  2. 要在当前会话中启动该服务,请使用以下命令:

  3. 要停止 kdump 服务,请输入以下命令:

  4. 要禁用 kdump 服务,请执行以下命令:

警告

建议将 kptr_restrict=1 设置为默认值。当将 kptr_restrict 设置为 (1) 作为默认时,kdumpctl 服务会加载崩溃内核,即使启用了内核地址空间布局 (KASLR)。

故障排除步骤

kptr_restrict 没有设置为 (1) 时,如果启用了 KASLR,则 /proc/kore 文件的内容都会生成为零。因此,kdumpctl 服务无法访问 /proc/kcore 并载入崩溃内核。

要临时解决这个问题,kexec-kdump-howto.txt 文件会显示警告信息,指定将推荐的设置保留为 kptr_restrict=1

要确定 kdumpctl 服务载入崩溃内核,请验证:

  • sysctl.conf 文件中的内核 kptr_restrict=1

在命令行中配置 kdump

在系统引导过程中为 kdump 保留内存。内存大小是在系统的 Grand Unified Bootloader (GRUB)配置文件中配置的。内存大小取决于配置文件中指定的 crashkernel= 值以及系统物理内存的大小。

配置 kdump 内存用量

kexec-tools 软件包维护默认的 crashkernel 内存保留值。kdump 服务使用默认值为每个内核保留 crashkernel 内存。

kdump 自动内存分配根据系统硬件架构和可用内存大小而有所不同。例如,在 64 位 ARM 架构中,只有可用内存超过 1 GB 时,crashkernel 默认参数才会正常工作。kexec-tools 默认情况下,在 64 位 ARM 架构中配置以下内存保留:

崩溃内核的内存要求可能会因硬件和机器规格而异。如果默认 crashkernel 值无法在您的系统中工作,您可以运行 kdumpctl estimate 命令并查询 rough estimate 的值,而不触发崩溃。估算的 crashkernel 值可能并不准确,可作为设置适当的 crashkernel 值的参考。

注意

RHEL 9 及更新的版本不再支持引导命令行中的 crashkernel=auto 选项。

先决条件

  • 在系统中具有 root 权限。
  • 实现了配置和目标的 kdump 要求。详情请查看支持的 kdump 配置和目标
  • 在 IBM Z 系统中,确保安装了 zipl 工具。

流程

  1. crashkernel 配置默认值:

    本人提供Oracle(OCP、OCM)、MySQL(OCP)、PostgreSQL(PGCA、PGCE、PGCM)等数据库的培训和考证业务,私聊QQ646634621或微信dbaup66,谢谢!
    AiDBA后续精彩内容已被站长无情隐藏,请输入验证码解锁本文!
    验证码:
    获取验证码: 请先关注本站微信公众号,然后回复“验证码”,获取验证码。在微信里搜索“AiDBA”或者“dbaup6”或者微信扫描右侧二维码都可以关注本站微信公众号。

标签:

Avatar photo

小麦苗

学习或考证,均可联系麦老师,请加微信db_bao或QQ646634621

您可能还喜欢...

发表回复