EMC-POC:Nexus plugin: VM is not deleted completely during Nexus switch reboot.

Bug #1467687 reported by Danny Choi
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
networking-cisco
New
Undecided
Unassigned

Bug Description

Replay parameters:
   - switch_heartbeat_time = 30
   - switch_replay_count = 3

While the Nexus switch is rebooting, delete the last VM of a tenant network.
     - VM fails to be deleted completely; in ERROR status.
     - mysql database entry does get removed.
     - Traceback is logged in server.log.
     - When the Nexus switch boots up, the replay code does not configured the VLAN associated with that network.
     - Have to issue the delete command again to cleanly remove the VM.

[root@bxb-ds-46 ~]# nova list
+--------------------------------------+----------------+--------+------------+-------------+------------------------------+
| ID | Name | Status | Task State | Power State | Networks |
+--------------------------------------+----------------+--------+------------+-------------+------------------------------+
| d4fa9abf-7349-4a7e-af68-41b53b701dbe | ds47-net43-vm1 | ERROR | - | Running | test_network_43=192.168.43.2 |
+--------------------------------------+----------------+--------+------------+-------------+------------------------------+

2015-06-22 17:44:43.690 19406 ERROR neutron.plugins.ml2.drivers.cisco.nexus.mech_cisco_nexus [req-a400cff5-5a5d-41b9-91b7-2f6eea07fbef None] Nexus Driver cisco_nexus failed in disable_vlan_on_trunk_int
2015-06-22 17:44:43.690 19406 TRACE neutron.plugins.ml2.drivers.cisco.nexus.mech_cisco_nexus Traceback (most recent call last):
2015-06-22 17:44:43.690 19406 TRACE neutron.plugins.ml2.drivers.cisco.nexus.mech_cisco_nexus File "/usr/lib/python2.7/site-packages/neutron/plugins/ml2/drivers/cisco/nexus/mech_cisco_nexus.py", line 5
90, in _delete_switch_entry
2015-06-22 17:44:43.690 19406 TRACE neutron.plugins.ml2.drivers.cisco.nexus.mech_cisco_nexus vlan_id, intf_type, nexus_port)
2015-06-22 17:44:43.690 19406 TRACE neutron.plugins.ml2.drivers.cisco.nexus.mech_cisco_nexus File "/usr/lib/python2.7/site-packages/neutron/plugins/ml2/drivers/cisco/nexus/nexus_network_driver.py", li
ne 325, in disable_vlan_on_trunk_int
2015-06-22 17:44:43.690 19406 TRACE neutron.plugins.ml2.drivers.cisco.nexus.mech_cisco_nexus self._edit_config(nexus_host, target='running', config=confstr)
2015-06-22 17:44:43.690 19406 TRACE neutron.plugins.ml2.drivers.cisco.nexus.mech_cisco_nexus File "/usr/lib/python2.7/site-packages/neutron/plugins/ml2/drivers/cisco/nexus/nexus_network_driver.py", li
ne 119, in _edit_config
2015-06-22 17:44:43.690 19406 TRACE neutron.plugins.ml2.drivers.cisco.nexus.mech_cisco_nexus exc=e)
2015-06-22 17:44:43.690 19406 TRACE neutron.plugins.ml2.drivers.cisco.nexus.mech_cisco_nexus NexusConfigFailed: Failed to configure Nexus switch: 10.86.7.59 XML:
2015-06-22 17:44:43.690 19406 TRACE neutron.plugins.ml2.drivers.cisco.nexus.mech_cisco_nexus <config xmlns:xc="urn:ietf:params:xml:ns:netconf:base:1.0">
2015-06-22 17:44:43.690 19406 TRACE neutron.plugins.ml2.drivers.cisco.nexus.mech_cisco_nexus <configure>
2015-06-22 17:44:43.690 19406 TRACE neutron.plugins.ml2.drivers.cisco.nexus.mech_cisco_nexus <__XML__MODE__exec_configure>
2015-06-22 17:44:43.690 19406 TRACE neutron.plugins.ml2.drivers.cisco.nexus.mech_cisco_nexus <interface>
2015-06-22 17:44:43.690 19406 TRACE neutron.plugins.ml2.drivers.cisco.nexus.mech_cisco_nexus <port-channel>
2015-06-22 17:44:43.690 19406 TRACE neutron.plugins.ml2.drivers.cisco.nexus.mech_cisco_nexus <interface>2</interface>
2015-06-22 17:44:43.690 19406 TRACE neutron.plugins.ml2.drivers.cisco.nexus.mech_cisco_nexus <__XML__MODE_if-ethernet-switch>
2015-06-22 17:44:43.690 19406 TRACE neutron.plugins.ml2.drivers.cisco.nexus.mech_cisco_nexus <switchport></switchport>
2015-06-22 17:44:43.690 19406 TRACE neutron.plugins.ml2.drivers.cisco.nexus.mech_cisco_nexus <switchport>
2015-06-22 17:44:43.690 19406 TRACE neutron.plugins.ml2.drivers.cisco.nexus.mech_cisco_nexus <trunk>
2015-06-22 17:44:43.690 19406 TRACE neutron.plugins.ml2.drivers.cisco.nexus.mech_cisco_nexus <allowed>
2015-06-22 17:44:43.690 19406 TRACE neutron.plugins.ml2.drivers.cisco.nexus.mech_cisco_nexus <vlan>
2015-06-22 17:44:43.690 19406 TRACE neutron.plugins.ml2.drivers.cisco.nexus.mech_cisco_nexus <remove>
2015-06-22 17:44:43.690 19406 TRACE neutron.plugins.ml2.drivers.cisco.nexus.mech_cisco_nexus <vlan>544</vlan>
2015-06-22 17:44:43.690 19406 TRACE neutron.plugins.ml2.drivers.cisco.nexus.mech_cisco_nexus </remove>
2015-06-22 17:44:43.690 19406 TRACE neutron.plugins.ml2.drivers.cisco.nexus.mech_cisco_nexus </vlan>
2015-06-22 17:44:43.690 19406 TRACE neutron.plugins.ml2.drivers.cisco.nexus.mech_cisco_nexus </allowed>
2015-06-22 17:44:43.690 19406 TRACE neutron.plugins.ml2.drivers.cisco.nexus.mech_cisco_nexus </trunk>
2015-06-22 17:44:43.690 19406 TRACE neutron.plugins.ml2.drivers.cisco.nexus.mech_cisco_nexus </switchport>
2015-06-22 17:44:43.690 19406 TRACE neutron.plugins.ml2.drivers.cisco.nexus.mech_cisco_nexus </__XML__MODE_if-ethernet-switch>
2015-06-22 17:44:43.690 19406 TRACE neutron.plugins.ml2.drivers.cisco.nexus.mech_cisco_nexus </port-channel>
2015-06-22 17:44:43.690 19406 TRACE neutron.plugins.ml2.drivers.cisco.nexus.mech_cisco_nexus </interface>
2015-06-22 17:44:43.690 19406 TRACE neutron.plugins.ml2.drivers.cisco.nexus.mech_cisco_nexus
2015-06-22 17:44:43.690 19406 TRACE neutron.plugins.ml2.drivers.cisco.nexus.mech_cisco_nexus </__XML__MODE__exec_configure>
2015-06-22 17:44:43.690 19406 TRACE neutron.plugins.ml2.drivers.cisco.nexus.mech_cisco_nexus </configure>
2015-06-22 17:44:43.690 19406 TRACE neutron.plugins.ml2.drivers.cisco.nexus.mech_cisco_nexus </config>
2015-06-22 17:44:43.690 19406 TRACE neutron.plugins.ml2.drivers.cisco.nexus.mech_cisco_nexus . Reason: .
2015-06-22 17:44:43.690 19406 TRACE neutron.plugins.ml2.drivers.cisco.nexus.mech_cisco_nexus
2015-06-22 17:44:43.691 19406 DEBUG neutron.plugins.ml2.drivers.cisco.nexus.nexus_db_v2 [req-a400cff5-5a5d-41b9-91b7-2f6eea07fbef None] get_port_vlan_switch_binding() called get_port_vlan_switch_binding
 /usr/lib/python2.7/site-packages/neutron/plugins/ml2/drivers/cisco/nexus/nexus_db_v2.py:107
2015-06-22 17:44:43.694 19406 DEBUG neutron.plugins.ml2.drivers.cisco.nexus.nexus_network_driver [req-a400cff5-5a5d-41b9-91b7-2f6eea07fbef None] NexusDriver edit config:
      <config xmlns:xc="urn:ietf:params:xml:ns:netconf:base:1.0">
        <configure>
          <__XML__MODE__exec_configure>
          <interface>
            <port-channel>
              <interface>2</interface>
              <__XML__MODE_if-ethernet-switch>
                <switchport></switchport>
                <switchport>
                  <trunk>
                    <allowed>
                      <vlan>
                        <remove>
                          <vlan>544</vlan>
                        </remove>
                      </vlan>
                    </allowed>
                  </trunk>
                </switchport>
              </__XML__MODE_if-ethernet-switch>
            </port-channel>
          </interface>

          </__XML__MODE__exec_configure>
        </configure>
      </config>
 _edit_config /usr/lib/python2.7/site-packages/neutron/plugins/ml2/drivers/cisco/nexus/nexus_network_driver.py:102

Tags: nexus cisco e-rel
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.