이 콘텐츠는 선택한 언어로 제공되지 않습니다.

Chapter 9. Networking


This chapter explains the OpenStack Networking configuration options.

9.1. Networking configuration options

The options and descriptions listed in this introduction are auto generated from the code in the Networking service project, which provides software-defined networking between VMs run in Compute. The list contains common options, while the subsections list the options for the various networking plug-ins.
Expand
Table 9.1. Description of common configuration options
Configuration option = Default value Description
[DEFAULT]
admin_password = None (StrOpt) Admin password.
admin_tenant_name = None (StrOpt) Admin tenant name.
admin_user = None (StrOpt) Admin username.
agent_down_time = 75 (IntOpt) Number of seconds required to flag the agent as down. Should be at least twice 'report_interval' to ensure the agent is permanently down.
api_workers = 0 (IntOpt) Number of separate API worker processes for service.
auth_ca_cert = None (StrOpt) Certificate Authority public key (CA cert) file for ssl.
auth_insecure = False (BoolOpt) Turn off verification of the certificate for ssl.
auth_region = None (StrOpt) Authentication region.
auth_strategy = keystone (StrOpt) The type of authentication to use.
auth_url = None (StrOpt) Authentication URL.
base_mac = fa:16:3e:00:00:00 (StrOpt) The base MAC address Neutron will use for VIFs.
bind_host = 0.0.0.0 (StrOpt) The host IP to bind to.
bind_port = 9696 (IntOpt) The port to bind to.
core_plugin = None (StrOpt) The core plugin neutron will use.
default_ipv4_subnet_pool = None (StrOpt) Default IPv4 subnet-pool to be used for automatic subnet CIDR allocation.
default_ipv6_subnet_pool = None (StrOpt) Default IPv6 subnet-pool to be used for automatic subnet CIDR allocation.
dhcp_agent_notification = True (BoolOpt) Allow the sending of resource operation notifications to DHCP agents.
dhcp_agents_per_network = 1 (IntOpt) Number of DHCP agents scheduled to host a network.
dhcp_broadcast_reply = False (BoolOpt) Use broadcasts in DHCP replies.
dhcp_confs = $state_path/dhcp (StrOpt) Location to store DHCP server config files.
dhcp_delete_namespaces = False (BoolOpt) Delete namespace after removing a dhcp server.
dhcp_domain = openstacklocal (StrOpt) Domain to use for building the hostnames.
dhcp_driver = neutron.agent.linux.dhcp.Dnsmasq (StrOpt) The driver used to manage the DHCP server.
dhcp_lease_duration = 86400 (IntOpt) DHCP lease duration (in seconds). Use -1 to configure dnsmasq for infinite lease times.
dhcp_load_type = networks (StrOpt) Represents the resource type whose load is being reported by the agent. This can be 'networks', 'subnets' or 'ports'. When specified (default is 'networks'), the server will extract the particular load sent as part of its agent configuration object from the agent report state, which is the number of resources being consumed. 'report_interval.dhcp_load_type' can be used in combination with 'network_scheduler_driver = neutron.scheduler.dhcp_agent_scheduler.WeightScheduler'. When the 'network_scheduler_driver' is 'WeightScheduler', 'dhcp_load_type' can be configured to represent the choice for the resource being balanced. For example: 'dhcp_load_type=networks'.
enable_services_on_agents_with_admin_state_down = False (BoolOpt) Enable services on an agent where 'admin_state_up' is 'False'. If this option is 'False', and the 'admin_state_up' of an agent is 'False', services on it will be disabled. Agents with 'admin_state_up' set to 'False' are not selected for automatic scheduling regardless of this option. However, manual scheduling to such agents is available if this option is 'True'.
endpoint_type = publicURL (StrOpt) Network service endpoint type to pull from the keystone catalog.
force_gateway_on_subnet = True (BoolOpt) Ensure the configured gateway is on a subnet. For IPv6, validate only if gateway is not a link local address. Deprecated, to be removed during the K release, at which point the check will be mandatory.
host = localhost (StrOpt) Hostname to be used by the neutron server, agents, and services running on this machine. All the agents and services running on this machine must use the same host value.
interface_driver = None (StrOpt) The driver used to manage the virtual interface.
ip_lib_force_root = False (BoolOpt) Force 'ip_lib' calls to use the root helper.
mac_generation_retries = 16 (IntOpt) Number of times neutron will retry MAC generation.
max_allowed_address_pair = 10 (IntOpt) Maximum number of allowed address pairs.
max_dns_nameservers = 5 (IntOpt) Maximum number of DNS nameservers.
max_fixed_ips_per_port = 5 (IntOpt) Maximum number of fixed IPs per port.
max_subnet_host_routes = 20 (IntOpt) Maximum number of host routes per subnet.
memcached_servers = None (ListOpt) Memcached servers or 'None' for in-process cache.
periodic_fuzzy_delay = 5 (IntOpt) Range of seconds to randomly delay when starting the periodic task scheduler. This reduces stampeding. (Disable by setting to 0)
periodic_interval = 40 (IntOpt) Seconds between running periodic tasks.
periodic_monitoring_interval = 5 (IntOpt) Periodic interval at which the plugin checks for the monitoring L2 gateway agent.
report_interval = 300 (IntOpt) Interval between two metering reports.
state_path = /var/lib/neutron (StrOpt) Location for storing neutron state files. This directory must be writable by the agent.
vlan_transparent = False (BoolOpt) If 'True', this allows plugins that support it to create VLAN transparent networks.
[AGENT]
check_child_processes_action = respawn (StrOpt) Action to be executed when a child process dies.
check_child_processes_interval = 60 (IntOpt) Interval between checks of child process liveness (seconds), use '0' to disable.
root_helper = sudo (StrOpt) Root helper application.
root_helper_daemon = None (StrOpt) Root helper daemon application to use when possible.
[PROXY]
admin_password = None (StrOpt) Admin password.
admin_tenant_name = None (StrOpt) Admin tenant name.
admin_user = None (StrOpt) Admin user.
auth_region = None (StrOpt) Authentication region.
auth_strategy = keystone (StrOpt) The type of authentication to use.
auth_url = None (StrOpt) Authentication URL.
[heleos]
admin_password = None (StrOpt) ESM admin password.
[keystone_authtoken]
memcached_servers = None (ListOpt) Optional. Specifies a list of memcached server(s) to use for caching. If left undefined, tokens will instead be cached in-process.

9.1.1. Networking plug-ins

OpenStack Networking introduces the concept of a plug-in, which is a back-end implementation of the OpenStack Networking API. A plug-in can use a variety of technologies to implement the logical API requests. Some OpenStack Networking plug-ins might use basic Linux VLANs and IP tables, while others might use more advanced technologies, such as L2-in-L3 tunneling or OpenFlow. These sections detail the configuration options for the various plug-ins.
Note
The following plugins have been removed in Kilo:
  • Ryu plugin. The Ryu team recommends that you migrate to the ML2 plugin with the ofagent mechanism driver. However, note that the functionality is not the same. There is no upgrade procedure currently available.
  • Mellanox plugin.

9.1.1.1. BigSwitch configuration options

Expand
Table 9.2. Description of BigSwitch configuration options
Configuration option = Default value Description
[NOVA]
node_override_vif_802.1qbg = (ListOpt) Nova compute nodes to manually set VIF type to 802.1qbg
node_override_vif_802.1qbh = (ListOpt) Nova compute nodes to manually set VIF type to 802.1qbh
node_override_vif_binding_failed = (ListOpt) Nova compute nodes to manually set VIF type to binding_failed
node_override_vif_bridge = (ListOpt) Nova compute nodes to manually set VIF type to bridge
node_override_vif_distributed = (ListOpt) Nova compute nodes to manually set VIF type to distributed
node_override_vif_dvs = (ListOpt) Nova compute nodes to manually set VIF type to dvs
node_override_vif_hostdev = (ListOpt) Nova compute nodes to manually set VIF type to hostdev
node_override_vif_hw_veb = (ListOpt) Nova compute nodes to manually set VIF type to hw_veb
node_override_vif_hyperv = (ListOpt) Nova compute nodes to manually set VIF type to hyperv
node_override_vif_ivs = (ListOpt) Nova compute nodes to manually set VIF type to ivs
node_override_vif_midonet = (ListOpt) Nova compute nodes to manually set VIF type to midonet
node_override_vif_mlnx_direct = (ListOpt) Nova compute nodes to manually set VIF type to mlnx_direct
node_override_vif_other = (ListOpt) Nova compute nodes to manually set VIF type to other
node_override_vif_ovs = (ListOpt) Nova compute nodes to manually set VIF type to ovs
node_override_vif_unbound = (ListOpt) Nova compute nodes to manually set VIF type to unbound
node_override_vif_vrouter = (ListOpt) Nova compute nodes to manually set VIF type to vrouter
vif_type = ivs (StrOpt) Virtual interface type to configure on Nova compute nodes
vif_types = unbound, binding_failed, ovs, ivs, bridge, 802.1qbg, 802.1qbh, hyperv, midonet, mlnx_direct, hostdev, hw_veb, dvs, other, distributed, vrouter (ListOpt) List of allowed vif_type values.
[RESTPROXY]
add_meta_server_route = True (BoolOpt) Flag to decide if a route to the metadata server should be injected into the VM
auto_sync_on_failure = True (BoolOpt) If neutron fails to create a resource because the backend controller doesn't know of a dependency, the plugin automatically triggers a full data synchronization to the controller.
cache_connections = True (BoolOpt) Re-use HTTP/HTTPS connections to the controller.
consistency_interval = 60 (IntOpt) Time between verifications that the backend controller database is consistent with Neutron. (0 to disable)
neutron_id = neutron-images (StrOpt) User defined identifier for this Neutron deployment
no_ssl_validation = False (BoolOpt) Disables SSL certificate validation for controllers
server_auth = None (StrOpt) The username and password for authenticating against the Big Switch or Floodlight controller.
server_ssl = True (BoolOpt) If True, Use SSL when connecting to the Big Switch or Floodlight controller.
server_timeout = 10 (IntOpt) Maximum number of seconds to wait for proxy request to connect and complete.
servers = localhost:8800 (ListOpt) A comma separated list of Big Switch or Floodlight servers and port numbers. The plugin proxies the requests to the Big Switch/Floodlight server, which performs the networking configuration. Only oneserver is needed per deployment, but you may wish todeploy multiple servers to support failover.
ssl_cert_directory = /etc/neutron/plugins/bigswitch/ssl (StrOpt) Directory containing ca_certs and host_certs certificate directories.
ssl_sticky = True (BoolOpt) Trust and store the first certificate received for each controller address and use it to validate future connections to that address.
sync_data = False (BoolOpt) Sync data on connect
thread_pool_size = 4 (IntOpt) Maximum number of threads to spawn to handle large volumes of port creations.
[RESTPROXYAGENT]
integration_bridge = br-int (StrOpt) Name of integration bridge on compute nodes used for security group insertion.
polling_interval = 5 (IntOpt) Seconds between agent checks for port changes
virtual_switch_type = ivs (StrOpt) Virtual switch type.
[ROUTER]
max_router_rules = 200 (IntOpt) Maximum number of router rules
tenant_default_router_rule = ['*:any:any:permit'] (MultiStrOpt) The default router rules installed in new tenant routers. Repeat the config option for each rule. Format is <tenant>:<source>:<destination>:<action> Use an * to specify default for all tenants.

9.1.1.2. Brocade configuration options

Expand
Table 9.3. Description of Brocade configuration options
Configuration option = Default value Description
[PHYSICAL_INTERFACE]
physical_interface = eth0 (StrOpt) The network interface to use when creating a port
[SWITCH]
address = (StrOpt) The address of the host to SSH to
ostype = NOS (StrOpt) Currently unused
password = (StrOpt) The SSH password to use
username = (StrOpt) The SSH username to use

