1c3864fb8a
Fixes bug 1234826 This fix adds a "nexus_l3_enable" configuration boolean for the Cisco Nexus plugin. When this config boolean is set to False (default), then the Nexus switches are only used for L2 switching/segmentation, and layer 3 functionality is deferred to the OVS subplugin / network control node. If this config boolean is set to True, layer 3 functionality, e.g. switch virtual interfaces, are supported on the Nexus switches. (Note that layer 3 functionality is not supported on all versions/models Nexus switches.) Some other things addressed with this fix: - The l3_port_check keyword argument which is optionally passed to the Cisco plugin's delete_port method was not being forwarded on to the OVS (sub) plugin. This keyword argument needs to be forwarded to OVS e.g. when the delete_port is being done in the context of a router interface delete (whereby l3_port_check==False). - UT test cases are added for new "nexus_l3_enable" config, which exercise router interface add/delete. - The Cisco test_network_plugin.py module is refactored/reorganized in order to cleanly add a new router interface test class. - The test_model_update_port_rollback test case was yielding a false positive result (device_owner was not being passed to self.port). Change-Id: I994b2b82769ea5e10e50dbe3a223d1518e99f714
135 lines
4.6 KiB
INI
135 lines
4.6 KiB
INI
[cisco_plugins]
|
|
|
|
# (StrOpt) Period-separated module path to the plugin class to use for
|
|
# the Cisco Nexus switches.
|
|
#
|
|
# nexus_plugin = neutron.plugins.cisco.nexus.cisco_nexus_plugin_v2.NexusPlugin
|
|
|
|
# (StrOpt) Period-separated module path to the plugin class to use for
|
|
# the virtual switches on compute nodes.
|
|
#
|
|
# vswitch_plugin = neutron.plugins.openvswitch.ovs_neutron_plugin.OVSNeutronPluginV2
|
|
|
|
|
|
[cisco]
|
|
|
|
# (StrOpt) A short prefix to prepend to the VLAN number when creating a
|
|
# VLAN interface. For example, if an interface is being created for
|
|
# VLAN 2001 it will be named 'q-2001' using the default prefix.
|
|
#
|
|
# vlan_name_prefix = q-
|
|
# Example: vlan_name_prefix = vnet-
|
|
|
|
# (StrOpt) A short prefix to prepend to the VLAN number when creating a
|
|
# provider VLAN interface. For example, if an interface is being created
|
|
# for provider VLAN 3003 it will be named 'p-3003' using the default prefix.
|
|
#
|
|
# provider_vlan_name_prefix = p-
|
|
# Example: provider_vlan_name_prefix = PV-
|
|
|
|
# (BoolOpt) A flag indicating whether Openstack networking should manage the
|
|
# creation and removal of VLAN interfaces for provider networks on the Nexus
|
|
# switches. If the flag is set to False then Openstack will not create or
|
|
# remove VLAN interfaces for provider networks, and the administrator needs
|
|
# to manage these interfaces manually or by external orchestration.
|
|
#
|
|
# provider_vlan_auto_create = True
|
|
|
|
# (BoolOpt) A flag indicating whether Openstack networking should manage
|
|
# the adding and removing of provider VLANs from trunk ports on the Nexus
|
|
# switches. If the flag is set to False then Openstack will not add or
|
|
# remove provider VLANs from trunk ports, and the administrator needs to
|
|
# manage these operations manually or by external orchestration.
|
|
#
|
|
# provider_vlan_auto_trunk = True
|
|
|
|
# (StrOpt) Period-separated module path to the model class to use for
|
|
# the Cisco neutron plugin.
|
|
#
|
|
# model_class = neutron.plugins.cisco.models.virt_phy_sw_v2.VirtualPhysicalSwitchModelV2
|
|
|
|
# (StrOpt) Period-separated module path to the driver class to use for
|
|
# the Cisco Nexus switches.
|
|
#
|
|
# If no value is configured, a fake driver will be used.
|
|
# nexus_driver = neutron.plugins.cisco.test.nexus.fake_nexus_driver.CiscoNEXUSFakeDriver
|
|
# With real hardware, use the CiscoNEXUSDriver class:
|
|
# nexus_driver = neutron.plugins.cisco.nexus.cisco_nexus_network_driver_v2.CiscoNEXUSDriver
|
|
|
|
# (BoolOpt) A flag to enable Layer 3 support on the Nexus switches.
|
|
# Note: This feature is not supported on all models/versions of Cisco
|
|
# Nexus switches. To use this feature, all of the Nexus switches in the
|
|
# deployment must support it.
|
|
# nexus_l3_enable = False
|
|
|
|
# (BoolOpt) A flag to enable round robin scheduling of routers for SVI.
|
|
# svi_round_robin = False
|
|
|
|
# Cisco Nexus Switch configurations.
|
|
# Each switch to be managed by Openstack Neutron must be configured here.
|
|
#
|
|
# Cisco Nexus Switch Format.
|
|
# [NEXUS_SWITCH:<IP address of switch>]
|
|
# <hostname>=<port> (1)
|
|
# ssh_port=<ssh port> (2)
|
|
# username=<credential username> (3)
|
|
# password=<credential password> (4)
|
|
#
|
|
# (1) For each host connected to a port on the switch, specify the hostname
|
|
# and the Nexus physical port (interface) it is connected to.
|
|
# (2) The TCP port for connecting via SSH to manage the switch. This is
|
|
# port number 22 unless the switch has been configured otherwise.
|
|
# (3) The username for logging into the switch to manage it.
|
|
# (4) The password for logging into the switch to manage it.
|
|
#
|
|
# Example:
|
|
# [NEXUS_SWITCH:1.1.1.1]
|
|
# compute1=1/1
|
|
# compute2=1/2
|
|
# ssh_port=22
|
|
# username=admin
|
|
# password=mySecretPassword
|
|
|
|
#
|
|
# N1KV Format.
|
|
# [N1KV:<IP address of VSM>]
|
|
# username=<credential username>
|
|
# password=<credential password>
|
|
#
|
|
# Example:
|
|
# [N1KV:2.2.2.2]
|
|
# username=admin
|
|
# password=mySecretPassword
|
|
|
|
[cisco_n1k]
|
|
|
|
# (StrOpt) Specify the name of the integration bridge to which the VIFs are
|
|
# attached.
|
|
#
|
|
# integration_bridge = br-int
|
|
|
|
# (StrOpt) Name of the policy profile to be associated with a port when no
|
|
# policy profile is specified during port creates.
|
|
#
|
|
# default_policy_profile =
|
|
# Example: default_policy_profile = service_profile
|
|
|
|
# (StrOpt) Name of the policy profile to be associated with a port owned by
|
|
# network node (dhcp, router).
|
|
#
|
|
# network_node_policy_profile =
|
|
# Example: network_node_policy_profile = dhcp_pp
|
|
|
|
# (StrOpt) Name of the network profile to be associated with a network when no
|
|
# network profile is specified during network creates. Admin should pre-create
|
|
# a network profile with this name.
|
|
#
|
|
# default_network_profile =
|
|
# Example: default_network_profile = network_pool
|
|
|
|
# (StrOpt) Time in seconds for which the plugin polls the VSM for updates in
|
|
# policy profiles.
|
|
#
|
|
# poll_duration =
|
|
# Example: poll_duration = 180
|