Unregister the FT Secondary VM, fails with error msg "This operation is not supported on a Secondary VM of a Fault Tolerant pair."
search cancel

Unregister the FT Secondary VM, fails with error msg "This operation is not supported on a Secondary VM of a Fault Tolerant pair."

book

Article ID: 413295

calendar_today

Updated On:

Products

VMware vCenter Server

Issue/Introduction

Upon enabling Fault Tolerance (FT), the Secondary VM was successfully created but failed to power on due to insufficient space in the storage pool.

Since FT is now disabled, a manual cleanup may be required if expanding the storage pool is delayed or not feasible.

But upon trying to unregister the Secondary VM, it fails with error msg "This operation is not supported on a Secondary VM of a Fault Tolerant pair."

[root@<esx] vim-cmd vmsvc/unregister <VMID>
(vmodl.fault.SystemError) {
   faultCause = (vim.fault.InvalidOperationOnSecondaryVm) {
      faultCause = (vmodl.MethodFault) null,
      faultMessage = <unset>,
      instanceUuid = "UUID"
      msg = "This operation is not supported on a Secondary VM of a Fault Tolerant pair."
   },
   faultMessage = <unset>,
   reason = "Undeclared fault"
   msg = "Received SOAP response fault from [<<io_obj p:0x0000006c0865eb40, h:5, <TCP '127.0.0.1 : 14395'>, <TCP '127.0.0.1 : 8307'>>, /sdk>]: unregister
Method vim.VirtualMachine.unregister threw undeclared fault of type vim.fault.InvalidOperationOnSecondaryVm"
}

 

Environment

vCenter Server: 8.0

Cause

The FT Secondary VM retained its FT references even after FT was disabled, preventing management actions such as unregistering. The “InvalidOperationOnSecondaryVm” error message confirmed that the Secondary VM was still recognized as part of a Fault Tolerant pair. The VMX file contained residual FT configuration parameters that maintained the linkage, causing the system to block unregister operations.

Resolution

  1. SSH to the ESXi host where the secondary VM is registered

  2. Get the vmid of the secondary VM by running:

    vim-cmd vmsvc/getallvms

  3. Navigate to the secondary VM vmx path

    For Ex: cd "/vmfs/volumes/.../secondaryvm.vmx"

  4. Take a backup of the Secondary VM’s VMX file:

    mv Secondary VM.vmx Secondary VM.vmx.bak

  5. Edit the VMX file using vim and remove all FT-related entries:

    ft.lockFile = "/vmfs/volumes/.../.ft-generation"
    ftcpt.newMetadataDir = "true"
    ft.metadataFile = "/vmfs/volumes/.../shared.vmft"
    ftcpt.enabled = "TRUE"
    uuid.ft = "<uuid>"

  6. Save the file and unregister the Secondary VM from the ESXi host and vCenter.