9.1.1.3. Brocade MLX L3 plug-in

Configure switch names to be used as group names as described below
Expand
Table 9.4. Description of Brocade MLX L3 plug-in configuration options
Configuration option = Default value Description
[l3_brocade_mlx]
switch_names = (StrOpt) Switches connected to the compute nodes

9.1.1.4. Brocade Vyatta layer 3 plug-in

The Brocade Vyatta Layer 3 plug-in configures Vyatta vRouter. More information about the plug-in is available at: Brocade_Vyatta_L3_Plugin.
Use the following options to configure the Brocade Vyatta Layer 3 plug-in.
Expand
Table 9.5. Description of Brocade Vyatta L3 plug-in configuration options
Configuration option = Default value Description
[VROUTER]
flavor = 2 (StrOpt) Nova VM flavor for instances of Vyatta vRouter.
image_id = None (StrOpt) Nova image id for instances of Vyatta vRouter.
keystone_url = None (StrOpt) Keystone URL.
management_network_id = None (StrOpt) Vyatta vRouter management network id.
nova_poll_interval = 5 (IntOpt) Number of seconds between consecutive Nova queries when waiting for router instance status change.
nova_spawn_timeout = 300 (IntOpt) Number of seconds to wait for Nova to activate instance before setting resource to error state.
tenant_admin_name = None (StrOpt) Name of tenant admin user.
tenant_admin_password = None (StrOpt) Tenant admin password.
tenant_id = None (StrOpt) UUID of tenant that holds Vyatta vRouter instances.
vrouter_boot_timeout = 300 (IntOpt) Number of seconds to wait for Vyatta vRouter to boot before setting resource to error state.
vrouter_credentials = vyatta:vyatta (StrOpt) Vyatta vRouter login credentials
vrouter_poll_interval = 5 (IntOpt) Number of seconds between consecutive Vyatta vRouter queries when waiting for router instance boot.

9.1.1.5. CISCO configuration options

Expand
Table 9.6. Description of Cisco configuration options
Configuration option = Default value Description
[CISCO]
model_class = neutron.plugins.cisco.models.virt_phy_sw_v2.VirtualPhysicalSwitchModelV2 (StrOpt) Model Class
nexus_l3_enable = False (BoolOpt) Enable L3 support on the Nexus switches
provider_vlan_auto_create = True (BoolOpt) Provider VLANs are automatically created as needed on the Nexus switch
provider_vlan_auto_trunk = True (BoolOpt) Provider VLANs are automatically trunked as needed on the ports of the Nexus switch
provider_vlan_name_prefix = p- (StrOpt) VLAN Name prefix for provider vlans
svi_round_robin = False (BoolOpt) Distribute SVI interfaces over all switches
vlan_name_prefix = q- (StrOpt) VLAN Name prefix
[CISCO_N1K]
bridge_mappings = (StrOpt) N1K Bridge Mappings
default_network_profile = default_network_profile (StrOpt) N1K default network profile
default_policy_profile = service_profile (StrOpt) N1K default policy profile
enable_tunneling = True (BoolOpt) N1K Enable Tunneling
http_pool_size = 4 (IntOpt) Number of threads to use to make HTTP requests
http_timeout = 15 (IntOpt) N1K http timeout duration in seconds
integration_bridge = br-int (StrOpt) N1K Integration Bridge
network_node_policy_profile = dhcp_pp (StrOpt) N1K policy profile for network node
network_vlan_ranges = vlan:1:4095 (StrOpt) N1K Network VLAN Ranges
poll_duration = 60 (IntOpt) N1K Policy profile polling duration in seconds
restrict_network_profiles = True (BoolOpt) Restrict tenants from accessing network profiles belonging to some other tenant
restrict_policy_profiles = False (BoolOpt) Restrict the visibility of policy profiles to the tenants
tenant_network_type = local (StrOpt) N1K Tenant Network Type
tunnel_bridge = br-tun (StrOpt) N1K Tunnel Bridge
vxlan_id_ranges = 5000:10000 (StrOpt) N1K VXLAN ID Ranges
[cfg_agent]
device_connection_timeout = 30 (IntOpt) Time in seconds for connecting to a hosting device
hosting_device_dead_timeout = 300 (IntOpt) The time in seconds until a backlogged hosting device is presumed dead. This value should be set up high enough to recover from a period of connectivity loss or high load when the device may not be responding.
[general]
backlog_processing_interval = 10 (IntOpt) Time in seconds between renewed scheduling attempts of non-scheduled routers.
cfg_agent_down_time = 60 (IntOpt) Seconds of no status update until a cfg agent is considered down.
default_security_group = mgmt_sec_grp (StrOpt) Default security group applied on management port. Default value is mgmt_sec_grp.
ensure_nova_running = True (BoolOpt) Ensure that Nova is running before attempting to create any VM.
l3_admin_tenant = L3AdminTenant (StrOpt) Name of the L3 admin tenant.
management_network = osn_mgmt_nw (StrOpt) Name of management network for device configuration. Default value is osn_mgmt_nw
service_vm_config_path = /opt/stack/data/neutron/cisco/config_drive (StrOpt) Path to config drive files for service VM instances.
templates_path = /opt/stack/data/neutron/cisco/templates (StrOpt) Path to templates for hosting devices.
[hosting_devices]
csr1kv_booting_time = 420 (IntOpt) Booting time in seconds before a CSR1kv becomes operational.
csr1kv_cfgagent_router_driver = networking_cisco.plugins.cisco.cfg_agent.device_drivers.csr1kv.csr1kv_routing_driver.CSR1kvRoutingDriver (StrOpt) Config agent driver for CSR1kv.
csr1kv_device_driver = networking_cisco.plugins.cisco.l3.hosting_device_drivers.csr1kv_hd_driver.CSR1kvHostingDeviceDriver (StrOpt) Hosting device driver for CSR1kv.
csr1kv_flavor = 621 (StrOpt) UUID of Nova flavor for CSR1kv.
csr1kv_image = csr1kv_openstack_img (StrOpt) Name of Glance image for CSR1kv.
csr1kv_password = cisco (StrOpt) Password to use for CSR1kv configurations.
csr1kv_plugging_driver = networking_cisco.plugins.cisco.l3.plugging_drivers.n1kv_trunking_driver.N1kvTrunkingPlugDriver (StrOpt) Plugging driver for CSR1kv.
csr1kv_username = stack (StrOpt) Username to use for CSR1kv configurations.

9.1.1.6. CloudBase Hyper-V Agent configuration options

Expand
Table 9.7. Description of HyperV agent configuration options
Configuration option = Default value Description
[AGENT]
enable_metrics_collection = False (BoolOpt) Enables metrics collections for switch ports by using Hyper-V's metric APIs. Collected data can by retrieved by other apps and services, e.g.: Ceilometer. Requires Hyper-V / Windows Server 2012 and above
local_network_vswitch = private (StrOpt) Private vswitch name used for local networks
metrics_max_retries = 100 (IntOpt) Specifies the maximum number of retries to enable Hyper-V's port metrics collection. The agent will try to enable the feature once every polling_interval period for at most metrics_max_retries or until it succeedes.
physical_network_vswitch_mappings = (ListOpt) List of <physical_network>:<vswitch> where the physical networks can be expressed with wildcards, e.g.: ."*:external"
polling_interval = 2 (IntOpt) The number of seconds the agent will wait between polling for local device changes.
[hyperv]
force_hyperv_utils_v1 = False (BoolOpt) Force V1 WMI utility classes

9.1.1.7. Embrane configuration options

Expand
Table 9.8. Description of Embrane configuration options
Configuration option = Default value Description
[heleos]
admin_username = admin (StrOpt) ESM admin username.
async_requests = True (BoolOpt) Define if the requests have run asynchronously or not
dummy_utif_id = None (StrOpt) Dummy user traffic Security Zone id
esm_mgmt = None (StrOpt) ESM management root address
inband_id = None (StrOpt) In band Security Zone id
mgmt_id = None (StrOpt) Management Security Zone id
oob_id = None (StrOpt) Out of band Security Zone id
resource_pool_id = default (StrOpt) Shared resource pool id
router_image = None (StrOpt) Router image id (Embrane FW/VPN)

9.1.1.8. IBM SDN-VE configuration options

Expand
Table 9.9. Description of SDN-VE configuration options
Configuration option = Default value Description
[SDNVE]
base_url = /one/nb/v2/ (StrOpt) Base URL for SDN-VE controller REST API.
controller_ips = 127.0.0.1 (ListOpt) List of IP addresses of SDN-VE controller(s).
default_tenant_type = OVERLAY (StrOpt) Tenant type: OVERLAY (default) or OF.
format = json (StrOpt) SDN-VE request/response format.
info = sdnve_info_string (StrOpt) SDN-VE RPC subject.
integration_bridge = None (StrOpt) Integration bridge to use.
interface_mappings = (ListOpt) List of <physical_network_name>:<interface_name> mappings.
of_signature = SDNVE-OF (StrOpt) The string in tenant description that indicates the tenant is a OF tenant.
out_of_band = True (BoolOpt) Indicating if controller is out of band or not.
overlay_signature = SDNVE-OVERLAY (StrOpt) The string in tenant description that indicates the tenant is a OVERLAY tenant.
password = admin (StrOpt) SDN-VE administrator password.
port = 8443 (StrOpt) SDN-VE controller port number.
reset_bridge = True (BoolOpt) Whether to reset the integration bridge before use.
use_fake_controller = False (BoolOpt) Whether to use a fake controller.
userid = admin (StrOpt) SDN-VE administrator user ID.
[SDNVE_AGENT]
polling_interval = 2 (IntOpt) Agent polling interval if necessary.
rpc = True (BoolOpt) Whether to use rpc.

9.1.1.9. Layer 2 Gateway configuration options

Expand
Table 9.10. Description of Layer 2 Gateway configuration options
Configuration option = Default value Description
[DEFAULT]
default_device_name = Switch1 (StrOpt) default_device_name of the l2 gateway
default_l2_gw_service_uuid = None (StrOpt) Unique identifier of the NSX L2 Gateway service which will be used by default for network gateways
default_l3_gw_service_uuid = None (StrOpt) Unique identifier of the NSX L3 Gateway service which will be used for implementing routers and floating IPs
l2gw_callback_class = networking_l2gw.services.l2gateway.ovsdb.data.L2GatewayOVSDBCallbacks (StrOpt) L2 gateway plugin callback class where theRPCs from the agent are going to get invoked
quota_l2_gateway = 5 (IntOpt) Number of l2 gateways allowed per tenant, -1 for unlimited
[ovsdb]
l2_gw_agent_ca_cert_base_path = None (StrOpt) Trusted issuer CA cert
l2_gw_agent_cert_base_path = None (StrOpt) L2 gateway agent public certificate
l2_gw_agent_priv_key_base_path = None (StrOpt) L2 gateway agent private key
max_connection_retries = 10 (IntOpt) Maximum number of retries to open a socket with the OVSDB server
ovsdb_hosts = host1:127.0.0.1:6632 (StrOpt) OVSDB server name:host/IP:port
periodic_interval = 20 (IntOpt) Seconds between periodic task runs

9.1.1.10. Linux bridge Agent configuration options

