Description of problem: If you deploy the overcloud with --neutron-tunnel-types vxlan, but you don't specify the --neutron-network-type, then you end up with an unusable network configuration on the overcloud. All of the OVS agents are configured for VXLAN, but the Neutron networks are GRE, so nothing can communicate. Version-Release number of selected component (if applicable): puddle-2015-07-17.2 How reproducible: 100% Steps to Reproduce: 1. Deploy with --neutron-tunnel-types vxlan but do not specify the --neutron-network-type 2. 3. Actual results: Neutron networks are configured as GRE, but the OVS agents are configured for VXLAN tunneling. Expected results: The CLI should throw an error if the --neutron-network-type does not match at least one of the --neutron-tunnel-types. Additional info:
*** Bug 1244894 has been marked as a duplicate of this bug. ***
I got no error when I passed "--neutron-tunnel-types vxlan --neutron-network-type gre" on the command line. Deployment succeeded (I didn't test the resulting overcloud, but it deployed).
@Udi Can you include the version of python-rdomanager-oscplugin?
Verified that version was python-rdomanager-oscplugin-0.0.10-1.el7
openstack overcloud deploy --templates ~/templates/my-overcloud -e ~/templates/my-overcloud/environments/network-isolation.yaml -e ~/templates/network-environment.yaml --control-scale 1 --compute-scale 1 --ceph-storage-scale 0 --neutron-tunnel-types vxlan results in [heat-admin@overcloud-controller-0 ~]$ sudo grep tenant_network /etc/neutron/plugin.ini | grep -v ^# tenant_network_types = gre I think neutron-network-type defaults to gre in overcloud_deploy. Expected result: The same result as when passing specific neutron-network-type: [stack@instack ~]$ openstack overcloud deploy --templates ~/templates/my-overcloud -e ~/templates/my-overcloud/environments/network-isolation.yaml -e ~/templates/network-environment.yaml --control-scale 1 --compute-scale 1 --ceph-storage-scale 0 --neutron-tunnel-types vxlan --neutron-network-type gre ERROR: openstack Neutron network type must be in Neutron tunnel types (vxlan) [stack@instack ~]$ rpm -qa | grep oscplugin python-rdomanager-oscplugin-0.0.10-3.el7ost.noarch
Verified: Environment: python-rdomanager-oscplugin-0.0.10-4.el7ost.noarch Attempted to deploy with command: openstack overcloud deploy --templates --control-scale 3 --compute-scale 1 --ceph-storage-scale 0 -e <yaml> --ntp-server x.x.x.x --timeout 90 --compute-flavor compute --control-flavor control --neutron-tunnel-types gre Resulted in: ERROR: openstack Neutron network type must be specified when Neutron tunnel types is specified
I have one report that when deploying with --neutron-network-type vlan the user was required to add --neutron-tunnel-types vlan. That is not correct. We do want to make sure that when the network type is GRE or VXLAN that the neutron-tunnel-types includes that network type, but not when the network type is VLAN. When the network type is VLAN, the neutron-tunnel-types shouldn't be required.
(In reply to Dan Sneddon from comment #13) > I have one report that when deploying with --neutron-network-type vlan the > user was required to add --neutron-tunnel-types vlan. > > That is not correct. We do want to make sure that when the network type is > GRE or VXLAN that the neutron-tunnel-types includes that network type, but > not when the network type is VLAN. When the network type is VLAN, the > neutron-tunnel-types shouldn't be required. I confirm that: [stack@instack ~]$ openstack overcloud deploy --templates ~/templates/my-overcloud -e ~/templates/my-overcloud/environments/network-isolation.yaml -e ~/templates/network-environment.yaml --control-scale 3 --compute-scale 1 --ntp-server clock.redhat.com -e ~/templates/snmpd.yaml --neutron-network-type vlan ERROR: openstack Neutron tunnel types must be specified when Neutron network type is specified Before moving it to assigned do you think --neutron-network-vlan-ranges should be required if --neutron-network-type is set to vlan?
(In reply to Marius Cornea from comment #14) > (In reply to Dan Sneddon from comment #13) > > I have one report that when deploying with --neutron-network-type vlan the > > user was required to add --neutron-tunnel-types vlan. > > > > That is not correct. We do want to make sure that when the network type is > > GRE or VXLAN that the neutron-tunnel-types includes that network type, but > > not when the network type is VLAN. When the network type is VLAN, the > > neutron-tunnel-types shouldn't be required. > > I confirm that: > > [stack@instack ~]$ openstack overcloud deploy --templates > ~/templates/my-overcloud -e > ~/templates/my-overcloud/environments/network-isolation.yaml -e > ~/templates/network-environment.yaml --control-scale 3 --compute-scale 1 > --ntp-server clock.redhat.com -e ~/templates/snmpd.yaml > --neutron-network-type vlan > ERROR: openstack Neutron tunnel types must be specified when Neutron network > type is specified > > Before moving it to assigned do you think --neutron-network-vlan-ranges > should be required if --neutron-network-type is set to vlan? That's a great point, yes we probably should require --neutron-network-vlan-ranges when vlan mode is selected.
Ok, so when --neutron-network-type is set to vlan --neutron-tunnel-types should not be required but instead --neutron-network-vlan-ranges should be passed.
(In reply to Marius Cornea from comment #16) > Ok, so when --neutron-network-type is set to vlan --neutron-tunnel-types > should not be required but instead --neutron-network-vlan-ranges should be > passed. Yes, that is correct.
This bug is blocking us from deploying with VLAN and verify functionality
Closing this bug after cloning it for OSP8 to take care of the last corner case. The rest of it is in the current release.