vmwareapi does not support distributed vswitch

Bug #796813 reported by Arvind Somya
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack Compute (nova)
Fix Released
Low
Arvind Somya

Bug Description

Nova version: 2011.3-dev (2011.3-workspace:tarmac-20110430024629-rc93dzxqvwptexqs)

The vmwareapi in Nova currently assumes a standard switch network in all cases of networking with vmware ESX(i).
In my case I was specifying a portgroup on a vswitch to be used as the flatr_network_bridge but on monitoring the ESX(i) host I found a new standard switch being created each time a VM from nova was spawned on it.

I traced the issue to virt/vmwareapi/vm_util.py::create_network_spec. The procedure creates a network backing that is only applicable to standard switch networks:
        backing = \

          client_factory.create('ns0:VirtualEthernetCardNetworkBackingInfo')

        backing.deviceName = network_name

The type of network needs to be detected before creating the vnic and it should be added appropriately.

Related branches

Revision history for this message
Arvind Somya (asomya) wrote :

I have a fix for this issue but it only works when the portgroup binding on ESXi is set to Ephemeral(no-binding) . It fails with static binding and ESXi refuses to connect the vNic on power up on dynamic binding (user has to manually connect the vNic)

Diff for the fix attached.

Revision history for this message
Thierry Carrez (ttx) wrote :

@Arvind: any chance you could implement your fix in a branch and propose that for merging into trunk ?

Changed in nova:
importance: Undecided → Low
status: New → Triaged
Thierry Carrez (ttx)
Changed in nova:
assignee: nobody → Arvind Somya (asomya)
status: Triaged → In Progress
Changed in nova:
status: In Progress → Fix Committed
Thierry Carrez (ttx)
Changed in nova:
milestone: none → diablo-3
Thierry Carrez (ttx)
Changed in nova:
milestone: diablo-3 → 2011.3
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.