Expand
Table 9.11. Description of Linux Bridge agent configuration options
Configuration option = Default value Description
[LINUX_BRIDGE]
physical_interface_mappings = (ListOpt) List of <physical_network>:<physical_interface>
[VLANS]
network_vlan_ranges = (ListOpt) List of <physical_network>:<vlan_min>:<vlan_max> or <physical_network>
tenant_network_type = local (StrOpt) Network type for tenant networks (local, vlan, or none)
[VXLAN]
enable_vxlan = True (BoolOpt) Enable VXLAN on the agent. Can be enabled when agent is managed by ml2 plugin using linuxbridge mechanism driver
l2_population = False (BoolOpt) Extension to use alongside ml2 plugin's l2population mechanism driver. It enables the plugin to populate VXLAN forwarding table.
local_ip = None (IPOpt) Local IP address of the VXLAN endpoints.
tos = None (IntOpt) TOS for vxlan interface protocol packets.
ttl = None (IntOpt) TTL for vxlan interface protocol packets.
vxlan_group = 224.0.0.1 (StrOpt) Multicast group for vxlan interface.

9.1.1.11. Meta Plug-in configuration options

The Meta Plug-in allows you to use multiple plug-ins at the same time.
Expand
Table 9.12. Description of meta configuration options
Configuration option = Default value Description
[META]
default_flavor = (StrOpt) Default flavor to use, when flavor:network is not specified at network creation.
default_l3_flavor = (StrOpt) Default L3 flavor to use, when flavor:router is not specified at router creation. Ignored if 'l3_plugin_list' is blank.
extension_map = (StrOpt) Comma separated list of method:flavor to select specific plugin for a method. This has priority over method search order based on 'plugin_list'.
l3_plugin_list = (StrOpt) Comma separated list of flavor:neutron_plugin for L3 service plugins to load. This is intended for specifying L2 plugins which support L3 functions. If you use a router service plugin, set this blank.
plugin_list = (StrOpt) Comma separated list of flavor:neutron_plugin for plugins to load. Extension method is searched in the list order and the first one is used.
rpc_flavor = (StrOpt) Specifies flavor for plugin to handle 'q-plugin' RPC requests.
supported_extension_aliases = (StrOpt) Comma separated list of supported extension aliases.

9.1.1.12. Modular Layer 2 (ml2) configuration options

The Modular Layer 2 (ml2) plug-in has two components: network types and mechanisms. You can configure these components separately. This section describes these configuration options.
Configure MTU for VXLAN tunnelling
Specific MTU configuration is necessary for VXLAN to function as expected:
  • One option is to increase the MTU value of the physical interface and physical switch fabric by at least 50 bytes. For example, increase the MTU value to 1550. This value enables an automatic 50-byte MTU difference between the physical interface (1500) and the VXLAN interface (automatically 1500-50 = 1450). An MTU value of 1450 causes issues when virtual machine taps are configured at an MTU value of 1500.
  • Another option is to decrease the virtual Ethernet devices' MTU. Set the network_device_mtu option to 1450 in the neutron.conf file, and set all guest virtual machines' MTU to the same value by using a DHCP option. For information about MTU settings, see the Networking Guide.
