Persistent "upgrade failed" notifications were observed for NSX Edges within the System > Upgrade tab. An upgrade attempt resulted in the following error:
Prepare edge upgrade bundle [Internal_Repository_URL]/VMware-NSX-edge-3.2.5.1.[build_number_masked].nub failed on edge TransportNode [Edge_TransportNode_ID]: clientType EDGE , target edge fabric node id [Edge_TransportNode_ID], return status Download and verify bundle failed with msg: Checking upgrade bundle /var/vmware/nsx/file-store/VMware-NSX-edge-3.2.5.1.[build_number_masked].nub contents Verifying bundle VMware-NSX-edge-3.2.5.1.[build_number_masked].bundle with signature VMware-NSX-edge-3.2.5.1.[build_number_masked].bundle.sig Failed to verify bundle: Bundle version is not compatible with node version. Please refer upgrade compatibility matrix document - https://www.vmware.com/resources/compatibility/sim/interop_matrix.php#upgrade.
Further investigation revealed:
X.Y.Z
(e.g., 4.0.1.1) when checked directly on the components or through their respective status pages.X.Y.Z
.A.B.C
(e.g., 3.2.5.1), which was found to be an older release than the currently installed version X.Y.Z
on the components.VMware NSX
VMware NSX Datacenter
The cause was identified as a critical misalignment between the actual software version of the NSX Edge nodes and the perceived or attempted upgrade target by the NSX Manager. The Edge nodes had already successfully advanced to version X.Y.Z
(e.g., 4.0.1.1) previously, but the overall upgrade of the NSX Manager component was not completed. Consequently, the NSX Manager was attempting to apply an upgrade bundle for an older version [A.B.C
(e.g., 3.2.5.1)] to components (Edges) that were already running a newer version [X.Y.Z
(e.g., 4.0.1.1)]. This discrepancy prevented the upgrade process from proceeding, triggering the "Bundle version is not compatible with node version" error.
Evidence supporting this cause includes:
X.Y.Z
(e.g., 4.0.1.1) (System > Nodes > Edge Transport Nodes).A.B.C
(e.g., 3.2.5.1), explicitly demonstrating an attempt to apply an older software version to components already running a newer one.X.Y.Z
(e.g., 4.0.1.1), further reinforcing that the Edges were already at the advanced version.The recommended solution was to download the NSX upgrade bundle corresponding precisely to the version already running on the Edge nodes (e.g., 4.0.1.1) and initiate a corrective upgrade process using this bundle. This approach aimed to synchronize the system's understanding of the component versions and facilitate a complete and accurate upgrade state.
Applying the appropriate reconciliation package or bundle (corresponding to version X.Y.Z) enables the orchestration or management system to accurately identify and acknowledge the current state of the components. This action resolves the incorrect "upgrade failed" notifications, as the system now recognizes that the components are already at the target version. As a result, the overall system upgrade process typically proceeds and completes successfully, bringing all managed components into a consistent, recognized, and fully reconciled state within the central management platform. The persistent "upgrade failed" notification clears once the system correctly registers the components as upgraded or current.