虚拟机可以将支持和故障排除信息写入存储在 VMFS 卷上的虚拟机日志文件中。在大多数情况下,虚拟机的默认设置都适用。

如果您的环境非常依赖于使用 vMotion,或者如果默认值因其他原因而不适用,则可以修改虚拟机客户机操作系统的日志记录设置。

以下情况下会创建新的日志文件:
  • 每次打开虚拟机电源或恢复虚拟机,以及每次通过 vMotion 迁移虚拟机时,都将创建新的日志文件。
  • 每向日志写入一个条目,都会检查一遍日志的大小。如果将 vmx.log.rotateSize 设置为非默认值,且大小超出限制,则下一个条目将写入新的日志。如果存在的日志文件数量达到最大,则会删除最早的日志文件。
vmx.log.rotateSize 的默认值为零 (0),这意味着在打开电源、恢复等操作期间将创建新的日志。通过使用 vmx.log.rotateSize 配置参数限制日志文件的最大大小,可以确保更频繁地创建新的日志文件。

VMware 建议保存 10 个日志文件,每个文件的大小限制为不小于 2 MB。这些值的大小足以让您捕获充分的信息,用以调试大多数问题。如果需要时间跨度较长的日志,则可以将 vmx.log.keepOld 设置为 20。

更改虚拟机日志文件的数目

可以更改 ESXi 主机上所有虚拟机或单个虚拟机的日志文件数量。

此过程讨论限制单个虚拟机上的虚拟机日志文件数量。

要限制主机上所有虚拟机的日志文件数量,请编辑 /etc/vmware/config 文件。如果文件中未定义 vmx.log.KeepOld 属性,可以添加该属性。例如,要为各个虚拟机保留十个日志文件,请向 /etc/vmware/config 添加以下内容:

vmx.log.keepOld = "10"
可以使用 PowerCLI 脚本更改主机上所有虚拟机的此属性。

您可以使用 log.keepOld 参数影响所有日志文件,而不仅仅是虚拟机日志文件。

前提条件

关闭虚拟机。

过程

  1. 使用 vSphere Client 登录到 vCenter Server 系统,然后查找虚拟机。
    1. 在导航器中,选择虚拟机和模板
    2. 在层次结构中查找虚拟机。
  2. 右键单击虚拟机,然后单击编辑设置
  3. 选择高级参数
  4. 根据要为此虚拟机保留的文件数目,添加或编辑 vmx.log.keepOld 参数。
    例如,要保留 20 个日志文件(达到 20 个文件后,在创建新文件时将删除最早的文件),请输入 20
  5. 单击确定

控制切换到新虚拟机日志文件的时间

vmx.log.rotateSize 参数指定切换到虚拟机新日志文件的大小。vmx.log.rotateSize 默认值为 2048000。

vmx.log.keepOld 参数指定要保留的旧虚拟机日志文件数,以确保日志文件覆盖范围可接受。 vmx.log.keepOld 的默认值为 10,这是适当记录 vMotion 等复杂操作的合适数目。如果调试情况较为复杂,有时可能会将其提高到 20。

更改这些值时,请务必确保在可用日志文件中保留足够的信息。一般来说,增加 vmx.log.keepOld 比调整 vmx.log.rotateSize 的效果更佳。

调整这两个参数时,最好确保 vmx.log.rotateSizevmx.log.keepOld 的乘积大于 20 MiB。

使用这些设置的方法有两种:
  1. 将它们放置在 /etc/vmare/config 中。

    这种方法会影响所有虚拟机。

    您可以使用 vSphere Client 或 PowerCLI 脚本修改 /etc/vmare/config

  2. 将它们放置在虚拟机的 VMX 文件中。

    这种方法只会影响该虚拟机。

    您可以使用 PowerCLI 脚本更改主机上所选虚拟机的此参数。

此过程讨论更改单个虚拟机上的虚拟机轮换大小。

前提条件

关闭虚拟机。

过程

  1. 使用 vSphere Client 登录到 vCenter Server 系统,然后查找虚拟机。
    1. 在导航器中,选择虚拟机和模板
    2. 在层次结构中查找虚拟机。
  2. 右键单击虚拟机,然后单击编辑设置
  3. 选择高级参数
  4. 添加或编辑 vmx.log.rotateSize 参数,将其设置为最大文件大小,然后再将日志信息添加到新文件。

    或者,如果您的日志文件多于 vmx.log.keepOld 参数指定的数量,您可以添加或编辑首个日志文件。

    指定大小(字节)。
  5. 单击确定