Ask Your Question

VMwareESXDriver: VMX Configuration

asked 2014-01-03 09:04:10 -0500

Mathias Ewald gravatar image

Hi, is there a way to tell nova-compute to make certain configuration changes to a for example VMX file (VMware) or Libvirt XML file? The reason I am asking is: I want VT-x for my VM to allow running nested hypervisors. I know in vSphere Web Client this is a little check box to enable it which probably comes down to some line in a VMX file. How can I tell nova-compute to enable this feature for a particular or just any VM?

edit retag flag offensive close merge delete


Questions: 1. Why would you want to run a nested hypervisor as an instance? (Seems to defeat the purpose of an instance) 2. Are you building an image with ESXi baked in for quick deploy?

antonnoble gravatar imageantonnoble ( 2014-01-03 15:34:35 -0500 )edit

Also please ask this question directly to the OpenStack team here: . I know you can do nested hypervisors with KVM and libvirt driver. They may be working on nested hypervisor compatibility with the vmwarepi driver for OpenStack.

antonnoble gravatar imageantonnoble ( 2014-01-03 16:03:59 -0500 )edit

Question 1 I will not answer. Just every discussion out there about nesting brings up the topic of its purpose. Just read there ;) Nesting on KVM only works for KVM being the nested hypervisor. But I need ESXi virtual instances.

Mathias Ewald gravatar imageMathias Ewald ( 2014-01-04 02:37:08 -0500 )edit

2 answers

Sort by ยป oldest newest most voted

answered 2014-01-03 15:49:28 -0500

antonnoble gravatar image

updated 2014-01-03 16:00:58 -0500

Here's maybe a hack you could try.

1. Deploy an instance from whatever image you want. 
2.Shutdown instance. 
3.Goto vCenter in web client right click powered off vm that was created on your OpenStack cluster.
4. Select vCenter Actions then Compatibility and Upgrade VM to latest hardware (if greyed it should be on the latest your host supports)  ESXi 5.0 = version 8 ESXi 5.1 = version 9 ESXi 5.5 = version 10
5. Right click VM again and edit settings
6. Under virtual hardware select CPU and tick the "hardware virtualization box"
7. Click ok
8. Boot VM from an ISO of ESXi and install over whatever your image had.
9. I suggest probably rebooting your compute node after this.
10. Power off VM after installation and configuration completes
11. Attempt to power on instance from OpenStack.

Warning this may have a good chance of not working....but might be worth the try.


There are so many flaws in my plan I would be surprised if it worked. Furthermore if it worked it would be nice to port your VM into glance for a quick redeploy when needed.

Something to think about is this:

edit flag offensive delete link more


I am new to openstack so dont get me wrong here, I might just not be seeing the reasons behind this suggestion due to lack of OpenStack knowledge. I dont really see why I would need to boot a random instance first and then reinstall it with ESXi. The way I see it is: Uploading an image into glance merely provides that hard disk file not including any configuration (like virtual hw assists). I can always activate this and that feature after the instance was deployed using vCenter in my case, sure! But that wasn't my question ;) So what I probably need is a way to tell "nova boot" to add this feature or add this information to the flavor configuration as anything I do to the VM is gone when I upload the image into glance.

Mathias Ewald gravatar imageMathias Ewald ( 2014-01-04 02:45:06 -0500 )edit

Usually you would set custom specifications for an instance with cloud-init. However, I'm pretty sure cloud-init is not supported for use on ESXi. The reason I'm suggesting the hack is because you can configure this specific instance to run ESXi, but I'm pretty sure you wouldn't be able to clone it.

antonnoble gravatar imageantonnoble ( 2014-01-04 08:02:31 -0500 )edit

Ok cloning from an existing instance if not an option anyways. I would need it as a glance image.

Mathias Ewald gravatar imageMathias Ewald ( 2014-01-04 10:16:30 -0500 )edit

answered 2014-01-04 10:34:38 -0500

Mathias Ewald gravatar image

Reading the Virtual Machine Image Guide, I stumbled across the vmware_ostype parameter. Depending on the supported values, it might be possible to specify something like "esxi5" which would probably have VMware API automatically activate Virtual VT-x. What do you think? (Have no way to test right now) The Image Guide refers to for "a list of valid values" - couldnt find any though.

edit flag offensive delete link more


Yea cloning wouldn't work loading it to glance, I just thought it would be nice if you could. As for the image guide, I think you would probably want to refer to the VMWare team directly to ask if they haven't documented all of the parameters for the vmwareapi driver.

antonnoble gravatar imageantonnoble ( 2014-01-04 17:16:34 -0500 )edit

However, I still think my hack might have a chance of working, it's just not ideal, and it's tedious, would have to do it that way every time you wanted to spin up an esxi instance.

antonnoble gravatar imageantonnoble ( 2014-01-04 17:17:53 -0500 )edit

Get to know Ask OpenStack

Resources for moderators

Question Tools

1 follower


Asked: 2014-01-03 09:04:10 -0500

Seen: 1,306 times

Last updated: Jan 04 '14