Comment 2 for bug 1105488

Revision history for this message
Li Ma (nick-ma-z) wrote : Re: linuxbridge agent needs ability to use pre-configured physical network bridges

Nova hard-code 'brq' + net-id as bridge name in libvirt configuration, so it is impossible for neutron to define bridge name for instances.

nova/network/neutronv2/api.py:

def _nw_info_build_network(self, port, networks, subnets):

1530 elif vif_type == network_model.VIF_TYPE_BRIDGE:
1531 bridge = "brq" + port['network_id']

So, when Neutron loads a pre-existed user-defined bridge called 'br-eth1' and would like to let it connect the instances, it will fail because Nova writes 'brq-net-id' into libvirt conf file.

A good design is that, when creating port, Neutron sends bridge name back to Nova and Nova just makes it effective (write it into libvirt).