You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Failed to create a new instance from backup with Veeam using vSAN storage #11888
When trying to create a new instance from an existing backup, an error occurs because the datastore cannot be found. The datastore lookup is using the CloudStack UUID instead of the volume name.
Yes, this is a bug in cloudstack.
For NFS storage, the datastore name in vmware is created from the primary_storage uuid in cloudstack by removing all hyphens.
VMFS (VSan) keeps the native datastore name. (CloudStack sets a custom field cloud.uuid equal to the primary_storage uuid for reference)
The Create new Instance from backup code is deriving the datastore name from primary_storage uuid, which works for NFS storage but not for VMFS.
The same issue is present in Restore single volume from veeam in all versions, as Create new instance feature has derived the code from the Restore single Volume feature.
When creating a new instance from a Veeam backup in a VMware/vSAN environment, the CloudStack PowerShell script passes the primary storage UUID (without hyphens, NFS-style) to Find-VBRViDatastore, but vSAN datastores have a native datastore name that is different from the CloudStack UUID. This causes Find-VBRViDatastore to fail, and the restore is aborted. The same bug also affects the "Restore single volume from Veeam" path.
📊 Assessment
Dimension
Value
Reasoning
Type
type:bug
Feature is completely broken for vSAN (VMFS) storage; NFS works
For NFS, the datastore name is derived by stripping hyphens from the CS primary storage UUID — this is what the current code does.
For VMFS/vSAN, CloudStack sets a cloud.uuid custom attribute on the datastore but the actual datastore name is the native VMware name.
Fix: before constructing the PowerShell command, detect the storage type. For VMFS/vSAN pools, retrieve the native datastore name (e.g., via the cloud.uuid custom field lookup on the vCenter datastore list) instead of the UUID.
Alternatively, add a datastoreName field to the primary storage metadata that is populated with the correct native name at pool registration time.
Activity
abh1sar commentedon Oct 22, 2025
Yes, this is a bug in cloudstack.
For NFS storage, the datastore name in vmware is created from the primary_storage uuid in cloudstack by removing all hyphens.
VMFS (VSan) keeps the native datastore name. (CloudStack sets a custom field cloud.uuid equal to the primary_storage uuid for reference)
The Create new Instance from backup code is deriving the datastore name from primary_storage uuid, which works for NFS storage but not for VMFS.
The same issue is present in Restore single volume from veeam in all versions, as Create new instance feature has derived the code from the Restore single Volume feature.
github-actions commentedon Jul 1, 2026
🎯 Triage report
When creating a new instance from a Veeam backup in a VMware/vSAN environment, the CloudStack PowerShell script passes the primary storage UUID (without hyphens, NFS-style) to
Find-VBRViDatastore, but vSAN datastores have a native datastore name that is different from the CloudStack UUID. This causesFind-VBRViDatastoreto fail, and the restore is aborted. The same bug also affects the "Restore single volume from Veeam" path.📊 Assessment
🔗 Similar issues
💡 Notes and suggestions
cloud.uuidcustom attribute on the datastore but the actual datastore name is the native VMware name.cloud.uuidcustom field lookup on the vCenter datastore list) instead of the UUID.datastoreNamefield to the primary storage metadata that is populated with the correct native name at pool registration time.Add this agentic workflows to your repo
To install this agentic workflow, run