This article provide solution how to troubleshoot virtual machine that had issue with it's vmdk extension.
In the past, we had problem with our's customer Virtual Machine (VM). This VM does not have correct file type / Extenstion like normal VM had. VM had GUID file type ( my opinion ) rather than VMDK or FLAT-VMDK. This article provide how to troubleshoot virtual machine that same issue with me.
This Example VM that had strange file Extension.
3 files should have ending " .vmdk " extension, changed like GUID.
The good is Backup Service like Veeam still running on this VM, but it not with replication. We dont know what would be happen if VM shutdown or restart, would VM recognize its disk or not, we havent tried yet.
Our customer had backup and replication services on these VMs, So we need to fix these issue.
Here is our plan to fix :
- Shutdown VM.
- Change file extension.
- Repointing VMDK to flat file.
- Make a Coffe.
- Repointing VMDK and Flat-VMDK in VMX file.
- Reload VM.
And here is steps :
1. Shutdown VM.
2. Rename Strange File Extension.
We had 3 files that had incorrect extension. In my situation these files should be change to vmdk, ctk.vmdk and flat.vmdk.
- File with extension .5 (eb2fe...) change to .vmdk.
- File with extension -ctk. 5(eb2fe..) change to -ctk.vmdk.
- File with extension -flat. 5(eb2fe...) change to -flat.vmdk.
Open winscp, Login to esxi where VM located, go to /vmfs/volumes/<datastore name>/<VM name>.
Rename file with extension ".5 (eb2fe...)" to ".vmdk", "-ctk. 5(eb2fe..)" to "-ctk.vmdk" and "-flat. 5(eb2fe...)" to "-flat-vmdk".
3. Edit VMDK FIle.
Open file with extension ".vmdk", right click, choose Edit to edit file.
Edit #Extend Description and #Change Tracking File section.
Change "-flat. 5(eb2fe...)" change to "-flat.vmdk" this for Flat Disk.
Change "-ctk. 5(eb2fe..)" change to "-ctk.vmdk" this for Change Tracking File.
Save the File.
4. Make Coffe.
5. Edit ".VMX" File.
Find in file description, strange Extension we changed before.
Change file extension into ".vmdk".
Now we need to reload VM, because ESXI not aware with this new configuration. Open SSH to ESXI where VM located and run this command to know your VM-ID.
vim-cmd vmsvc/getallvms | grep -i "<your VMName>"
No. 6 Reload VM.
My VM-ID is "842".
And Reload with this Command .
vim-cmd vmsvc/reload <VM-ID>.
Wait For a minute for ESXI to Reload. Go to vCenter, Right Click on VM, Choose Edit Setting. Make Sure disk already repointed to new one.
No. 7 Finish.
Hopelly this case not happen in your infra. Until now we cannot find what root causing this issue. As personal I suspecting storage issue, either storage latency or storage connectivity among hosts.