We got a client currently running on Nutanix AHV with roughly 200VMs and need to migrate them to ESXi on non-Nutanix hardware.
initially, I was thinking of HCX but I believe HCX only supports KVM to ESXi, not AHV.
any recommendation or if any advice from anyone that may have done this in the past would help. the goal is to have the least downtime possible.
Use qemu-img to convert your virtual disk from AHV to VMDK.
Check the following link. It explained this procedure and how to do that with full details:
http://joshsinclair.com/?p=580
Hi,
This article is from 2017 but the procedure that is described is also good for the latest VMware versions.
Export a VM from Nutanix AHV to VMware ESXi | Josh Sinclair
ARomeo
We are currently converting from Nutanix Hypervisor to ESXi. I wrote this Powershell script that has been helpful in automating the process.
-Gathers a list of VMs(PVMs) by user input (Seperate by commas)
-Iterates through each on the list.
-Checks to see if VM is in cluster, checks CPU and RAM on VM.
-Sends VM a scheduled task to run after getting converted to register new DNS record.
-Powers off VM
-Starts SCP to download VDisk to local machine
-Converts VDisk to .VMDK via QEMU.
-Converts VMWare Workstation VMDK to ESXi-Compatible VMDK via VMWorkstation-VDiskmanager.exe
-Uploads ESXi-Compatible VMDK to NutanixDisks datastore.
-Delete old files off of local machine besides the log.
-Spin up new VM based on a template that has no hard disk.
-Attach harddisk from datastore and power on.
-Runs the scheduled task that registers new DNS record.
Hi,
I been trying to use your tool but I keep getting this error. that I have not been able to figure out.
PS C:\Windows\system32> C:\Users\lgalford\Documents\AHVESX.ps1
Enter VM Name: : test
Enter Nutanix Cluster name: : ntavengers.avengers.lab.local
Directory: C:\windows\config
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 9/20/2023 4:16 PM logs
IsConnected : True
Id : /VIServer=vsphere.local\administrator@vc.avengers.lab.local:443/
ServiceUri : https://vc.avengers.lab.local/sdk
SessionSecret : "994de6dc269dd87fc7df2b518927644454005c0c"
Name : vc.avengers.lab.local
Port : 443
SessionId : "994de6dc269dd87fc7df2b518927644454005c0c"
User : VSPHERE.LOCAL\Administrator
Uid : /VIServer=vsphere.local\administrator@vc.avengers.lab.local:443/
Version : 8.0.0
Build : 20519528
ProductLine : vpx
InstanceUuid : f95a7908-409e-4788-8a72-b8040472bc4e
RefCount : 2
ExtensionData : VMware.Vim.ServiceInstance
True
UUID of VM is
Resolve-DnsName : test : DNS name does not exist
At C:\Users\lgalford\Documents\AHVESX.ps1:219 char:19
+ $ipaddress = (Resolve-DnsName -Name $pvmname | select IPAddress). ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : ResourceUnavailable: (test:String) [Resolve-DnsName], Win32Exception
+ FullyQualifiedErrorId : DNS_ERROR_RCODE_NAME_ERROR,Microsoft.DnsClient.Commands.ResolveDnsName
VERBOSE: VMName is test
VERBOSE: VM Cluster is ntavengers.avengers.lab.local
VERBOSE: VDisk UUID is 7dcf609c-e125-4d61-99da-5d571e9f5035
VERBOSE: RAM is 8
VERBOSE: Owner is test
VERBOSE: Copying PS1 for task to test
Directory: C:\windows\config\logs
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 9/20/2023 4:22 PM NutanixVMWare
Directory: C:\windows\config\logs\NutanixVMWare
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 9/20/2023 4:22 PM 0 DNSUpdate.ps1
[test] Connecting to remote server test failed with the following error message : WinRM cannot process the request. The following error occurred while using Kerberos
authentication: Cannot find the computer test. Verify that the computer exists on the network and that the name provided is spelled correctly. For more information, see
the about_Remote_Troubleshooting Help topic.
+ CategoryInfo : OpenError: (test:String) [], PSRemotingTransportException
+ FullyQualifiedErrorId : NetworkPathNotFound,PSSessionStateBroken
copy-item : The network path was not found
At C:\Users\lgalford\Documents\AHVESX.ps1:274 char:1
+ copy-item $outfile -Destination "\\$vmname\c$\windows\config\logs\Nut ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [Copy-Item], IOException
+ FullyQualifiedErrorId : System.IO.IOException,Microsoft.PowerShell.Commands.CopyItemCommand
VERBOSE: Setting up scheduled task on test for DNS registering
[test] Connecting to remote server test failed with the following error message : WinRM cannot process the request. The following error occurred while using Kerberos
authentication: Cannot find the computer test. Verify that the computer exists on the network and that the name provided is spelled correctly. For more information, see
the about_Remote_Troubleshooting Help topic.
+ CategoryInfo : OpenError: (test:String) [], PSRemotingTransportException
+ FullyQualifiedErrorId : NetworkPathNotFound,PSSessionStateBroken
VERBOSE: test located in ntavengers.avengers.lab.local. Powering off.
test located in ntavengers.avengers.lab.local
test Powered Off
VERBOSE: Setting up WinSCP for file transfer to cluster
VERBOSE: Unable to connect to ntavengers.avengers.lab.local, exiting program
If you could give me a hand I would really apreciated.
Seems to me like there is an issue connecting to the Nutanix cluster through WINSCP CLI.
You need to make sure you have download rights to the cluster and that the port isn't being blocked. I have port 2222 being used in the script. Make sure that lines 308-318 are modified as well for your environment.
Please see if the following video helps you achieving the same:
https://www.youtube.com/watch?v=u3v29ZI3ZNk
Regards,
Sachchidanand
I would like to ask - Why are they moving off Nutanix AHV? I am running both environments. VMware tends to have some additional features. But is there a performance difference?
I would be interested to hear thought of people that have migrated from one platform to another.
For us, too many bugs. We had a few clusters and had periodic bugs we would hit. However, the event that pushed us to replace them was when twice within a week or so, when trying to do the "non-disruptive" upgrades, the entire cluster went down. This took production down for about an hour between the system booting back up and the boot storm caused by all of the VM's trying to recover.