Expand
Table 9.13. Description of ML2 configuration options
Configuration option = Default value Description
[ml2]
extension_drivers = (ListOpt) An ordered list of extension driver entrypoints to be loaded from the neutron.ml2.extension_drivers namespace.
mechanism_drivers = (ListOpt) An ordered list of networking mechanism driver entrypoints to be loaded from the neutron.ml2.mechanism_drivers namespace.
path_mtu = 0 (IntOpt) The maximum permissible size of an unfragmented packet travelling from and to addresses where encapsulated Neutron traffic is sent. If <= 0, the path MTU is indeterminate.
physical_network_mtus = (ListOpt) A list of mappings of physical networks to MTU values. The format of the mapping is <physnet>:<mtu val>. This mapping allows specifying a physical network MTU value that differs from the default segment_mtu value.
segment_mtu = 0 (IntOpt) The maximum permissible size of an unfragmented packet travelling a L2 network segment. If <= 0, the segment MTU is indeterminate.
tenant_network_types = local (ListOpt) Ordered list of network_types to allocate as tenant networks.
type_drivers = local, flat, vlan, gre, vxlan (ListOpt) List of network type driver entrypoints to be loaded from the neutron.ml2.type_drivers namespace.
9.1.1.12.1. Modular Layer 2 (ml2) Flat Type configuration options
Expand
Table 9.14. Description of ML2 Flat mechanism driver configuration options
Configuration option = Default value Description
[ml2_type_flat]
flat_networks = (ListOpt) List of physical_network names with which flat networks can be created. Use * to allow flat networks with arbitrary physical_network names.
9.1.1.12.2. Modular Layer 2 (ml2) GRE Type configuration options
Expand
Table 9.15. Description of ML2 GRE configuration options
Configuration option = Default value Description
[ml2_type_gre]
tunnel_id_ranges = (ListOpt) Comma-separated list of <tun_min>:<tun_max> tuples enumerating ranges of GRE tunnel IDs that are available for tenant network allocation
9.1.1.12.3. Modular Layer 2 (ml2) VLAN Type configuration options
Expand
Table 9.16. Description of ML2 VLAN configuration options
Configuration option = Default value Description
[ml2_type_vlan]
network_vlan_ranges = (ListOpt) List of <physical_network>:<vlan_min>:<vlan_max> or <physical_network> specifying physical_network names usable for VLAN provider and tenant networks, as well as ranges of VLAN tags on each available for allocation to tenant networks.
9.1.1.12.4. Modular Layer 2 (ml2) VXLAN Type configuration options
Expand
Table 9.17. Description of ML2 VXLN configuration options
Configuration option = Default value Description
[ml2_type_nexus_vxlan]
mcast_ranges = (ListOpt) List of multicast groups to be used for global VNIDsin the format - a:b,c,e:f.
vni_ranges = (ListOpt) List of global VNID ranges in the format - a:b, c:d.Multiple ranges can be separated by a comma
[ml2_type_vxlan]
vni_ranges = (ListOpt) Comma-separated list of <vni_min>:<vni_max> tuples enumerating ranges of VXLAN VNI IDs that are available for tenant network allocation
vxlan_group = None (StrOpt) Multicast group for VXLAN. If unset, disables VXLAN multicast mode.
9.1.1.12.5. Modular Layer 2 (ml2) Arista Mechanism configuration options
Expand
Table 9.18. Description of ML2 Arista mechanism driver configuration options
Configuration option = Default value Description
[ml2_arista]
eapi_host = (StrOpt) Arista EOS IP address. This is required field. If not set, all communications to Arista EOS will fail.
eapi_password = (StrOpt) Password for Arista EOS. This is required field. If not set, all communications to Arista EOS will fail.
eapi_username = (StrOpt) Username for Arista EOS. This is required field. If not set, all communications to Arista EOS will fail.
region_name = RegionOne (StrOpt) Defines Region Name that is assigned to this OpenStack Controller. This is useful when multiple OpenStack/Neutron controllers are managing the same Arista HW clusters. Note that this name must match with the region name registered (or known) to keystone service. Authentication with Keysotne is performed by EOS. This is optional. If not set, a value of "RegionOne" is assumed.
sync_interval = 180 (IntOpt) Sync interval in seconds between Neutron plugin and EOS. This interval defines how often the synchronization is performed. This is an optional field. If not set, a value of 180 seconds is assumed.
use_fqdn = True (BoolOpt) Defines if hostnames are sent to Arista EOS as FQDNs ("node1.domain.com") or as short names ("node1"). This is optional. If not set, a value of "True" is assumed.
Expand
Table 9.19. Description of Arista layer-3 service plug-in configuration options
Configuration option = Default value Description
[l3_arista]
l3_sync_interval = 180 (IntOpt) Sync interval in seconds between L3 Service plugin and EOS. This interval defines how often the synchronization is performed. This is an optional field. If not set, a value of 180 seconds is assumed
mlag_config = False (BoolOpt) This flag is used indicate if Arista Switches are configured in MLAG mode. If yes, all L3 config is pushed to both the switches automatically. If this flag is set to True, ensure to specify IP addresses of both switches. This is optional. If not set, a value of "False" is assumed.
primary_l3_host = (StrOpt) Arista EOS IP address. This is required field. If not set, all communications to Arista EOS will fail
primary_l3_host_password = (StrOpt) Password for Arista EOS. This is required field. If not set, all communications to Arista EOS will fail
primary_l3_host_username = (StrOpt) Username for Arista EOS. This is required field. If not set, all communications to Arista EOS will fail
secondary_l3_host = (StrOpt) Arista EOS IP address for second Switch MLAGed with the first one. This an optional field, however, if mlag_config flag is set, then this is required. If not set, all communications to Arista EOS will fail
use_vrf = False (BoolOpt) A "True" value for this flag indicates to create a router in VRF. If not set, all routers are created in default VRF. This is optional. If not set, a value of "False" is assumed.
9.1.1.12.6. Modular Layer 2 (ml2) BigSwitch Mechanism configuration options
Expand
Table 9.20. Description of ML2 BigSwitch mechanism driver configuration options
Configuration option = Default value Description
[NOVA]
node_override_vif_802.1qbg = (ListOpt) Nova compute nodes to manually set VIF type to 802.1qbg
node_override_vif_802.1qbh = (ListOpt) Nova compute nodes to manually set VIF type to 802.1qbh
node_override_vif_binding_failed = (ListOpt) Nova compute nodes to manually set VIF type to binding_failed
node_override_vif_bridge = (ListOpt) Nova compute nodes to manually set VIF type to bridge
node_override_vif_distributed = (ListOpt) Nova compute nodes to manually set VIF type to distributed
node_override_vif_dvs = (ListOpt) Nova compute nodes to manually set VIF type to dvs
node_override_vif_hostdev = (ListOpt) Nova compute nodes to manually set VIF type to hostdev
node_override_vif_hw_veb = (ListOpt) Nova compute nodes to manually set VIF type to hw_veb
node_override_vif_hyperv = (ListOpt) Nova compute nodes to manually set VIF type to hyperv
node_override_vif_ivs = (ListOpt) Nova compute nodes to manually set VIF type to ivs
node_override_vif_midonet = (ListOpt) Nova compute nodes to manually set VIF type to midonet
node_override_vif_mlnx_direct = (ListOpt) Nova compute nodes to manually set VIF type to mlnx_direct
node_override_vif_other = (ListOpt) Nova compute nodes to manually set VIF type to other
node_override_vif_ovs = (ListOpt) Nova compute nodes to manually set VIF type to ovs
node_override_vif_unbound = (ListOpt) Nova compute nodes to manually set VIF type to unbound
node_override_vif_vrouter = (ListOpt) Nova compute nodes to manually set VIF type to vrouter
vif_type = ivs (StrOpt) Virtual interface type to configure on Nova compute nodes
vif_types = unbound, binding_failed, ovs, ivs, bridge, 802.1qbg, 802.1qbh, hyperv, midonet, mlnx_direct, hostdev, hw_veb, dvs, other, distributed, vrouter (ListOpt) List of allowed vif_type values.
[RESTPROXY]
add_meta_server_route = True (BoolOpt) Flag to decide if a route to the metadata server should be injected into the VM
auto_sync_on_failure = True (BoolOpt) If neutron fails to create a resource because the backend controller doesn't know of a dependency, the plugin automatically triggers a full data synchronization to the controller.
cache_connections = True (BoolOpt) Re-use HTTP/HTTPS connections to the controller.
consistency_interval = 60 (IntOpt) Time between verifications that the backend controller database is consistent with Neutron. (0 to disable)
neutron_id = neutron-images (StrOpt) User defined identifier for this Neutron deployment
no_ssl_validation = False (BoolOpt) Disables SSL certificate validation for controllers
server_auth = None (StrOpt) The username and password for authenticating against the Big Switch or Floodlight controller.
server_ssl = True (BoolOpt) If True, Use SSL when connecting to the Big Switch or Floodlight controller.
server_timeout = 10 (IntOpt) Maximum number of seconds to wait for proxy request to connect and complete.
servers = localhost:8800 (ListOpt) A comma separated list of Big Switch or Floodlight servers and port numbers. The plugin proxies the requests to the Big Switch/Floodlight server, which performs the networking configuration. Only oneserver is needed per deployment, but you may wish todeploy multiple servers to support failover.
ssl_cert_directory = /etc/neutron/plugins/bigswitch/ssl (StrOpt) Directory containing ca_certs and host_certs certificate directories.
ssl_sticky = True (BoolOpt) Trust and store the first certificate received for each controller address and use it to validate future connections to that address.
sync_data = False (BoolOpt) Sync data on connect
thread_pool_size = 4 (IntOpt) Maximum number of threads to spawn to handle large volumes of port creations.
[RESTPROXYAGENT]
integration_bridge = br-int (StrOpt) Name of integration bridge on compute nodes used for security group insertion.
polling_interval = 5 (IntOpt) Seconds between agent checks for port changes
virtual_switch_type = ivs (StrOpt) Virtual switch type.
[ROUTER]
max_router_rules = 200 (IntOpt) Maximum number of router rules
tenant_default_router_rule = ['*:any:any:permit'] (MultiStrOpt) The default router rules installed in new tenant routers. Repeat the config option for each rule. Format is <tenant>:<source>:<destination>:<action> Use an * to specify default for all tenants.
9.1.1.12.7. Modular Layer 2 (ml2) Brocade Mechanism configuration options
Expand
Table 9.21. Description of ML2 Brocade mechanism driver configuration options
Configuration option = Default value Description
[ml2_brocade]
address = (StrOpt) The address of the host to SSH to
ostype = NOS (StrOpt) OS Type of the switch
osversion = 4.0.0 (StrOpt) OS Version number
password = password (StrOpt) The SSH password to use
physical_networks = (StrOpt) Allowed physical networks
rbridge_id = 1 (StrOpt) Rbridge id of provider edge router(s)
username = admin (StrOpt) The SSH username to use
9.1.1.12.8. Modular Layer 3 (ml2) Brocade MLX ICX Mechanism configuration options
Configure switch names to be used as group names as described below
Expand
Table 9.22. Description of ML2 Brocade MLX ICX mechanism driver configuration options
Configuration option = Default value Description
[ml2_brocade_fi_ni]
switch_names = (StrOpt) Switches connected to the compute nodes
9.1.1.12.9. Modular Layer 2 (ml2) Cisco Mechanism configuration options
Expand
Table 9.23. Description of ML2 Cisco mechanism driver configuration options
Configuration option = Default value Description
[DEFAULT]
apic_system_id = openstack (StrOpt) Prefix for APIC domain/names/profiles created
[ml2_cisco]
host_key_checks = False (BoolOpt) Enable strict host key checks when connecting to Nexus switches
managed_physical_network = None (StrOpt) The physical network managed by the switches.
persistent_switch_config = False (BoolOpt) To make Nexus configuration persistent
provider_vlan_auto_create = True (BoolOpt) Provider VLANs are automatically created as needed on the Nexus switch
provider_vlan_auto_trunk = True (BoolOpt) Provider VLANs are automatically trunked as needed on the ports of the Nexus switch
provider_vlan_name_prefix = p- (StrOpt) VLAN Name prefix for provider vlans
svi_round_robin = False (BoolOpt) Distribute SVI interfaces over all switches
switch_heartbeat_time = 0 (IntOpt) Periodic time to check switch connection. (0=disabled)
switch_replay_count = 3 (IntOpt) Number of times to attempt config replay with switch.
vlan_name_prefix = q- (StrOpt) VLAN Name prefix
vxlan_global_config = False (BoolOpt) Create and delete Nexus switch VXLAN global settings; feature nv overlay, feature vn-segment-vlan-based, interface nve + source-interface loopback
[ml2_cisco_apic]
apic_agent_poll_interval = 2 (FloatOpt) Interval between agent poll for topology (in sec)
apic_agent_report_interval = 30 (FloatOpt) Interval between agent status updates (in sec)
apic_app_profile_name = ${apic_system_id}_app (StrOpt) Name for the app profile used for Openstack
apic_domain_name = ${apic_system_id} (StrOpt) Name for the domain created on APIC
apic_entity_profile = ${apic_system_id}_entity_profile (StrOpt) Name of the entity profile to be created
apic_function_profile = ${apic_system_id}_function_profile (StrOpt) Name of the function profile to be created
apic_host_uplink_ports = (ListOpt) The uplink ports to check for ACI connectivity
apic_hosts = (ListOpt) An ordered list of host names or IP addresses of the APIC controller(s).
apic_lacp_profile = ${apic_system_id}_lacp_profile (StrOpt) Name of the LACP profile to be created
apic_name_mapping = use_name (StrOpt) Name mapping strategy to use: use_uuid | use_name
apic_node_profile = ${apic_system_id}_node_profile (StrOpt) Name of the node profile to be created
apic_password = None (StrOpt) Password for the APIC controller
apic_sync_interval = 0 (IntOpt) Synchronization interval in seconds
apic_use_ssl = True (BoolOpt) Use SSL to connect to the APIC controller
apic_username = None (StrOpt) Username for the APIC controller
apic_vlan_ns_name = ${apic_system_id}_vlan_ns (StrOpt) Name for the vlan namespace to be used for Openstack
apic_vlan_range = 2:4093 (StrOpt) Range of VLAN's to be used for Openstack
apic_vpc_pairs = (ListOpt) The switch pairs for VPC connectivity
[ml2_cisco_n1kv]
default_policy_profile = default-pp (StrOpt) Cisco Nexus1000V default policy profile.
default_vlan_network_profile = default-vlan-np (StrOpt) Cisco Nexus1000V default network profile for VLAN networks.
default_vxlan_network_profile = default-vxlan-np (StrOpt) Cisco Nexus1000V default network profile for VXLAN networks.
http_pool_size = 4 (IntOpt) Number of threads to use to make HTTP requests.
http_timeout = 15 (IntOpt) HTTP timeout, in seconds, for connections to the Cisco Nexus1000V VSMs.
n1kv_vsm_ips = None (ListOpt) Comma Separated IP Addresses of the Cisco Nexus1000V VSMs.
password = None (StrOpt) Password for all configured Cisco Nexus1000V VSMs.
poll_duration = 60 (IntOpt) Cisco Nexus1000V policy profile polling duration in seconds.
restrict_policy_profiles = False (BoolOpt) Restrict the visibility of policy profiles to the tenants.
sync_interval = 300 (IntOpt) Time interval between consecutive neutron-VSM syncs.
username = None (StrOpt) Username for all configured Cisco Nexus1000V VSMs.
[ml2_cisco_ucsm]
supported_pci_devs = 1137:0071, 8086:10c9 (ListOpt) List of comma separated vendor_id:product_id of SR_IOV capable devices supported by this MD. This MD supports both VM-FEX and SR-IOV devices.
ucsm_host_list = None (ListOpt) List of comma separated Host:Service Profile tuples providing the Service Profile associated with each Host to be supported by this MD.
ucsm_ip = None (StrOpt) Cisco UCS Manager IP address. This is a required field to communicate with a Cisco UCS Manager.
ucsm_password = None (StrOpt) Password for UCS Manager. This is a required field to communicate with a Cisco UCS Manager.
ucsm_username = None (StrOpt) Username for UCS Manager. This is a required field to communicate with a Cisco UCS Manager.
9.1.1.12.10. Modular Layer 2 (ml2) Freescale SDN Mechanism configuration options
Expand
Table 9.24. Description of ML2 Freescale SDN mechanism driver configuration options
Configuration option = Default value Description
[ml2_fslsdn]
crd_api_insecure = False (BoolOpt) If set, ignore any SSL validation issues.
crd_auth_strategy = keystone (StrOpt) Auth strategy for connecting to neutron in admin context.
crd_auth_url = http://127.0.0.1:5000/v2.0/ (StrOpt) CRD Auth URL.
crd_ca_certificates_file = None (StrOpt) Location of ca certificates file to use for CRD client requests.
crd_password = password (StrOpt) CRD Service Password.
crd_region_name = RegionOne (StrOpt) Region name for connecting to CRD Service in admin context.
crd_tenant_name = service (StrOpt) CRD Tenant Name.
crd_url = http://127.0.0.1:9797 (StrOpt) URL for connecting to CRD service.
crd_url_timeout = 30 (IntOpt) Timeout value for connecting to CRD service in seconds.
crd_user_name = crd (StrOpt) CRD service Username.
9.1.1.12.11. Modular Layer 2 (ml2) OpenDaylight Mechanism configuration options
Expand
Table 9.25. Description of ML2 OpenDaylight mechanism driver configuration options
Configuration option = Default value Description
[ml2_odl]
password = None (StrOpt) HTTP password for authentication
session_timeout = 30 (IntOpt) Tomcat session timeout in minutes.
timeout = 10 (IntOpt) HTTP timeout in seconds.
url = None (StrOpt) HTTP URL of OpenDaylight REST interface.
username = None (StrOpt) HTTP username for authentication
Expand
Table 9.26. Description of ML2 ofagent mechanism driver configuration options
Configuration option = Default value Description
[AGENT]
dont_fragment = True (BoolOpt) Set or un-set the don't fragment (DF) bit on outgoing IP packet carrying GRE/VXLAN tunnel.
9.1.1.12.13. Modular Layer 2 (ml2) L2 Population Mechanism configuration options
Expand
Table 9.27. Description of ML2 L2 population configuration options
Configuration option = Default value Description
[l2pop]
agent_boot_time = 180 (IntOpt) Delay within which agent is expected to update existing ports whent it restarts
9.1.1.12.14. Modular Layer 2 (ml2) Tail-f NCS Mechanism configuration options
Expand
Table 9.28. Description of ML2 NCS mechanism driver configuration options
Configuration option = Default value Description
[ml2_ncs]
password = None (StrOpt) HTTP password for authentication
timeout = 10 (IntOpt) HTTP timeout in seconds.
url = None (StrOpt) HTTP URL of Tail-f NCS REST interface.
username = None (StrOpt) HTTP username for authentication
9.1.1.12.15. Modular Layer 2 (ml2) SR-IOV Mechanism configuration options
Expand
Table 9.29. Description of ML2 ML2 SR-IOV driver configuration options
Configuration option = Default value Description
[ml2_sriov]
agent_required = False (BoolOpt) SRIOV neutron agent is required for port binding
supported_pci_vendor_devs = 15b3:1004, 8086:10ca (ListOpt) Supported PCI vendor devices, defined by vendor_id:product_id according to the PCI ID Repository. Default enables support for Intel and Mellanox SR-IOV capable NICs

9.1.1.13. MidoNet configuration options

Expand
Table 9.30. Description of Midonet configuration options
Configuration option = Default value Description
[MIDONET]
cluster_ip = localhost (StrOpt) IP that the cluster service can be reached on
cluster_port = 8088 (StrOpt) Port that the cluster service can be reached on
tunnel_protocol = vxlan (StrOpt) Tunnel protocol used by Midonet
use_cluster = False (BoolOpt) Use the midonet plugin that interacts with the tasks-based architecture, rather than the plugin that interacts with the HTTP based architecture.

9.1.1.14. NEC configuration options

