A customer faced the problem that replication of some virtual machines did not work as expected and an eOne customer told me on the phone that some of his virtual machines could not replicate and got a complicated error message, but the rest (about 90) of the virtual machines could replicate successfully. The error was interesting and I’ve never seen it before, so I wrote down the solution, or rather, the way I solved the problem. After checking the Veeam backup, I saw the following error, which seems to be related to the snapshots. So, as a first step, I checked the virtual machine snapshots at the source and destination site.
I didn’t have a snapshot at the source, but in some cases, you don’t see snapshots in GUI, but the virtual machine is actually running on snapshots, so you have to check the virtual machine configuration to see if the disk was mounted from the base disk or a snapshot disk.
As expected, both disks are baseline and not mounted from a snapshot disk, so let’s check the replicated virtual machine in the destination site.
When a virtual machine is mounted from a snapshot volume, a number should appear next to the volume name in the settings, as shown below.
The snapshot looks like VMName-00000x.vmdk
The base disks look like VMName.vmdk
As you can see, the virtual machine has multiple snapshots at the destination, which is reasonable based on restore point configuration in replication job, but two of them are in a working state, although the Veeam backup replication for this virtual machine is not running, so I need to get rid of them. I try to delete the snapshot, but a general error message is displayed. I also try to delete another and all snapshots, but I got the same error message. I also tried to create new snapshots, but it didn’t work!
Since it was important to get the replication back to operational status, I tried deleting all snapshots with the vSphere client with the customer’s permission. Beware, if you delete snapshots manually, you will not be able to restore the virtual machine to a specific point in time, in fact, we will set up a new replication that will prevent a new full synchronization. So browse to the virtual machine’s directory and delete snapshots disk and files and then make a change in vmx file in order to run VM from base disk. Snapshots disk and files include:
And then edit the vmx file with an editor like Notepad or using CLI directly from the host. You must delete the number at the end of the name to point to the base disk, for example, if your disk name is DC01-000001.vmdk, you must remove -000001 and specify the only base volume DC01.vmdk.I downloaded the file and changed it, before uploading the new file to its directory I removed the old file and then re-registered the virtual machine with the new vmx file.
After you click the virtual machine.vmx file, “Register VM” button will be active and click on it to add the virtual machine the Inventory in vCenter Server or ESXi.
Now edit the replication job and enable reseeding so that only changes are replicated and click on Next.
At the seeding page of replication configuration, select the Map replicas to existing VMs and then click on Detect to detect existing copies of the virtual machine in the destination. if it doesn’t detect automatically, click Edit and select the copy of this virtual machine on the target host in the destination site, save the configuration and run the backup job.
the replication job has successfully detected the virtual machine and replication is operational again.