Hyper-V VM Snapshot Issue

One of my windows 2016 hyper-v vms is not able to create the snapshot for the backup using the latest hyper-v client.

When I run the urbackup hyperv_snapshot.ps1 powershell script from powershell cmd I get this output

ProcessWMIJob : Exception of type 'Microsoft.PowerShell.Commands.WriteErrorException' was thrown.
At C:\Program Files\UrBackup\hyperv_snapshot.ps1:151 char:13
+     ($job | ProcessWMIJob -WmiClass $Msvm_VirtualSystemSnapshotServic ...
+             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [Write-Error], WriteErrorException
    + FullyQualifiedErrorId : Microsoft.PowerShell.Commands.WriteErrorException,ProcessWMIJob

At C:\Program Files\UrBackup\hyperv_snapshot.ps1:32 char:14
+              Throw $Job.ErrorDescription
+              ~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : OperationStopped: (:) [], RuntimeException
    + FullyQualifiedErrorId : ScriptHalted

All other VMs on same hyper-v node work except this one. Only thing that is different about this VM is that is has MS SQL Server. Perhaps this introduces an issue with VSS but I am not sure.

Do you have any idea what may be causing this error. When I run checkpoint from hyper-v management it works correctly but not from the urbackup snapshot powershell script.

Do you have any idea how I can resolve this or further troubleshoot this issue?

What kind of checkpoint type do you have selected in the Hyper-V settings? Can you try with production checkpoints?

If production checkpoints don’t work, maybe there’ll be more info in the event log in the VM.

yes seems my vm has some vss issues so I will need to wormk on that. so thats not related to urbackup.
last issue, is there any way I can force specific hyper-v vms from being excluded from the discovery.
is there perhaps a file or setting i can enter specific vm names so they dont get discovered?

The ports used for discovery are documented in the manual… preventing discovery is as simple as configuring those in the windows firewall or Linux iptables settings, third party firewalls may be configurable by hostnames.

thanks for reply but this I think will not work for me.
let me explain --> I am using the Hyper-V client.
So what I am looking to do is exclude certain VMs from same physcial host from being discovered.
If I blck the discovery ports on the physical host ALL the VMs on this same server will not be discovered and that is not good.
I need a way to exclude certain VMs on same physcial Hyper-V host from being discovered.
Is there any way to accomplish this ?

Configure network access by port/protocol on the CLIENT or uninstall on the duplicate client… if you don’t want a client backed up, uninstall is guaranteed to prevent it.

Fixed IP addressing and firewall config would work too… you’re not OBLIGED to use DHCP with no reserved addressing.

Network configuration is more appropriate to a sysadmin than to a backup software


issue is for hyper-v host you install one client which then applies to all VMs on that host.
i need way to block certain vms within same host.
uninstalling client will block ALL vms which is not what i need

Ok, so in 2.2.16, as a work-around, you can create C:\Program files\UrBackup\exclude_vms.txt and list one VM name per line. Those will get excluded.
Or you can create C:\Program files\UrBackup\include_vms.txt and list all the VMs you want to backup.

1 Like

this is exactly what I was looking for.
thanks so much providing this functionality.
so just to confirm whatever VMs I exclude in the exclude_vms.txt file, will NOT get autodiscovered in the urbackup server ? It will act as if it doesnt exist from the server perspective?


excellent product
i will be purchasing a bunch of hyper-v commercial clients now that this solution works for me
thanks again

I upgraded to latest client and created the exclude_vms.txt file.
I entered just one VM name in the text file to be excluded but it never seemed to be removed from the urbackup client status page list.
Is there something else I need to do to get the vm exclusion to work properly. Is the format just the simple vm name as it appears in the hyper-v manager or do I need to use some special format in the text file?
Please let me know so I can get this to exclude

The updating might be broken (that will be fixed with the next server version). So you might have to restart the server or take the client offline for at least 5min.

if I manually delete the vm from the list- would that also work
or do I still need to restart backup services?

No, it’ll just re-add it as long as the client advertises it as present