Add configuration for ignorable exceptions from Cisco Nexus switch

Bug #1207139 reported by Dane LeBlanc
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
networking-cisco
New
Undecided
Unassigned

Bug Description

When the Cisco nexus plugin attempts certain configuration operations on the Nexus switch, the Nexus switch may return errors (depending on the version of Nexus HW and SW) which are benign. When these configuration errors are generated, the ncclient (NetConf Client) module, which is used by the Cisco plugin to communicate with the Nexus switch, reports these errors as a generic configuration exception, but with a string representation which includes a description of the specific error condition.

For example, some versions of the Nexus 3K will not allow state changes for what those switches consider the extended VLAN range (1006-4094), including these state-change config commands:
    active
    no shutdown
When a Nexus 3K reports errors for these state-change commands, the ncclient module will report a configuration failure exception which includes these strings in their string representations:
    "Can't modify state for extended"
    "Command is only allowed on VLAN"

The Cisco Nexus plugin currently looks for and ignores any config exceptions with the above error strings whenever the 'active' and 'no shutdown' commands are sent to the Nexus switch. Admittedly, it's a bit ugly for the plugin to be matching strings for this purpose, instead of specific exception types. However, the current ncclient module only gives us the description strings on which to match. The ncclient module is external to OpenStack, and it may not be possible to convince the ncclient community to modify their exception generation for something that may be considered Cisco-specific.

It's possible that these error strings could be modified in the future, or that there are other errors reported or other config operations which also need to be ignored. In order to handle this, we need to add configuration for the Cisco Nexus switch which will allow us to define which errors can be ignored and for which configuration operations. The default list for this configuration should be the above error conditions (for VLAN state-change commands). If an explicit list is provided in the plugin config, then that list should override the default list.

Tags: nexus cisco
Changed in neutron:
status: New → Triaged
importance: Undecided → Wishlist
tags: added: cisco
Henry Gessau (gessau)
tags: added: grizzly-backport-potential
tags: removed: grizzly-backport-potential
no longer affects: neutron
Henry Gessau (gessau)
tags: added: nexus
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.