Expand
Table 9.31. Description of Nec configuration options
Configuration option = Default value Description
[OFC]
api_max_attempts = 3 (IntOpt) Maximum attempts per OFC API request. NEC plugin retries API request to OFC when OFC returns ServiceUnavailable (503). The value must be greater than 0.
cert_file = None (StrOpt) Location of certificate file.
driver = trema (StrOpt) Driver to use.
enable_packet_filter = True (BoolOpt) Enable packet filter.
host = 127.0.0.1 (StrOpt) Host to connect to.
insecure_ssl = False (BoolOpt) Disable SSL certificate verification.
key_file = None (StrOpt) Location of key file.
path_prefix = (StrOpt) Base URL of OFC REST API. It is prepended to each API request.
port = 8888 (StrOpt) Port to connect to.
support_packet_filter_on_ofc_router = True (BoolOpt) Support packet filter on OFC router interface.
use_ssl = False (BoolOpt) Use SSL to connect.
[PROVIDER]
default_router_provider = l3-agent (StrOpt) Default router provider to use.
router_providers = l3-agent, openflow (ListOpt) List of enabled router providers.
[fwaas]
driver = (StrOpt) Name of the FWaaS Driver

9.1.1.15. One Convergence NVSD configuration options

Expand
Table 9.32. Description of NVSD driver configuration options
Configuration option = Default value Description
[AGENT]
integration_bridge = br-int (StrOpt) integration bridge
[nvsd]
nvsd_ip = 127.0.0.1 (StrOpt) NVSD Controller IP address
nvsd_passwd = oc123 (StrOpt) NVSD Controller password
nvsd_port = 8082 (IntOpt) NVSD Controller Port number
nvsd_retries = 0 (IntOpt) Number of login retries to NVSD controller
nvsd_user = ocplugin (StrOpt) NVSD Controller username
request_timeout = 30 (IntOpt) NVSD controller REST API request timeout in seconds

9.1.1.16. OpenContrail configuration options

Expand
Table 9.33. Description of OpenContrail configuration options
Configuration option = Default value Description
[CONTRAIL]
api_server_ip = 127.0.0.1 (StrOpt) IP address to connect to opencontrail controller
api_server_port = 8082 (IntOpt) Port to connect to opencontrail controller

9.1.1.17. Open vSwitch Agent configuration options

Expand
Table 9.34. Description of Open vSwitch agent configuration options
Configuration option = Default value Description
[DEFAULT]
ovs_integration_bridge = br-int (StrOpt) Name of Open vSwitch bridge to use
ovs_use_veth = False (BoolOpt) Uses veth for an interface or not
ovs_vsctl_timeout = 10 (IntOpt) Timeout in seconds for ovs-vsctl commands
[AGENT]
arp_responder = False (BoolOpt) Enable local ARP responder if it is supported. Requires OVS 2.1 and ML2 l2population driver. Allows the switch (when supporting an overlay) to respond to an ARP request locally without performing a costly ARP broadcast into the overlay.
dont_fragment = True (BoolOpt) Set or un-set the don't fragment (DF) bit on outgoing IP packet carrying GRE/VXLAN tunnel.
enable_distributed_routing = False (BoolOpt) Make the l2 agent run in DVR mode.
l2_population = False (BoolOpt) Use ML2 l2population mechanism driver to learn remote MAC and IPs and improve tunnel scalability.
minimize_polling = True (BoolOpt) Minimize polling by monitoring ovsdb for interface changes.
ovsdb_monitor_respawn_interval = 30 (IntOpt) The number of seconds to wait before respawning the ovsdb monitor after losing communication with it.
prevent_arp_spoofing = False (BoolOpt) Enable suppression of ARP responses that don't match an IP address that belongs to the port from which they originate. Note: This prevents the VMs attached to this agent from spoofing, it doesn't protect them from other devices which have the capability to spoof (e.g. bare metal or VMs attached to agents without this flag set to True). Spoofing rules will not be added to any ports that have port security disabled. This requires a version of OVS that supports matching ARP headers.
quitting_rpc_timeout = 10 (IntOpt) Set new timeout in seconds for new rpc calls after agent receives SIGTERM. If value is set to 0, rpc timeout won't be changed
tunnel_types = (ListOpt) Network types supported by the agent (gre and/or vxlan).
veth_mtu = None (IntOpt) MTU size of veth interfaces
vxlan_udp_port = 4789 (IntOpt) The UDP port to use for VXLAN tunnels.
[CISCO_N1K]
local_ip = 10.0.0.3 (StrOpt) N1K Local IP
[OVS]
bridge_mappings = (ListOpt) List of <physical_network>:<bridge>. Deprecated for ofagent.
int_peer_patch_port = patch-tun (StrOpt) Peer patch port in integration bridge for tunnel bridge.
integration_bridge = br-int (StrOpt) Integration bridge to use.
local_ip = None (IPOpt) Local IP address of tunnel endpoint.
ovsdb_interface = vsctl (StrOpt) The interface for interacting with the OVSDB
tun_peer_patch_port = patch-int (StrOpt) Peer patch port in tunnel bridge for integration bridge.
tunnel_bridge = br-tun (StrOpt) Tunnel bridge to use.
use_veth_interconnection = False (BoolOpt) Use veths instead of patch ports to interconnect the integration bridge to physical bridges.

9.1.1.18. PLUMgrid configuration options

Expand
Table 9.35. Description of PLUMgrid configuration options
Configuration option = Default value Description
[plumgriddirector]
director_server = localhost (StrOpt) PLUMgrid Director server to connect to
director_server_port = 8080 (StrOpt) PLUMgrid Director server port to connect to
driver = networking_plumgrid.neutron.plugins.drivers.plumlib.Plumlib (StrOpt) PLUMgrid Driver
password = password (StrOpt) PLUMgrid Director admin password
servertimeout = 5 (IntOpt) PLUMgrid Director server timeout
username = username (StrOpt) PLUMgrid Director admin username

9.1.1.19. SR-IOV configuration options

Expand
Table 9.36. Description of SR-IOV configuration options
Configuration option = Default value Description
[SRIOV_NIC]
exclude_devices = (ListOpt) List of <network_device>:<excluded_devices> mapping network_device to the agent's node-specific list of virtual functions that should not be used for virtual networking. excluded_devices is a semicolon separated list of virtual functions (BDF format).to exclude from network_device. The network_device in the mapping should appear in the physical_device_mappings list.
physical_device_mappings = (ListOpt) List of <physical_network>:<network_device> mapping physical network names to the agent's node-specific physical network device of SR-IOV physical function to be used for VLAN networks. All physical networks listed in network_vlan_ranges on the server should have mappings to appropriate interfaces on each agent

9.1.2. Configure the Oslo RPC messaging system

OpenStack projects use an open standard for messaging middleware known as AMQP. This messaging middleware enables the OpenStack services that run on multiple servers to talk to each other. OpenStack Oslo RPC supports two implementations of AMQP: RabbitMQ and Qpid.

9.1.2.1. Configure RabbitMQ

OpenStack Oslo RPC uses RabbitMQ by default. Use these options to configure the RabbitMQ message system. The rpc_backend option is optional as long as RabbitMQ is the default messaging system. However, if it is included the configuration, you must set it to neutron.openstack.common.rpc.impl_kombu.
rpc_backend=neutron.openstack.common.rpc.impl_kombu
Copy to Clipboard Toggle word wrap
Use these options to configure the RabbitMQ messaging system. You can configure messaging communication for different installation scenarios, tune retries for RabbitMQ, and define the size of the RPC thread pool. To monitor notifications through RabbitMQ, you must set the notification_driver option to neutron.openstack.common.notifier.rpc_notifier in the neutron.conf file:
Expand
Table 9.37. Description of RabbitMQ configuration options
Configuration option = Default value Description
[oslo_messaging_rabbit]
amqp_auto_delete = False (BoolOpt) Auto-delete queues in AMQP.
amqp_durable_queues = False (BoolOpt) Use durable queues in AMQP.
fake_rabbit = False (BoolOpt) Deprecated, use rpc_backend=kombu+memory or rpc_backend=fake
heartbeat_rate = 2 (IntOpt) How often times during the heartbeat_timeout_threshold we check the heartbeat.
heartbeat_timeout_threshold = 0 (IntOpt) Number of seconds after which the Rabbit broker is considered down if heartbeat's keep-alive fails (0 disables the heartbeat, >0 enables it. Enabling heartbeats requires kombu>=3.0.7 and amqp>=1.4.0). EXPERIMENTAL
kombu_reconnect_delay = 1.0 (FloatOpt) How long to wait before reconnecting in response to an AMQP consumer cancel notification.
kombu_ssl_ca_certs = (StrOpt) SSL certification authority file (valid only if SSL enabled).
kombu_ssl_certfile = (StrOpt) SSL cert file (valid only if SSL enabled).
kombu_ssl_keyfile = (StrOpt) SSL key file (valid only if SSL enabled).
kombu_ssl_version = (StrOpt) SSL version to use (valid only if SSL enabled). Valid values are TLSv1 and SSLv23. SSLv2, SSLv3, TLSv1_1, and TLSv1_2 may be available on some distributions.
rabbit_ha_queues = False (BoolOpt) Use HA queues in RabbitMQ (x-ha-policy: all). If you change this option, you must wipe the RabbitMQ database.
rabbit_host = localhost (StrOpt) The RabbitMQ broker address where a single node is used.
rabbit_hosts = $rabbit_host:$rabbit_port (ListOpt) RabbitMQ HA cluster host:port pairs.
rabbit_login_method = AMQPLAIN (StrOpt) The RabbitMQ login method.
rabbit_max_retries = 0 (IntOpt) Maximum number of RabbitMQ connection retries. Default is 0 (infinite retry count).
rabbit_password = guest (StrOpt) The RabbitMQ password.
rabbit_port = 5672 (IntOpt) The RabbitMQ broker port where a single node is used.
rabbit_retry_backoff = 2 (IntOpt) How long to backoff for between retries when connecting to RabbitMQ.
rabbit_retry_interval = 1 (IntOpt) How frequently to retry connecting with RabbitMQ.
rabbit_use_ssl = False (BoolOpt) Connect over SSL for RabbitMQ.
rabbit_userid = guest (StrOpt) The RabbitMQ userid.
rabbit_virtual_host = / (StrOpt) The RabbitMQ virtual host.
rpc_conn_pool_size = 30 (IntOpt) Size of RPC connection pool.

9.1.2.2. Configure Qpid

Use these options to configure the Qpid messaging system for OpenStack Oslo RPC. Qpid is not the default messaging system, so you must enable it by setting the rpc_backend option in the neutron.conf file:
rpc_backend=neutron.openstack.common.rpc.impl_qpid
Copy to Clipboard Toggle word wrap
This critical option points the compute nodes to the Qpid broker (server). Set the qpid_hostname option to the host name where the broker runs in the neutron.conf file.
Note
The --qpid_hostname parameter accepts a host name or IP address value.
qpid_hostname=hostname.example.com
Copy to Clipboard Toggle word wrap
If the Qpid broker listens on a port other than the AMQP default of 5672, you must set the qpid_port option to that value:
qpid_port=12345
Copy to Clipboard Toggle word wrap
If you configure the Qpid broker to require authentication, you must add a user name and password to the configuration:
qpid_username=username
qpid_password=password
Copy to Clipboard Toggle word wrap
By default, TCP is used as the transport. To enable SSL, set the qpid_protocol option:
qpid_protocol=ssl
Copy to Clipboard Toggle word wrap
Use these additional options to configure the Qpid messaging driver for OpenStack Oslo RPC. These options are used infrequently.
Expand
Table 9.38. Description of Qpid configuration options
Configuration option = Default value Description
[oslo_messaging_qpid]
amqp_auto_delete = False (BoolOpt) Auto-delete queues in AMQP.
amqp_durable_queues = False (BoolOpt) Use durable queues in AMQP.
qpid_heartbeat = 60 (IntOpt) Seconds between connection keepalive heartbeats.
qpid_hostname = localhost (StrOpt) Qpid broker hostname.
qpid_hosts = $qpid_hostname:$qpid_port (ListOpt) Qpid HA cluster host:port pairs.
qpid_password = (StrOpt) Password for Qpid connection.
qpid_port = 5672 (IntOpt) Qpid broker port.
qpid_protocol = tcp (StrOpt) Transport to use, either 'tcp' or 'ssl'.
qpid_receiver_capacity = 1 (IntOpt) The number of prefetched messages held by receiver.
qpid_sasl_mechanisms = (StrOpt) Space separated list of SASL mechanisms to use for auth.
qpid_tcp_nodelay = True (BoolOpt) Whether to disable the Nagle algorithm.
qpid_topology_version = 1 (IntOpt) The qpid topology version to use. Version 1 is what was originally used by impl_qpid. Version 2 includes some backwards-incompatible changes that allow broker federation to work. Users should update to version 2 when they are able to take everything down, as it requires a clean break.
qpid_username = (StrOpt) Username for Qpid connection.
rpc_conn_pool_size = 30 (IntOpt) Size of RPC connection pool.

