VLAN not tagged on every switchs

Bug #1759000 reported by Gaëtan Trellu
14
This bug affects 3 people
Affects Status Importance Assigned to Milestone
Networking ML2 Generic Switch
Fix Released
Undecided
Gaëtan Trellu

Bug Description

When a Neutron network is created, the VLAN is propagated on every switch but when we are provisioning a baremetal node via Nova/Ironic the VLAN is only tagged on one switch only.

We have a baremetal node using the port group implemented in Ocata.

SW11(config-if-Po116)#sh active
interface Port-Channel116
   switchport access vlan 1100
   switchport trunk allowed vlan none
   port-channel lacp fallback static
   port-channel lacp fallback timeout 5
   mlag 116

SW12(config-if-Po116)#sh active
interface Port-Channel116
   switchport trunk allowed vlan none
   port-channel lacp fallback static
   port-channel lacp fallback timeout 5
   mlag 116

On SW12 switch the VLAN 1100 is not tagged for the Port-Channel116 interface. With this behavior our LACP setup doesn't work.

We are running Pike with NGS 1.0.0 on Arista switches.

 $openstack baremetal port show 8b5bdf59-9fb5-4afe-b467-89370b51bfbc -c local_link_connection -f json | jq .
{
  "local_link_connection": {
    "switch_info": "SW11",
    "port_id": "Port-Channel116",
    "switch_id": "00:1c:73:e2:15:27"
  }
}

$ openstack baremetal port show a977a1c3-18f7-46ac-bf20-eeb39c4c5613 -c local_link_connection -f json | jq .
{
  "local_link_connection": {
    "switch_info": "SW12",
    "port_id": "Port-Channel116",
    "switch_id": "00:1c:73:e2:15:ed"
  }
}

$ openstack baremetal port group show 3fb3c2db-6058-4ddc-a6d5-b723802f4009 -c internal_info -f json | jq .
{
  "internal_info": {
    "tenant_vif_port_id": "0562ecb1-7c90-4585-9d48-30c08bc15932"
  }
}

$ openstack port show 0562ecb1-7c90-4585-9d48-30c08bc15932 -c binding_profile -f json | jq .
{
  "binding_profile": "local_group_information='{u'bond_mode': u'802.3ad', u'id': u'3fb3c2db-6058-4ddc-a6d5-b723802f4009', u'name': u'CZ35359C3LBond', u'bond_properties': {u'bond_lacp_rate': u'fast', u'bond_updelay': u'200', u'bond_xmit_hash_policy': u'layer3+4', u'bond_miimon': u'100', u'bond_downdelay': u'200'}}', local_link_information='[{u'switch_info': u'SW11', u'port_id': u'Port-Channel116', u'switch_id': u'00:1c:73:e2:15:27'}, {u'switch_info': u'SW12', u'port_id': u'Port-Channel116', u'switch_id': u'00:1c:73:e2:15:ed'}]'"
}

Looks like there is no loop in local_link_information and it took the first switch it found, here SW11 which is the one with the VLAN correctly tagged.

description: updated
description: updated
summary: - VLAN note tagged on every switchs
+ VLAN not tagged on every switchs
Revision history for this message
Gaëtan Trellu (goldyfruit) wrote :

I added few information about the Ironic and Neutron ports.

description: updated
description: updated
description: updated
description: updated
Revision history for this message
Gaëtan Trellu (goldyfruit) wrote :

In the logs I can see the provisioning network VLAN tagged on both switches but for the tenant network VLAN it only happened on SW11.

$ grep -ri "Successfully bound port"
neutron-server.log.1:2018-03-26 18:19:55.811 27 INFO networking_generic_switch.generic_switch_mech [req-1596620f-b5bb-4925-8876-994458e31c43 a1202baec4954680ab2ac3bc4b9c39c2 0b096e2e85b64812b7ed348d8a6f3fd5 - default default] Successfully bound port 6b44c197-0327-449b-9d79-604f6d72ad1f in segment 65 on device SW11

neutron-server.log.1:2018-03-26 18:20:09.384 27 INFO networking_generic_switch.generic_switch_mech [req-8dfd8a7a-5150-4878-b59d-29aea1ab55e7 a1202baec4954680ab2ac3bc4b9c39c2 0b096e2e85b64812b7ed348d8a6f3fd5 - default default] Successfully bound port 908821df-ef7e-4557-b4e7-532c5a329934 in segment 65 on device SW12

neutron-server.log.1:2018-03-26 18:28:44.912 26 INFO networking_generic_switch.generic_switch_mech [req-ce807910-c956-4ac6-ad93-faa6db6ae753 a1202baec4954680ab2ac3bc4b9c39c2 0b096e2e85b64812b7ed348d8a6f3fd5 - default default] Successfully bound port 0562ecb1-7c90-4585-9d48-30c08bc15932 in segment 1100 on device SW11

description: updated
description: updated
description: updated
Revision history for this message
Gaëtan Trellu (goldyfruit) wrote :
Changed in networking-generic-switch:
assignee: nobody → Gaëtan Trellu (goldyfruit)
Revision history for this message
Gaëtan Trellu (goldyfruit) wrote :
Revision history for this message
Gaëtan Trellu (goldyfruit) wrote :

After applying the change above I can see the VLAN tagged on bot switches.

2018-03-27 20:35:19.236 44 INFO networking_generic_switch.generic_switch_mech [req-e29ebf32-f89c-4d7e-9f83-b3ca9e159753 a1202baec4954680ab2ac3bc4b9c39c2 0b096e2e85b64812b7ed348d8a6f3fd5 - default default] Successfully bound port 3588a1ee-18e5-479a-9074-8103a72487c3 in segment 65 on device SW11

2018-03-27 20:35:32.624 44 INFO networking_generic_switch.generic_switch_mech [req-6ea17d8d-9d22-4ffd-9e19-f64fb2572e2a a1202baec4954680ab2ac3bc4b9c39c2 0b096e2e85b64812b7ed348d8a6f3fd5 - default default] Successfully bound port b8a4b250-ea9b-4ea8-9e02-3d3bfc7429d3 in segment 65 on device SW12

2018-03-27 20:43:44.218 44 INFO networking_generic_switch.generic_switch_mech [req-908c61af-54c7-45cd-9ac8-031d93656cfb a1202baec4954680ab2ac3bc4b9c39c2 0b096e2e85b64812b7ed348d8a6f3fd5 - default default] Successfully bound port 2168b48e-6b7a-4993-8e52-6238250be7fa in segment 1100 on device SW11
2018-03-27 20:43:55.638 44 INFO networking_generic_switch.generic_switch_mech [req-908c61af-54c7-45cd-9ac8-031d93656cfb a1202baec4954680ab2ac3bc4b9c39c2 0b096e2e85b64812b7ed348d8a6f3fd5 - default default] Successfully bound port 2168b48e-6b7a-4993-8e52-6238250be7fa in segment 1100 on device SW12

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/networking-generic-switch 6.1.0

This issue was fixed in the openstack/networking-generic-switch 6.1.0 release.

Mark Goddard (mgoddard)
Changed in networking-generic-switch:
status: New → Fix Released
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.