[network] openvswitch agent does not use ml2_conf on redhat

Bug #1311311 reported by Mark Vanderwiel
16
This bug affects 3 people
Affects Status Importance Assigned to Milestone
OpenStack + Chef
Fix Released
Critical
Mark Vanderwiel

Bug Description

After some review of the install doc: http://docs.openstack.org/trunk/install-guide/install/yum/content/neutron-ml2-compute-node.html , the ml2_conf.ini file is required to have some OpenVSwitch configuration options. However this is inconsistent across
the platforms. The following shows which conf files (beside neutron.conf) are used where for the ml2 use case.

[Controller Nodes]

Neturon server:
- redhat uses ml2_conf.ini and plugin.ini (sym link to plugin conf)
- ubuntu uses ml2_conf.ini setup in /etc/default/neutron-server

Openvswitch agent:
- redhat uses ovs_neutron_plugin.ini
- ubuntu uses ml2_conf.ini with addition ovs section (any ovs values are not used by ml2, only but the agent)

Linuxbridge agent:
- redhat uses linuxbridge_conf.ini
- ubuntu uses linuxbridge_conf.ini

[Compute Nodes)

Openvswitch agent:
- redhat uses ovs_neutron_plugin.ini
- ubuntu uses ml2_conf.ini with addition ovs section (any ml2 values are not used by the agent)

Linuxbridge agent:
- redhat uses linuxbridge_conf.ini
- ubuntu uses linuxbridge_conf.ini

I'm not sure why ubuntu made the change to have the openvswitch agent use the ml2 conf file when the values are agent specific. There's a separate bug opened for this ubuntu issue, bug 1314751.

For openvswitch gre to work, these 3 values are needed:
[ovs]
local_ip = INSTANCE_TUNNELS_INTERFACE_IP_ADDRESS
tunnel_type = gre
enable_tunneling = True

Other refs for examples of this use case: https://access.redhat.com/site/documentation/en-US/Red_Hat_Enterprise_Linux_OpenStack_Platform/4/pdf/Installation_and_Configuration_Guide/Red_Hat_Enterprise_Linux_OpenStack_Platform-4-Installation_and_Configuration_Guide-en-US.pdf

Revision history for this message
Openstack Gerrit (openstack-gerrit) wrote : Fix proposed to cookbook-openstack-network (master)

Fix proposed to branch: master
Review: https://review.openstack.org/89690

Changed in openstack-chef:
status: New → In Progress
description: updated
Revision history for this message
Openstack Gerrit (openstack-gerrit) wrote :

Fix proposed to branch: master
Review: https://review.openstack.org/90246

summary: - ml2 requires some openvswitch and linuxbridege conf options
+ [network] ml2 requires openvswitch and linuxbridege confs
description: updated
description: updated
summary: - [network] ml2 requires openvswitch and linuxbridege confs
+ [network] openvswitch agent does not use ml2_conf
summary: - [network] openvswitch agent does not use ml2_conf
+ [network] openvswitch agent does not use ml2_conf on redhat
Revision history for this message
Darren Birkett (darren-birkett) wrote :

As per your link, http://docs.openstack.org/trunk/install-guide/install/yum/content/neutron-ml2-compute-node.html, this is a redhat packaging bug and the fix is to modify the initscript to use the symlink rather than the hardcoded path to the openvswitch plugin conf file.

I think the correct approach is to ensure that both rhel and ubuntu are using the same plugin config file (ml2 - for rhel that means fixing the initscript so it doesn't hard code to the openvswitch plugin ini, for ubuntu it means ensureing that /etc/default/neutron contains the correct config file to use)) and that the ovs options are dropped in there, as per the (apparent) design

description: updated
Revision history for this message
Mark Vanderwiel (vanderwl) wrote :

Darren, I added a hopefully better description to the issue above. With having the agents on the controller and the compute nodes, to me this looks like agents should be using there own conf files as they always have. It makes it more consistent between the controller and compute nodes. For the controller neutron server, I would agree that it's values need to go into ml2_conf.ini.

The other issue we face is that the current agent and server recipes all go thru the common recipe as this worked well for the older monolithic style plugins that shared a server and agent conf file.

description: updated
Revision history for this message
Openstack Gerrit (openstack-gerrit) wrote :

Fix proposed to branch: master
Review: https://review.openstack.org/92420

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to cookbook-openstack-network (master)

Reviewed: https://review.openstack.org/92420
Committed: https://git.openstack.org/cgit/stackforge/cookbook-openstack-network/commit/?id=268552e009ebfa1da6f888da6c24533b835da5c4
Submitter: Jenkins
Branch: master

commit 268552e009ebfa1da6f888da6c24533b835da5c4
Author: Mark Vanderwiel <email address hidden>
Date: Tue May 6 12:46:34 2014 -0500

    Fix openvswitch and linux bridge agent confs for ml2 on redhat

    The agent conf files were not being created when using ml2 on redhat.
    This patch creates the conf directory and file for the agent recipes.
    For openvsiwtch, it's specific to redhat, as debian uses different conf
    file, reported under this bug 1314751.
    For linuxbridge, it's the same conf for both redhat and ubuntu.

    See bug for more details.

    Change-Id: Iae8fff68c5b270593ba9c23ecc8deac7577e2382
    Closes-Bug: #1311311

Changed in openstack-chef:
status: In Progress → Fix Released
Changed in openstack-chef:
milestone: icehouse-rc1 → icehouse-stable
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.