[Openstack] openstack brctl addbr not supported on RHEL 6.3
Gary Kotton
gkotton at redhat.com
Tue Feb 12 10:34:45 UTC 2013
On 02/11/2013 06:58 PM, Pádraig Brady wrote:
> A quick search suggests that kernel has CONFIG_BRIDGE=n set.
> So I presume there another method is possible through config.
> Gary any ideas?
Please look at https://bugzilla.redhat.com/show_bug.cgi?id=877704. For
some reason the the bridge module is not loaded. I hope that if you
follow what is listed in the bug then it will all work and the
experience will improve.
Thanks
Gary
>
> On 02/11/2013 04:33 PM, Greg Chavez wrote:
>>
>> Running latest EPEL Folsom packages on RHEL 6.3. Three nodes right
>> now, one controller, one network node, one compute node. The network
>> node has three NICs, one for external net, one for management net,
>> one for VM network traffic. It has been a miserable journey so far.
>>
>> The lastest calamity began with a failed spawn of the Cirros test
>> image. I booted it like this:
>>
>> # nova --os-username demo --os-password demo --os-tenant-name
>> demoProject boot --image aefa581f-47b0-4d46-8dbc-1a1f7f02dfa0
>> --flavor 2 --nic net-id=3de1e780-07d1-42af-89cc-0feaf1ece6e9 server-01
>>
>> This succeeded but went directly into an ERROR state. The compute
>> node's /var/log/nova/compute.log showed this:
>>
>> ProcessExecutionError: Unexpected error while running command.
>> Command: sudo nova-rootwrap /etc/nova/rootwrap.conf brctl addbr
>> qbr2218b8c4-7d
>> Exit code: 1
>> Stdout: ''
>> Stderr: 'add bridge failed: Package not installed\n'
>>
>> Hrm. So then I ran this:
>>
>> # brctl show
>> bridge namebridge idSTP enabledinterfaces
>> br-eth1/sys/class/net/br-eth1/bridge: No such file or directory
>> /sys/class/net/br-eth1/bridge: No such file or directory
>> /sys/class/net/br-eth1/bridge: No such file or directory
>> /sys/class/net/br-eth1/bridge: No such file or directory
>> /sys/class/net/br-eth1/bridge: No such file or directory
>> /sys/class/net/br-eth1/bridge: No such file or directory
>> /sys/class/net/br-eth1/bridge: No such file or directory
>> /sys/class/net/br-eth1/bridge: No such file or directory
>> /sys/class/net/br-eth1/bridge: No such file or directory
>> /sys/class/net/br-eth1/bridge: No such file or directory
>> /sys/class/net/br-eth1/bridge: No such file or directory
>> /sys/class/net/br-eth1/bridge: No such file or directory
>> 0000.bc305befedd1no
>> br-int/sys/class/net/br-int/bridge: No such file or directory
>> /sys/class/net/br-int/bridge: No such file or directory
>> /sys/class/net/br-int/bridge: No such file or directory
>> /sys/class/net/br-int/bridge: No such file or directory
>> /sys/class/net/br-int/bridge: No such file or directory
>> /sys/class/net/br-int/bridge: No such file or directory
>> /sys/class/net/br-int/bridge: No such file or directory
>> /sys/class/net/br-int/bridge: No such file or directory
>> /sys/class/net/br-int/bridge: No such file or directory
>> /sys/class/net/br-int/bridge: No such file or directory
>> /sys/class/net/br-int/bridge: No such file or directory
>> /sys/class/net/br-int/bridge: No such file or directory
>> 0000.7e1636f42c4bno
>>
>> GAH! What!!! First of all, bridge capability is set by default in
>> the RHEL 6.3 kernel. Secondly, nova knows that it's supposed to be
>> using openvswitch. The ProcessExecutionError's trace showed that the
>> offending code came from
>> /usr/lib/python2.6/site-packages/nova/virt/libvirt/vif.py line 216
>> which has this comment:
>>
>> def plug(self, instance, vif):
>> """Plug using hybrid strategy
>>
>> Create a per-VIF linux bridge, then link that bridge to the OVS
>> integration bridge via a veth device, setting up the other end
>> of the veth device just like a normal OVS port. Then boot the
>> VIF on the linux bridge using standard libvirt mechanisms
>> """
>>
>> Thirdly, ovs-vsctrl is happy:
>>
>> # ovs-vsctl show
>> 44435595-8cc8-469c-ace4-ded76a7b864d
>> Bridge "br-eth1"
>> Port "br-eth1"
>> Interface "br-eth1"
>> type: internal
>> Port "phy-br-eth1"
>> Interface "phy-br-eth1"
>> Port "eth1"
>> Interface "eth1"
>> Bridge br-int
>> Port "int-br-eth1"
>> Interface "int-br-eth1"
>> Port br-int
>> Interface br-int
>> type: internal
>> ovs_version: "1.7.3"
>>
>> Final note, my network node fails the same way, but the controller
>> does not.
>>
>> I hope so much that somebody knows what is going on here. This is
>> very terrible for me as I am struggling to achieve minimal
>> functionality. Thanks.
More information about the Openstack
mailing list