Is there a way to clone an existing VM on an ESXi server without having to re-import it?

Solution 1:

No need to use the converter to clone a VM.

Simply browse to the datastore:

  • Click on the host > Configuration tab
  • Select Hardware > Storage to display the datastores
  • Right-click on the datastore with the VM you want to clone > Browse Datastore
  • Create a new folder in the store
  • Right click on the VM folder and select Copy (must be done in the right pane of the Datastore Browser)
  • Paste the VM to a new sub folder (otherwise the VM will overwrite itself)
  • Once copied, rename and move the folder if desired
  • Select the .vmx file within the cloned VM and select 'Add to Inventory'

Solution 2:

Actually it's easier to just goto the host machine in VIC under summary tab and browse the datastore. Then create a folder for the new vm, copy the vmdk file from your source vm by copy and paste within the datastore browser and then create a custom VM for the new vmdk file. Make sure your VM and folder names match and it takes 1/10th of the time to do.

Example for me was:

7gig VM:

  • Converter: 13mins
  • Direct: 3mins
  • Copy via Datastore browser: 1min

I made copies of 17 VM's in Under 20 mins which saved a ton of time from converter.


Solution 3:

[Editing my own answer]

Summary:

  • the Converter took me about 15 minutes to run from WS6 to ESXi
  • the Converter took about 45 minutes to run from ESXi to itself
  • logging in with a command prompt and then copying as per the "unsupported" instructions worked, but took about 20 minutes to copy the VM, and I was unable to correctly start the result

My conclusion: just use the Converter repeatedly.

Thanks all for the ideas.

(Update, much later: here are the details for how to create a copy of a VM without running the converter repeatedly.)


Solution 4:

You need console (or SSH) access to the ESXi server, and then you can copy your VMs around using standard UNIX commands (cp).

To get console access:

  • go to the server console
  • type ALT-F1
  • type "unsupported" without quotes (no echo)
  • type your password (no echo, again)

Now you are at the server's command prompt; if you want to enable SSH access, edit /etc/inetd.conf and remove che comment symbol ("#") from the SSH line.


Solution 5:

There is a "ghetto-esx-linked-clones" script that will make Linked Clones rather than full clones. Linked clones are great for VMs that you intend to use for short-term testing, since the clones only store differences relative to the original VM. Running this script requires enabling SSH access to the ESXi host.

http://communities.vmware.com/docs/DOC-9202?tstart=7450

Tags:

Vmware Esxi