9.1.2.3. Configure messaging

Use these common options to configure the RabbitMQ, and Qpid messaging drivers:
Expand
Table 9.39. Description of RPC configuration options
Configuration option = Default value Description
[DEFAULT]
matchmaker_heartbeat_freq = 300 (IntOpt) Heartbeat frequency.
matchmaker_heartbeat_ttl = 600 (IntOpt) Heartbeat time-to-live.
rpc_backend = rabbit (StrOpt) The messaging driver to use, defaults to rabbit. Other drivers include qpid and zmq.
rpc_cast_timeout = 30 (IntOpt) Seconds to wait before a cast expires (TTL). Only supported by impl_zmq.
rpc_response_timeout = 60 (IntOpt) Seconds to wait for a response from a call.
rpc_thread_pool_size = 64 (IntOpt) Size of RPC thread pool.
rpc_workers = 0 (IntOpt) Number of RPC worker processes for service
[AGENT]
rpc_support_old_agents = False (BoolOpt) Enable server RPC compatibility with old agents
[oslo_concurrency]
disable_process_locking = False (BoolOpt) Enables or disables inter-process locks.
lock_path = None (StrOpt) Directory to use for lock files. For security, the specified directory should only be writable by the user running the processes that need locking. Defaults to environment variable OSLO_LOCK_PATH. If external locks are used, a lock path must be set.
[oslo_messaging_amqp]
allow_insecure_clients = False (BoolOpt) Accept clients using either SSL or plain TCP
broadcast_prefix = broadcast (StrOpt) address prefix used when broadcasting to all servers
container_name = None (StrOpt) Name for the AMQP container
group_request_prefix = unicast (StrOpt) address prefix when sending to any server in group
idle_timeout = 0 (IntOpt) Timeout for inactive connections (in seconds)
server_request_prefix = exclusive (StrOpt) address prefix used when sending to a specific server
ssl_ca_file = (StrOpt) CA certificate PEM file for verifing server certificate
ssl_cert_file = (StrOpt) Identifying certificate PEM file to present to clients
ssl_key_file = (StrOpt) Private key PEM file used to sign cert_file certificate
ssl_key_password = None (StrOpt) Password for decrypting ssl_key_file (if encrypted)
trace = False (BoolOpt) Debug: dump AMQP frames to stdout
Expand
Table 9.40. Description of Redis configuration options
Configuration option = Default value Description
[matchmaker_redis]
host = 127.0.0.1 (StrOpt) Host to locate redis.
password = None (StrOpt) Password for Redis server (optional).
port = 6379 (IntOpt) Use this port to connect to redis host.
[matchmaker_ring]
ringfile = /etc/oslo/matchmaker_ring.json (StrOpt) Matchmaker ring file (JSON).
Expand
Table 9.41. Description of AMQP configuration options
Configuration option = Default value Description
[DEFAULT]
control_exchange = neutron (StrOpt) The default exchange under which topics are scoped. May be overridden by an exchange name specified in the transport_url option.
notification_driver = [] (MultiStrOpt) Driver or drivers to handle sending notifications.
notification_topics = notifications (ListOpt) AMQP topic used for OpenStack notifications.
transport_url = None (StrOpt) A URL representing the messaging driver to use and its full configuration. If not set, we fall back to the rpc_backend option and driver specific configuration.

9.1.3. Agent

Use the following options to alter agent-related settings.
Expand
Table 9.42. Description of agent configuration options
Configuration option = Default value Description
[DEFAULT]
external_pids = $state_path/external/pids (StrOpt) Location to store child pid files
network_device_mtu = None (IntOpt) MTU setting for device.

9.1.4. API

Use the following options to alter API-related settings.
Expand
Table 9.43. Description of API configuration options
Configuration option = Default value Description
[DEFAULT]
allow_bulk = True (BoolOpt) Allow the usage of the bulk API
allow_pagination = False (BoolOpt) Allow the usage of the pagination
allow_sorting = False (BoolOpt) Allow the usage of the sorting
api_extensions_path = (StrOpt) The path for API extensions
api_paste_config = api-paste.ini (StrOpt) The API paste config file to use
backlog = 4096 (IntOpt) Number of backlog requests to configure the socket with
client_socket_timeout = 900 (IntOpt) Timeout for client connections socket operations. If an incoming connection is idle for this number of seconds it will be closed. A value of '0' means wait forever.
max_header_line = 16384 (IntOpt) Max header line to accommodate large tokens
pagination_max_limit = -1 (StrOpt) The maximum number of items returned in a single response, value was 'infinite' or negative integer means no limit
retry_until_window = 30 (IntOpt) Number of seconds to keep retrying to listen
run_external_periodic_tasks = True (BoolOpt) Some periodic tasks can be run in a separate process. Should we run them here?
service_plugins = (ListOpt) The service plugins Neutron will use
tcp_keepidle = 600 (IntOpt) Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not supported on OS X.
wsgi_keep_alive = True (BoolOpt) Determines if connections are allowed to be held open by clients after a request is fulfilled. A value of False will ensure that the socket connection will be explicitly closed once a response has been sent to the client.
[service_providers]
service_provider = [] (MultiStrOpt) Defines providers for advanced services using the format: <service_type>:<name>:<driver>[:default]

9.1.5. Token authentication

Use the following options to alter token authentication settings.
Expand
Table 9.44. Description of authorization token configuration options
Configuration option = Default value Description
[keystone_authtoken]
admin_password = None (StrOpt) Service user password.
admin_tenant_name = admin (StrOpt) Service tenant name.
admin_token = None (StrOpt) This option is deprecated and may be removed in a future release. Single shared secret with the Keystone configuration used for bootstrapping a Keystone installation, or otherwise bypassing the normal authentication process. This option should not be used, use `admin_user` and `admin_password` instead.
admin_user = None (StrOpt) Service username.
auth_admin_prefix = (StrOpt) Prefix to prepend at the beginning of the path. Deprecated, use identity_uri.
auth_host = 127.0.0.1 (StrOpt) Host providing the admin Identity API endpoint. Deprecated, use identity_uri.
auth_plugin = None (StrOpt) Name of the plugin to load
auth_port = 35357 (IntOpt) Port of the admin Identity API endpoint. Deprecated, use identity_uri.
auth_protocol = https (StrOpt) Protocol of the admin Identity API endpoint (http or https). Deprecated, use identity_uri.
auth_section = None (StrOpt) Config Section from which to load plugin specific options
auth_uri = None (StrOpt) Complete public Identity API endpoint.
auth_version = None (StrOpt) API version of the admin Identity API endpoint.
cache = None (StrOpt) Env key for the swift cache.
cafile = None (StrOpt) A PEM encoded Certificate Authority to use when verifying HTTPs connections. Defaults to system CAs.
certfile = None (StrOpt) Required if identity server requires client certificate
check_revocations_for_cached = False (BoolOpt) If true, the revocation list will be checked for cached tokens. This requires that PKI tokens are configured on the identity server.
delay_auth_decision = False (BoolOpt) Do not handle authorization requests within the middleware, but delegate the authorization decision to downstream WSGI components.
enforce_token_bind = permissive (StrOpt) Used to control the use and type of token binding. Can be set to: "disabled" to not check token binding. "permissive" (default) to validate binding information if the bind type is of a form known to the server and ignore it if not. "strict" like "permissive" but if the bind type is unknown the token will be rejected. "required" any form of token binding is needed to be allowed. Finally the name of a binding method that must be present in tokens.
hash_algorithms = md5 (ListOpt) Hash algorithms to use for hashing PKI tokens. This may be a single algorithm or multiple. The algorithms are those supported by Python standard hashlib.new(). The hashes will be tried in the order given, so put the preferred one first for performance. The result of the first hash will be stored in the cache. This will typically be set to multiple values only while migrating from a less secure algorithm to a more secure one. Once all the old tokens are expired this option should be set to a single value for better performance.
http_connect_timeout = None (IntOpt) Request timeout value for communicating with Identity API server.
http_request_max_retries = 3 (IntOpt) How many times are we trying to reconnect when communicating with Identity API Server.
identity_uri = None (StrOpt) Complete admin Identity API endpoint. This should specify the unversioned root endpoint e.g. https://localhost:35357/
include_service_catalog = True (BoolOpt) (Optional) Indicate whether to set the X-Service-Catalog header. If False, middleware will not ask for service catalog on token validation and will not set the X-Service-Catalog header.
insecure = False (BoolOpt) Verify HTTPS connections.
keyfile = None (StrOpt) Required if identity server requires client certificate
memcache_pool_conn_get_timeout = 10 (IntOpt) (Optional) Number of seconds that an operation will wait to get a memcache client connection from the pool.
memcache_pool_dead_retry = 300 (IntOpt) (Optional) Number of seconds memcached server is considered dead before it is tried again.
memcache_pool_maxsize = 10 (IntOpt) (Optional) Maximum total number of open connections to every memcached server.
memcache_pool_socket_timeout = 3 (IntOpt) (Optional) Socket timeout in seconds for communicating with a memcache server.
memcache_pool_unused_timeout = 60 (IntOpt) (Optional) Number of seconds a connection to memcached is held unused in the pool before it is closed.
memcache_secret_key = None (StrOpt) (Optional, mandatory if memcache_security_strategy is defined) This string is used for key derivation.
memcache_security_strategy = None (StrOpt) (Optional) If defined, indicate whether token data should be authenticated or authenticated and encrypted. Acceptable values are MAC or ENCRYPT. If MAC, token data is authenticated (with HMAC) in the cache. If ENCRYPT, token data is encrypted and authenticated in the cache. If the value is not one of these options or empty, auth_token will raise an exception on initialization.
memcache_use_advanced_pool = False (BoolOpt) (Optional) Use the advanced (eventlet safe) memcache client pool. The advanced pool will only work under python 2.x.
revocation_cache_time = 10 (IntOpt) Determines the frequency at which the list of revoked tokens is retrieved from the Identity service (in seconds). A high number of revocation events combined with a low cache duration may significantly reduce performance.
signing_dir = None (StrOpt) Directory used to cache files related to PKI tokens.
token_cache_time = 300 (IntOpt) In order to prevent excessive effort spent validating tokens, the middleware caches previously-seen tokens for a configurable duration (in seconds). Set to -1 to disable caching completely.

9.1.6. Compute

