The vpxd service crashes with memory hard limit panics due to invalid XML content in vpxd.cfg
search cancel

The vpxd service crashes with memory hard limit panics due to invalid XML content in vpxd.cfg

book

Article ID: 444970

calendar_today

Updated On:

Products

VMware vCenter Server

Issue/Introduction

  • The vmware-vpxd service fails to start or crashes repeatedly, rendering the vCenter Server User Interface inaccessible.
  • Reviewing the /var/log/vmware/vmon/vmon.log file reveals parsing failures:

<vpxd> Service pre-start command's stderr: Failed to parse vpxd.cfg. File is not a valid XML! vpxd will launch with default settings. : Cannot parse file:/etc/vmware-vpx/vpxd.cfg

  • Reviewing the vpxd service panic logs reveals memory hard limit errors:

--> Panic: Memory exceeds hard limit. Panic
--> Backtrace:
--> [backtrace begin] product: VMware VirtualCenter, version: 8.0.3, build:, tag: vpxd, cpu: x86_64, os: linux, buildType: release
--> backtrace[00] libvmacore.so[0x00531DC5]
--> backtrace[01] libvmacore.so[0x0042182A] Vmacore::System::Stacktrace::CaptureFullWork(unsigned int)
--> backtrace[02] libvmacore.so[0x00434009] Vmacore::System::SystemFactory::CreateBacktrace(Vmacore::Ref<Vmacore::System::Backtrace>&)
--> backtrace[03] libvmacore.so[0x0050A989]
--> backtrace[04] libvmacore.so[0x0050AAA1] Vmacore::PanicExit(char const*)
--> backtrace[05] libvmacore.so[0x0042154C] Vmacore::System::ResourceChecker::DoCheck()
--> backtrace[06] libvmacore.so[0x00385107]
--> backtrace[07] libvmacore.so[0x0037EC04]
--> backtrace[08] libvmacore.so[0x00384517]
--> backtrace[09] libvmacore.so[0x00510FBB]
--> backtrace[10] libpthread.so.0[0x00008EB0]
--> backtrace[11] libc.so.6[0x000FFADF]
--> backtrace[12] (no module)
--> [backtrace end]

 

Environment

  • vCenter 8.x

Cause

  • This issue occurs due to a invalid XML tag within the /etc/vmware-vpx/vpxd.cfg file. 
  • Specifically, an incorrect boolean assignment within an opening tag (e.g., <allowVmotionBetweenENSModes=true>) prevents the configuration file from being parsed.
  • When parsing fails, the vpxd service falls back to default settings with a highly restricted memory hard limit. Normal operations quickly exceed this limit, forcing the process to terminate.

Resolution

To resolve this issue, the invalid XML syntax must be corrected.

  1. Connect to the vCenter Server Appliance via SSH or the virtual machine console.

  2. Open the /etc/vmware-vpx/vpxd.cfg file using a text editor.

  3. Locate the malformed tag within the <network> section.

    •     <network>
            <allowVmotionBetweenENSModes=true >True</allowVmotionBetweenENSModes=true >
            <rollback>true</rollback>
          </network>
  4. Correct the syntax to match standard XML formatting.
    •    <network>
            <allowVmotionBetweenENSModes>true</allowVmotionBetweenENSModes>
            <rollback>true</rollback>
          </network>

  5. Save and close the file.
  6. Start the vpxd service by running the following command:service-control --start vpxd