I have an ovf template sitting on an esx's local datastore and am looking to deploy it to that same data store. can I do this directly?
OVFs aren't really made for deploying over and over again. I would recommend that you deploy the OVF once (but don't power it on [Unless you need to make customizations]) and do one of two things with the new VM:
- If you're using vCenter convert the VM to template and then deploy the template whenever you need a new instance. This is the best option.
- Copy the VM folder into a new folder whenever you need a new copy of the VM and select "I moved it" when the vSphere client prompts you.
I haven't tried this myself (as I don't have a local OVF at the moment). But you might be able to deploy by grabbing the OVF from the local HTTP server. See http://blogs.vmware.com/esxi/2010/01/scripting-datastore-access.html for information on accessing the datastore over the HTTP server.
If you OVF was called vm.ovf in the root of datastore1 the URL would look something like:
I am not sure if this requires authentication or not for localhost or if the Deploy OVF dialog allows you to enter HTTP authentication credentials. Worth a try.
The "Yo dawg, I know you like VMs..." solution:
On the ESX server you want to deploy to, create a Windows VM
Install vSphere Client on it.
Use the VM's vSphere Client to deploy OVF templates using their datastore URLs
http://<esx host>/folder/<ovf path>?dcPath=ha-datacenter&dsName=<your datastore>
From a suggestion on the VMware forums: http://communities.vmware.com/thread/274107