Use the following options to alter Compute-related settings.
Expand
Table 9.45. Description of Compute configuration options
Configuration option = Default value Description
[DEFAULT]
notify_nova_on_port_data_changes = True (BoolOpt) Send notification to nova when port data (fixed_ips/floatingip) changes so nova can update its cache.
notify_nova_on_port_status_changes = True (BoolOpt) Send notification to nova when port status changes
nova_admin_auth_url = http://localhost:5000/v2.0 (StrOpt) Authorization URL for connecting to nova in admin context. Deprecated in favour of an auth plugin in [nova].
nova_admin_password = None (StrOpt) Password for connection to nova in admin context. Deprecated in favour of an auth plugin in [nova].
nova_admin_tenant_id = None (StrOpt) The uuid of the admin nova tenant. Deprecated in favour of an auth plugin in [nova].
nova_admin_tenant_name = None (StrOpt) The name of the admin nova tenant. Deprecated in favour of an auth plugin in [nova].
nova_admin_username = None (StrOpt) Username for connecting to nova in admin context. Deprecated in favour of an auth plugin in [nova].
nova_client_cert = (StrOpt) Client certificate for nova metadata api server.
nova_client_priv_key = (StrOpt) Private key of client certificate.
nova_url = http://127.0.0.1:8774/v2 (StrOpt) URL for connection to nova. Deprecated in favour of an auth plugin in [nova].
send_events_interval = 2 (IntOpt) Number of seconds between sending events to nova if there are any events to send.

9.1.7. Database

Use the following options to alter Database-related settings.
Expand
Table 9.46. Description of database configuration options
Configuration option = Default value Description
[database]
backend = sqlalchemy (StrOpt) The back end to use for the database.
connection = None (StrOpt) The SQLAlchemy connection string to use to connect to the database.
connection_debug = 0 (IntOpt) Verbosity of SQL debugging information: 0=None, 100=Everything.
connection_trace = False (BoolOpt) Add Python stack traces to SQL as comment strings.
db_inc_retry_interval = True (BoolOpt) If True, increases the interval between retries of a database operation up to db_max_retry_interval.
db_max_retries = 20 (IntOpt) Maximum retries in case of connection error or deadlock error before error is raised. Set to -1 to specify an infinite retry count.
db_max_retry_interval = 10 (IntOpt) If db_inc_retry_interval is set, the maximum seconds between retries of a database operation.
db_retry_interval = 1 (IntOpt) Seconds between retries of a database transaction.
idle_timeout = 3600 (IntOpt) Timeout before idle SQL connections are reaped.
max_overflow = None (IntOpt) If set, use this value for max_overflow with SQLAlchemy.
max_pool_size = None (IntOpt) Maximum number of SQL connections to keep open in a pool.
max_retries = 10 (IntOpt) Maximum number of database connection retries during startup. Set to -1 to specify an infinite retry count.
min_pool_size = 1 (IntOpt) Minimum number of SQL connections to keep open in a pool.
mysql_sql_mode = TRADITIONAL (StrOpt) The SQL mode to be used for MySQL sessions. This option, including the default, overrides any server-set SQL mode. To use whatever SQL mode is set by the server configuration, set this to no value. Example: mysql_sql_mode=
pool_timeout = None (IntOpt) If set, use this value for pool_timeout with SQLAlchemy.
retry_interval = 10 (IntOpt) Interval between retries of opening a SQL connection.
slave_connection = None (StrOpt) The SQLAlchemy connection string to use to connect to the slave database.
sqlite_db = oslo.sqlite (StrOpt) The file name to use with SQLite.
sqlite_synchronous = True (BoolOpt) If True, SQLite uses synchronous mode.
use_db_reconnect = False (BoolOpt) Enable the experimental use of database reconnect on connection lost.

9.1.8. Logging

Use the following options to alter debug settings.
Expand
Table 9.47. Description of logging configuration options
Configuration option = Default value Description
[DEFAULT]
backdoor_port = None (StrOpt) Enable eventlet backdoor. Acceptable values are 0, <port>, and <start>:<end>, where 0 results in listening on a random tcp port number; <port> results in listening on the specified port number (and not enabling backdoor if that port is in use); and <start>:<end> results in listening on the smallest unused port number within the specified range of port numbers. The chosen port is displayed in the service's log file.

9.1.9. DHCP agent

Use the following options to alter Database-related settings.
Expand
Table 9.48. Description of DHCP agent configuration options
Configuration option = Default value Description
[DEFAULT]
advertise_mtu = False (BoolOpt) If True, effort is made to advertise MTU settings to VMs via network methods (DHCP and RA MTU options) when the network's preferred MTU is known.
dnsmasq_config_file = (StrOpt) Override the default dnsmasq settings with this file
dnsmasq_dns_servers = None (ListOpt) Comma-separated list of the DNS servers which will be used as forwarders.
dnsmasq_lease_max = 16777216 (IntOpt) Limit number of leases to prevent a denial-of-service.
enable_isolated_metadata = False (BoolOpt) Support Metadata requests on isolated networks.
enable_metadata_network = False (BoolOpt) Allows for serving metadata requests from a dedicated network. Requires enable_isolated_metadata = True
num_sync_threads = 4 (IntOpt) Number of threads to use during sync process.
resync_interval = 5 (IntOpt) Interval to resync.
use_namespaces = True (BoolOpt) Allow overlapping IP. This option is deprecated and will be removed in a future release.

9.1.10. Distributed virtual router

Use the following options to alter DVR-related settings.
Expand
Table 9.49. Description of DVR configuration options
Configuration option = Default value Description
[DEFAULT]
dvr_base_mac = fa:16:3f:00:00:00 (StrOpt) The base mac address used for unique DVR instances by Neutron
router_distributed = False (BoolOpt) System-wide flag to determine the type of router that tenants can create. Only admin can override.

9.1.11. Firewall-as-a-Service driver

Use the following options in the fwaas_driver.ini file for the FWaaS driver.
Expand
Table 9.50. Description of FwaaS configuration options
Configuration option = Default value Description
[fwaas]
enabled = False (BoolOpt) Enable FWaaS

9.1.12. IPv6 router advertisement

Use the following options to alter IPv6 RA settings.
Expand
Table 9.51. Description of IPv6 router advertisement configuration options
Configuration option = Default value Description
[DEFAULT]
ra_confs = $state_path/ra (StrOpt) Location to store IPv6 RA config files

9.1.13. L3 agent

Use the following options in the l3_agent.ini file for the L3 agent.
Expand
Table 9.52. Description of L3 agent configuration options
Configuration option = Default value Description
[DEFAULT]
agent_mode = legacy (StrOpt) The working mode for the agent. Allowed modes are: 'legacy' - this preserves the existing behavior where the L3 agent is deployed on a centralized networking node to provide L3 services like DNAT, and SNAT. Use this mode if you do not want to adopt DVR. 'dvr' - this mode enables DVR functionality and must be used for an L3 agent that runs on a compute host. 'dvr_snat' - this enables centralized SNAT support in conjunction with DVR. This mode must be used for an L3 agent running on a centralized node (or in single-host deployments, e.g. devstack)
allow_automatic_dhcp_failover = True (BoolOpt) Automatically remove networks from offline DHCP agents.
allow_automatic_l3agent_failover = False (BoolOpt) Automatically reschedule routers from offline L3 agents to online L3 agents.
enable_metadata_proxy = True (BoolOpt) Allow running metadata proxy.
external_ingress_mark = 0x2 (StrOpt) Iptables mangle mark used to mark ingress from external network
external_network_bridge = br-ex (StrOpt) Name of bridge used for external network traffic.
gateway_external_network_id = (StrOpt) UUID of external network for routers implemented by the agents.
ha_confs_path = $state_path/ha_confs (StrOpt) Location to store keepalived/conntrackd config files
ha_vrrp_advert_int = 2 (IntOpt) The advertisement interval in seconds
ha_vrrp_auth_password = None (StrOpt) VRRP authentication password
ha_vrrp_auth_type = PASS (StrOpt) VRRP authentication type
handle_internal_only_routers = True (BoolOpt) Agent should implement routers with no gateway
ipv6_gateway = (StrOpt) With IPv6, the network used for the external gateway does not need to have an associated subnet, since the automatically assigned link-local address (LLA) can be used. However, an IPv6 gateway address is needed for use as the next-hop for the default route. If no IPv6 gateway address is configured here, (and only then) the neutron router will be configured to get its default route from router advertisements (RAs) from the upstream router; in which case the upstream router must also be configured to send these RAs. The ipv6_gateway, when configured, should be the LLA of the interface on the upstream router. If a next-hop using a global unique address (GUA) is desired, it needs to be done via a subnet allocated to the network and not through this parameter.
l3_ha = False (BoolOpt) Enable HA mode for virtual routers.
l3_ha_net_cidr = 169.254.192.0/18 (StrOpt) Subnet used for the l3 HA admin network.
max_l3_agents_per_router = 3 (IntOpt) Maximum number of agents on which a router will be scheduled.
min_l3_agents_per_router = 2 (IntOpt) Minimum number of agents on which a router will be scheduled.
router_id = (StrOpt) If namespaces is disabled, the l3 agent can only configure a router that has the matching router ID.
send_arp_for_ha = 3 (IntOpt) Send this many gratuitous ARPs for HA setup, if less than or equal to 0, the feature is disabled
[AGENT]
comment_iptables_rules = True (BoolOpt) Add comments to iptables rules.
use_helper_for_ns_read = True (BoolOpt) Use the root helper to read the namespaces from the operating system.

9.1.14. Logging

Use the following options to alter logging settings.
Expand
Table 9.53. Description of logging configuration options
Configuration option = Default value Description
[DEFAULT]
debug = False (BoolOpt) Print debugging output (set logging level to DEBUG instead of default WARNING level).
default_log_levels = amqp=WARN, amqplib=WARN, boto=WARN, qpid=WARN, sqlalchemy=WARN, suds=INFO, oslo.messaging=INFO, iso8601=WARN, requests.packages.urllib3.connectionpool=WARN, urllib3.connectionpool=WARN, websocket=WARN, requests.packages.urllib3.util.retry=WARN, urllib3.util.retry=WARN, keystonemiddleware=WARN, routes.middleware=WARN, stevedore=WARN (ListOpt) List of logger=LEVEL pairs.
fatal_deprecations = False (BoolOpt) Enables or disables fatal status of deprecations.
instance_format = "[instance: %(uuid)s] " (StrOpt) The format for an instance that is passed with the log message.
instance_uuid_format = "[instance: %(uuid)s] " (StrOpt) The format for an instance UUID that is passed with the log message.
log_config_append = None (StrOpt) The name of a logging configuration file. This file is appended to any existing logging configuration files. For details about logging configuration files, see the Python logging module documentation.
log_date_format = %Y-%m-%d %H:%M:%S (StrOpt) Format string for %%(asctime)s in log records. Default: %(default)s .
log_dir = None (StrOpt) (Optional) The base directory used for relative --log-file paths.
log_file = None (StrOpt) (Optional) Name of log file to output to. If no default is set, logging will go to stdout.
log_format = None (StrOpt) DEPRECATED. A logging.Formatter log message format string which may use any of the available logging.LogRecord attributes. This option is deprecated. Please use logging_context_format_string and logging_default_format_string instead.
log_config_append = None (StrOpt) The name of a logging configuration file. This file is appended to any existing logging configuration files. For details about logging configuration files, see the Python logging module documentation.
log_date_format = %Y-%m-%d %H:%M:%S (StrOpt) Format string for %%(asctime)s in log records. Default: %(default)s .
log_dir = None (StrOpt) (Optional) The base directory used for relative --log-file paths.
log_file = None (StrOpt) (Optional) Name of log file to output to. If no default is set, logging will go to stdout.
log_format = None (StrOpt) DEPRECATED. A logging.Formatter log message format string which may use any of the available logging.LogRecord attributes. This option is deprecated. Please use logging_context_format_string and logging_default_format_string instead.
logging_context_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user_identity)s] %(instance)s%(message)s (StrOpt) Format string to use for log messages with context.
logging_debug_format_suffix = %(funcName)s %(pathname)s:%(lineno)d (StrOpt) Data to append to log format when level is DEBUG.
logging_default_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s (StrOpt) Format string to use for log messages without context.
logging_exception_prefix = %(asctime)s.%(msecs)03d %(process)d TRACE %(name)s %(instance)s (StrOpt) Prefix each line of exception output with this format.
publish_errors = False (BoolOpt) Enables or disables publication of error events.
syslog_log_facility = LOG_USER (StrOpt) Syslog facility to receive log lines.
syslog_log_facility = LOG_USER (StrOpt) Syslog facility to receive log lines.
use_syslog = False (BoolOpt) Use syslog for logging. Existing syslog format is DEPRECATED during I, and will change in J to honor RFC5424.
use_syslog_rfc_format = False (BoolOpt) (Optional) Enables or disables syslog rfc5424 format for logging. If enabled, prefixes the MSG part of the syslog message with APP-NAME (RFC5424). The format without the APP-NAME is deprecated in I, and will be removed in J.
use_ssl = False (BoolOpt) Enable SSL on the API server
use_stderr = True (BoolOpt) Log output to standard error.
use_syslog = False (BoolOpt) Use syslog for logging. Existing syslog format is DEPRECATED during I, and will change in J to honor RFC5424.
use_syslog_rfc_format = False (BoolOpt) (Optional) Enables or disables syslog rfc5424 format for logging. If enabled, prefixes the MSG part of the syslog message with APP-NAME (RFC5424). The format without the APP-NAME is deprecated in I, and will be removed in J.
verbose = False (BoolOpt) Print more verbose output (set logging level to INFO instead of default WARNING level).

