Bug 1240631

Summary: Template parameters required for ML2_TUNNEL_ID_RANGES and ML2_VNI_RANGES
Product: Red Hat OpenStack Reporter: Dougal Matthews <dmatthew>
Component: openstack-tripleo-heat-templatesAssignee: Marios Andreou <mandreou>
Status: CLOSED ERRATA QA Contact: Eran Kuris <ekuris>
Severity: high Docs Contact:
Priority: high    
Version: DirectorCC: calfonso, jason.dobies, mburns, ohochman, rbiba, rhel-osp-director-maint, scohen, tfreger
Target Milestone: gaKeywords: Triaged
Target Release: Director   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: openstack-tripleo-heat-templates-0.8.6-32.el7ost python-rdomanager-oscplugin-0.0.8-30.el7ost Doc Type: Enhancement
Doc Text:
This release allows you to configure the neutron_tunnel_id_ranges and neutron_vni_ranges parameters, which govern the GRE or VXLAN tunnel IDs respectively. These are to be made available for overcloud tenant networks by overcloud Neutron. As an example, you can specify: # openstack overcloud deploy --plan overcloud --control-scale 3 --compute-scale 1 --neutron-tunnel-id-ranges "1:1111,2:2222" --neutron-vni-ranges "3:33,5:55,100:999" --neutron-tunnel-types "gre,vxlan" If not specified, tunnel_id_ranges and neutron_vni_ranges both default to "1:1000", which may be unsuitable or restrictive for some deployment scenarios. If deploying as shown in the example above, you can inspect and verify the relevant neutron configuration files on a controller node (post deploy), for instance: # grep -rni 'vni_ranges\|id_ranges\|tunnel_types' /etc/neutron/* /etc/neutron/plugin.ini:78:tunnel_id_ranges =1:1111,2:2222 /etc/neutron/plugin.ini:85:vni_ranges =3:33,5:55,100:999 /etc/neutron/plugins/openvswitch/ovs_neutron_plugin.ini:77:tunnel_types =gre,vxlan /etc/neutron/plugins/ml2/ml2_conf.ini:78:tunnel_id_ranges =1:1111,2:2222 /etc/neutron/plugins/ml2/ml2_conf.ini:85:vni_ranges =3:33,5:55,100:999 You can also test by creating an overcloud network (again, post-deploy), for instance: # source overcloudrc # from the undercloud box for example # neutron net-create --provider:network_type "vxlan" "foo" This will create a vxlan type network. On inspection you can verify that this received a segmentation ID from the specified vni_ranges: # neutron net-show foo | provider:network_type | vxlan | provider:segmentation_id | 3 Likewise, you can verify an appropriate segmentation ID is assigned for GRE networks.
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-08-05 13:58:37 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1236399    

Description Dougal Matthews 2015-07-07 11:56:54 UTC
We need template paramaters to control ML2_TUNNEL_ID_RANGES=10:10000 and ML2_VNI_RANGES=10:100.

Currently they can only be customised with hiera data. https://bugzilla.redhat.com/show_bug.cgi?id=1236399#c8

See https://bugzilla.redhat.com/show_bug.cgi?id=1236399 for more details and discussion.

Comment 3 Marios Andreou 2015-07-08 11:46:16 UTC
reviews out - though still untested, going to start that momentarily

tripleo-heat-templates@
https://review.openstack.org/199509 Adds the NeutronTunnelIdRanges and NeutronVniRanges parameters

rdomanager-oscplugin@ 
https://review.gerrithub.io/238980  Expose the --neutron-tunnel-id-ranges --neutron-vni-ranges options

Comment 4 Marios Andreou 2015-07-08 15:10:26 UTC
update before i call it a day - i tested the above two - the heat templates change is fine as is i think but i had some issues applying the oscplugin to current downstream version of that -  so I manually patched up what was already on my undercloud env in /usr/lib/python.

I was able to do:

openstack overcloud deploy --control-scale 3 --plan-uuid $plan_id --ceph-storage-scale 1  --neutron-vni-ranges "3:333" --neutron-tunnel-id-ranges "4:4444"

obviously that doesn't makes sense (you set tunnel-id for gre and vni for vxlan, not both) but I just wanted to check the values are passed OK:

/etc/neutron/plugin.ini:78:tunnel_id_ranges =4:4444
/etc/neutron/plugin.ini:85:vni_ranges =3:333
/etc/neutron/plugins/ml2/ml2_conf.ini:78:tunnel_id_ranges =4:4444
/etc/neutron/plugins/ml2/ml2_conf.ini:85:vni_ranges =3:333

Comment 6 Eran Kuris 2015-07-16 09:24:28 UTC
verified on : 
RHEL-OSP director puddle 7.0 RC - 2015-07-13.1
[stack@instack ~]$ sudo rpm -qa |grep python-rdomanager-oscplugin
python-rdomanager-oscplugin-0.0.8-32.el7ost.noarch
[stack@instack ~]$ sudo rpm -qa |grep openstack-tripleo
openstack-tripleo-image-elements-0.9.6-6.el7ost.noarch
openstack-tripleo-puppet-elements-0.0.1-4.el7ost.noarch
openstack-tripleo-0.0.7-0.1.1664e566.el7ost.noarch
openstack-tripleo-common-0.0.1.dev6-0.git49b57eb.el7ost.noarch
openstack-tripleo-heat-templates-0.8.6-35.el7ost.noarch

validate deployment with the command : 
openstack  overcloud deploy --plan-uuid e005128b-bdd3-44b1-8ff0-752e75c6dc0e  --neutron-tunnel-id-ranges 33:3333  --neutron-vni-ranges 44:4444 --neutron-mechanism-drivers openvswitch


checked after deploy in the controller : 
[heat-admin@overcloud-controller-0 ~]$ sudo vi /etc/neutron/plugin.ini
[heat-admin@overcloud-controller-0 ~]$ sudo vi /etc/neutron/plugins/ml2/ml2_conf.ini


FIXED

Comment 8 errata-xmlrpc 2015-08-05 13:58:37 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHEA-2015:1549