在主机故障过程中,ESXi 必须能够将诊断信息保存到预配置的位置,以供诊断和技术支持之用。

通常,在 ESXi 安装期间会在本地存储设备上创建收集诊断信息的分区(也称为核心转储)。此外,还可以配置 ESXi Dump Collector,并将核心转储保留在网络服务器上,以便在调试期间使用。有关设置 ESXi Dump Collector 的信息,请参见《VMware ESXi 安装和设置》文档中的配置 ESXi Dump Collector

另一个选项是使用 VMFS 数据存储上的文件收集诊断信息。

将文件设置为核心转储位置

如果可用核心转储分区的大小不足,则可以配置 ESXi 以使用 VMFS 数据存储中的文件获取诊断信息。

注: 软件 iSCSI 上的 VMFS 数据存储不支持核心转储文件。

前提条件

  • 确保数据存储中用于核心转储文件的可用空间量是建议文件大小的两倍。有关详细信息,请参阅知识库文章 2058416
  • 安装 ESXCLI。请参见《ESXCLI 入门》。要进行故障排除,请在 ESXi Shell中运行 esxcli 命令。

过程

  1. 通过运行以下命令创建 VMFS 数据存储核心转储文件:
    esxcli system coredump file add

    该命令可以使用以下选项,但这些选项并不是必需的,可以省略:

    选项 描述
    --datastore | -d datastore_UUID 或 datastore_name 指定转储文件的数据存储。如果不提供此选项,系统将选择一个具有足够大小的数据存储。
    --file | -f file_name 指定转储文件的文件名。如果未提供,系统将为该文件创建一个唯一的名称。
    --size |-s file_size_MB 设置转储文件的大小(以 MB 为单位)。如果不提供此选项,系统将根据主机上安装的内存创建一个大小合适的文件。
  2. 验证文件是否已创建:
    esxcli system coredump file list
    您可能会看到类似如下的输出内容:
    Path                                             Active Configured Size
    ------------------------------------------------ ------ ---------- ---------
    /vmfs/volumes/52b021c3-.../vmkdump/test.dumpfile false  false      104857600
    
  3. 激活主机的核心转储文件:
    esxcli system coredump file set

    该命令采用以下选项:

    选项 描述
    --enable |-e 激活或停用转储文件。取消配置转储文件时,无法指定此选项。
    --path | -p 要使用的核心转储文件的路径。文件必须是预先分配的。
    --smart | -s 此标记只能与 --enable | -e=true 一起使用。该选项会使用智能选择算法来选择文件。

    例如,

    esxcli system coredump file set --smart --enable true

    --unconfigure | -u 取消配置当前的 VMFS 转储文件。
  4. 验证核心转储文件是否处于活动状态且已配置:
    esxcli system coredump file list
    类似如下的输出内容表明核心转储文件处于活动状态且已配置:
    Path                                             Active Configured Size
    ------------------------------------------------ ------ ---------- ---------
    /vmfs/volumes/52b021c3-.../vmkdump/test.dumpfile True   True       104857600

下一步做什么

有关可用于管理核心转储文件的其他命令的信息,请参见《《ESXCLI 参考指南》》文档。

取消激活和删除核心转储文件

取消激活配置的核心转储文件,并根据需要将其从 VMFS 数据存储中移除。

您可以临时取消激活核心转储文件。如果不计划使用已取消激活的文件,可以将其从 VMFS 数据存储中移除。要移除尚未取消激活的文件,您可以使用带有 --force | -F 参数的 esxcli system coredump file remove 命令。

前提条件

安装 ESXCLI。请参见《ESXCLI 入门》。要进行故障排除,请在 ESXi Shell中运行 esxcli 命令。

过程

  1. 列出核心转储文件:
    esxcli system coredump file list
  2. 运行以下命令取消激活核心转储文件:
    esxcli system coredump file set --unconfigure | -u
  3. 从 VMFS 数据存储中移除该文件:
    esxcli system coredump file remove --file | -f file_name

    该命令采用以下选项:

    选项 描述
    --file | -f 输入要移除的转储文件的名称。如果不输入名称,该命令会移除默认配置的核心转储文件。
    --force | -F 取消激活并取消配置所移除的转储文件。如果文件之前尚未取消激活且正处于活动状态,则此选项为必需项。

结果

核心转储文件将从 VMFS 数据存储中移除。