9.1.15. Metadata Agent

Use the following options in the metadata_agent.ini file for the Metadata agent.
Expand
Table 9.54. Description of metadata configuration options
Configuration option = Default value Description
[DEFAULT]
meta_flavor_driver_mappings = None (StrOpt) Mapping between flavor and LinuxInterfaceDriver. It is specific to MetaInterfaceDriver used with admin_user, admin_password, admin_tenant_name, admin_url, auth_strategy, auth_region and endpoint_type.
metadata_access_mark = 0x1 (StrOpt) Iptables mangle mark used to mark metadata valid requests
metadata_backlog = 4096 (IntOpt) Number of backlog requests to configure the metadata server socket with
metadata_port = 9697 (IntOpt) TCP Port used by Neutron metadata namespace proxy.
metadata_proxy_group = (StrOpt) Group (gid or name) running metadata proxy after its initialization (if empty: agent effective group).
metadata_proxy_shared_secret = (StrOpt) Shared secret to sign instance-id request
metadata_proxy_socket = $state_path/metadata_proxy (StrOpt) Location for Metadata Proxy UNIX domain socket.
metadata_proxy_socket_mode = deduce (StrOpt) Metadata Proxy UNIX domain socket mode, 3 values allowed: 'deduce': deduce mode from metadata_proxy_user/group values, 'user': set metadata proxy socket mode to 0o644, to use when metadata_proxy_user is agent effective user or root, 'group': set metadata proxy socket mode to 0o664, to use when metadata_proxy_group is agent effective group or root, 'all': set metadata proxy socket mode to 0o666, to use otherwise.
metadata_proxy_user = (StrOpt) User (uid or name) running metadata proxy after its initialization (if empty: agent effective user).
metadata_proxy_watch_log = None (BoolOpt) Enable/Disable log watch by metadata proxy. It should be disabled when metadata_proxy_user/group is not allowed to read/write its log file and copytruncate logrotate option must be used if logrotate is enabled on metadata proxy log files. Option default value is deduced from metadata_proxy_user: watch log is enabled if metadata_proxy_user is agent effective user id/name.
metadata_workers = 2 (IntOpt) Number of separate worker processes for metadata server
nova_metadata_insecure = False (BoolOpt) Allow to perform insecure SSL (https) requests to nova metadata
nova_metadata_ip = 127.0.0.1 (StrOpt) IP address used by Nova metadata server.
nova_metadata_port = 8775 (IntOpt) TCP Port used by Nova metadata server.
nova_metadata_protocol = http (StrOpt) Protocol to access nova metadata, http or https
Note
Previously, neutron metadata agent connected to a neutron server via REST API using a neutron client. This is ineffective because keystone is then fully involved into the authentication process and gets overloaded.
The neutron metadata agent has been reworked to use RPC by default to connect to a server since Kilo release. This is a typical way of interacting between neutron server and its agents. If neutron server does not support metadata RPC then neutron client will be used.
Warning
Do not run the neutron-ns-metadata-proxy proxy namespace as root on a node with the L3 agent running. In OpenStack Kilo and newer, you can change the permissions of neutron-ns-metadata-proxy after the proxy installation using the metadata_proxy_user and metadata_proxy_group options.

9.1.16. Metering Agent

Use the following options in the metering_agent.ini file for the Metering agent.
Expand
Table 9.55. Description of metering agent configuration options
Configuration option = Default value Description
[DEFAULT]
driver = neutron.services.metering.drivers.noop.noop_driver.NoopMeteringDriver (StrOpt) Metering driver
measure_interval = 30 (IntOpt) Interval between two metering measures
[AGENT]
report_interval = 30 (FloatOpt) Seconds between nodes reporting state to server; should be less than agent_down_time, best if it is half or less than agent_down_time.

9.1.17. Nova

Use the following options in the neutron.conf file to change nova-related settings.
Expand
Table 9.56. Description of nova configuration options
Configuration option = Default value Description
[nova]
auth_plugin = None (StrOpt) Name of the plugin to load
auth_section = None (StrOpt) Config Section from which to load plugin specific options
cafile = None (StrOpt) PEM encoded Certificate Authority to use when verifying HTTPs connections.
certfile = None (StrOpt) PEM encoded client certificate cert file
insecure = False (BoolOpt) Verify HTTPS connections.
keyfile = None (StrOpt) PEM encoded client certificate key file
region_name = None (StrOpt) Name of nova region to use. Useful if keystone manages more than one region.
timeout = None (IntOpt) Timeout value for http requests

9.1.18. Policy

Use the following options in the neutron.conf file to change oslo middleware settings.
Expand
Table 9.57. Description of oslo_middleware configuration options
Configuration option = Default value Description
[oslo_middleware]
max_request_body_size = 114688 (IntOpt) The maximum body size for each request, in bytes.

9.1.19. Policy

Use the following options in the neutron.conf file to change policy settings.
Expand
Table 9.58. Description of policy configuration options
Configuration option = Default value Description
[DEFAULT]
allow_overlapping_ips = False (BoolOpt) Allow overlapping IP support in Neutron
policy_default_rule = default (StrOpt) Default rule. Enforced when a requested rule is not found.
policy_dirs = ['policy.d'] (MultiStrOpt) Directories where policy configuration files are stored. They can be relative to any directory in the search path defined by the config_dir option, or absolute paths. The file defined by policy_file must exist for these directories to be searched. Missing or empty directories are ignored.
policy_file = policy.json (StrOpt) The JSON file that defines policies.

9.1.20. Quotas

Use the following options in the neutron.conf file for the quota system.
Expand
Table 9.59. Description of quotas configuration options
Configuration option = Default value Description
[DEFAULT]
max_routes = 30 (IntOpt) Maximum number of routes
[QUOTAS]
default_quota = -1 (IntOpt) Default number of resource allowed per tenant. A negative value means unlimited.
quota_driver = neutron.db.quota_db.DbQuotaDriver (StrOpt) Default driver to use for quota checks
quota_floatingip = 50 (IntOpt) Number of floating IPs allowed per tenant. A negative value means unlimited.
quota_health_monitor = -1 (IntOpt) Number of health monitors allowed per tenant. A negative value means unlimited.
quota_items = network, subnet, port (ListOpt) Resource name(s) that are supported in quota features
quota_member = -1 (IntOpt) Number of pool members allowed per tenant. A negative value means unlimited.
quota_network = 10 (IntOpt) Number of networks allowed per tenant. A negative value means unlimited.
quota_network_gateway = 5 (IntOpt) Number of network gateways allowed per tenant, -1 for unlimited
quota_packet_filter = 100 (IntOpt) Number of packet_filters allowed per tenant, -1 for unlimited
quota_pool = 10 (IntOpt) Number of pools allowed per tenant. A negative value means unlimited.
quota_port = 50 (IntOpt) Number of ports allowed per tenant. A negative value means unlimited.
quota_router = 10 (IntOpt) Number of routers allowed per tenant. A negative value means unlimited.
quota_security_group = 10 (IntOpt) Number of security groups allowed per tenant. A negative value means unlimited.
quota_security_group_rule = 100 (IntOpt) Number of security rules allowed per tenant. A negative value means unlimited.
quota_subnet = 10 (IntOpt) Number of subnets allowed per tenant, A negative value means unlimited.
quota_vip = 10 (IntOpt) Number of vips allowed per tenant. A negative value means unlimited.

9.1.21. Scheduler

Use the following options in the neutron.conf file to change scheduler settings.
Expand
Table 9.60. Description of scheduler configuration options
Configuration option = Default value Description
[DEFAULT]
network_auto_schedule = True (BoolOpt) Allow auto scheduling networks to DHCP agent.
network_scheduler_driver = neutron.scheduler.dhcp_agent_scheduler.ChanceScheduler (StrOpt) Driver to use for scheduling network to DHCP agent
router_auto_schedule = True (BoolOpt) Allow auto scheduling of routers to L3 agent.
router_delete_namespaces = False (BoolOpt) Delete namespace after removing a router.
router_scheduler_driver = neutron.scheduler.l3_agent_scheduler.ChanceScheduler (StrOpt) Driver to use for scheduling router to a default L3 agent

9.1.22. Security Groups

Use the following options in the configuration file for your driver to change security group settings.
Expand
Table 9.61. Description of security groups configuration options
Configuration option = Default value Description
[SECURITYGROUP]
defer_apply = True (BoolOpt) Enable defer_apply on security bridge.
enable_ipset = True (BoolOpt) Use ipset to speed-up the iptables based security groups.
enable_security_group = True (BoolOpt) Controls whether the neutron security group API is enabled in the server. It should be false when using no security groups or using the nova security group API.
firewall_driver = None (StrOpt) Driver for security groups firewall in the L2 agent
security_bridge_mapping = br-sec (StrOpt) <security_bridge>:<phy_interface>
Note
Now Networking uses iptables to achieve security group functions. In L2 agent with enable_ipset option enabled, it makes use of IPset to improve security group's performance, as it represents a hash set which is insensitive to the number of elements.
When a port is created, L2 agent will add an additional IPset chain to it's iptables chain, if the security group that this port belongs to has rules between other security group, the member of that security group will be added to the ipset chain.
If a member of a security group is changed, it used to reload iptables rules which is expensive. However, when IPset option is enabled on L2 agent, it does not need to reload iptables if only members of security group were changed, it should just update an IPset.
Note
A single default security group has been introduced in order to avoid race conditions when creating a tenant's default security group. The race conditions are caused by the uniqueness check of a new security group name. A table default_security_group implements such a group. It has tenant_id field as a primary key and security_group_id, which is an identifier of a default security group. The migration that introduces this table has a sanity check that verifies if a default security group is not duplicated in any tenant.

9.1.23. SSL and Certification Authority

Use the following options in the neutron.conf file to enable SSL.
Expand
Table 9.62. Description of CA and SSL configuration options
Configuration option = Default value Description
[DEFAULT]
ssl_ca_file = None (StrOpt) CA certificate file to use to verify connecting clients
ssl_cert_file = None (StrOpt) Certificate file to use when starting the server securely
ssl_key_file = None (StrOpt) Private key file to use when starting the server securely
맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2025 Red Hat