VM deployment from templates hosted in a Content Library fails during the compute resource selection phase. This issue typically occurs in environments utilizing **Storage DRS (SDRS)** and **vSphere Replication (VR)**. When stale replication data or orphaned RDID files exist on a datastore, SDRS flags the disks as "non-movable," preventing the Content Library from successfully processing the template deployment
Symptoms
Unable to process template`./var/log/vmware/content-library/cls.log`, the following exception is observed:com.vmware.vim.vmomi.core.exception.UnmarshallException: Missing value for non-optional field vm
/var/log/vmware/vpxd/vpxd.log`, Storage DRS faults are recorded:yyyy-mm-ddT error vpxd[####] [Originator@6876 sub=drmLogger opID=####] DrmFault: reason balanceDatastoreSpaceUsage, vm NotFoundObject, host NotFoundObject, fault [N3Vim5Fault27StorageDrsHbrDiskNotMovableE:####] yyyy-mm-ddT error vpxd[####] [Originator@6876 sub=drmLogger opID=####] DrmFault: reason balanceDatastoreSpaceUsage, vm NotFoundObject, host NotFoundObject, fault [N3Vim5Fault13RuleViolationE:####]
/opt/vmware/hms/logs/hms.log , errors indicate a failure to retrieve DRM info for specific replication IDs: yyyy-mm-dd ERROR com.vmware.hms.replica.sdrs [tcweb-####] (..hms.sdrs.ReplicaMoveManagerImpl) [operationID=####,sessionID=####] | Could not retrieve drm info for disk RDID-#### , hbrServerUuid: #### , hbrGroupMoId: Hbr.Replica.Group.GID-#### com.vmware.hms.sdrs.entities.DrmInfoRetrievalException: Could not retrieve drm info for disk RDID-####The issue is caused by stale replication groups or orphaned RDID files remaining on the datastore. These usually persist following an improper replication stop or incomplete cleanup of deleted VMs. Storage DRS identifies these disks as replication-protected but cannot retrieve their metadata, leading it to mark them as "non-movable," which blocks the VM placement workflow.
Option 1: Clean up Stale Replication Data (Recommended)
1. Identify Stale RDID Files: Use the `hms.log` snippets above to identify the specific `RDID-####` causing the `DrmInfoRetrievalException`.
2. Verify VM Status: Determine if the VM associated with that RDID still exists in the replication inventory.
3. Perform Cleanup:
find command from the datastore - find /vmfs/volumes/<datastore_name_or_uuid> -name "*.vmx"
Alternatively the Stale RDID files can be identified from the HMS Database dumps. Contact Broadcom Support for assistance with DB Queries
To access the vSphere Replication Management Server (HMS) database, you can use the built-in connection script or the standard PostgreSQL command-line tool.
Method 1: Built-in Connection Script
The easiest way to connect to the embedded HMS database is using the provided script, which automatically handles the connection parameters.
root./opt/vmware/hms/bin/embedded_db_connectMethod 2: Manual psql Connection
If you need to connect manually (e.g., using the psql utility directly), follow these steps:
cat /opt/vmware/hms/conf/embedded_db.cfgvrmsdb user: /opt/vmware/vpostgres/current/bin/psql -U vrmsdbNote: When prompted, enter the password found in step 1.
Critical Warnings and Caveats
systemctl stop hmssystemctl start hmssystemctl restart hms-vpostgres
4. Reconfigure Active Replications: If the VM exists but is in an error state, reconfigure the replication and ensure it completes a successful sync.
When reconfiguring active replications that are in an error state ensure you observe the following warnings and prerequisites to prevent data loss or further synchronization failures:
Critical Warnings & Prerequisites
Procedure Reminder
5. Validation: Verify that `hms.log` no longer reports DRM info retrieval exceptions for those files.
Option 2: Disable Storage DRS
1. Temporarily disable **SDRS** on the affected cluster.
2. Restart the `vpxd` service on the vCenter Server.
* Stopping, Starting or Restarting VMware vCenter Server Appliance services