
Neutron has support[1] to set the guaranteed MTU for networks and network segments so that this is exposed to plug-ins. In interest of supporting the use of plug-ins to configure network devices in the future this change adds MTU property on neutron networks. The new (optional) property 'mtu' in the network defenitions in 'network_data.yaml' is used to control the MTU settings. By default the mtu is '1500'. We already configure the MTU on the ctlplane neutron networks, this adds the MTU to composable networks. Also update the nic-config sample templates to include mtu settings. A heat value resource is added to nic-config templates to get the required minimum viable MTU value for bridges, bonds and member interfaces to ensure the MTU is large enough to allow the largest configured MTU to traverse the path. Closes-Bug: #1790537 Change-Id: I11e38f82eb9040f77412fe8ad200fcc48031e2f8
128 lines
5.7 KiB
YAML
128 lines
5.7 KiB
YAML
# List of networks, used for j2 templating of enabled networks
|
|
#
|
|
# Supported values:
|
|
#
|
|
# name: Name of the network (mandatory)
|
|
# name_lower: lowercase version of name used for filenames
|
|
# (optional, defaults to name.lower())
|
|
# enabled: Is the network enabled (optional, defaults to true)
|
|
# NOTE: False will use noop.yaml for unused legacy networks to support upgrades.
|
|
# vlan: vlan for the network (optional)
|
|
# vip: Enable creation of a virtual IP on this network
|
|
# ip_subnet: IP/CIDR, e.g. '192.168.24.0/24' or '2001:db8:fd00:1000::/64'
|
|
# (optional, may use parameter defaults instead)
|
|
# allocation_pools: IP range list e.g. [{'start':'10.0.0.4', 'end':'10.0.0.250'}]
|
|
# gateway_ip: gateway for the network (optional, may use parameter defaults)
|
|
# routes: Optional, list of networks that should be routed via network gateway.
|
|
# Example: [{'destination':'10.0.0.0/16', 'nexthop':'10.0.0.1'}]
|
|
# A single /16 supernet route could be used for 255 smaller /24 subnets.
|
|
# ipv6_subnet: Optional, sets default IPv6 subnet if IPv4 is already defined.
|
|
# ipv6_allocation_pools: Set default IPv6 allocation pools if IPv4 allocation pools
|
|
# are already defined.
|
|
# gateway_ipv6: Set an IPv6 gateway if IPv4 gateway already defined.
|
|
# ipv6: If ip_subnet not defined, this specifies that the network is IPv6-only.
|
|
# NOTE: IP-related values set parameter defaults in templates, may be overridden,
|
|
# either by operators, or e.g in environments/network-isolation-v6.yaml where we
|
|
# set some default IPv6 addresses.
|
|
# compat_name: for existing stack you may need to override the default
|
|
# transformation for the resource's name.
|
|
# mtu: Set the maximum transmission unit (MTU) that is guaranteed to pass
|
|
# through the data path of the segments in the network.
|
|
# (optional, defaults to 1500)
|
|
#
|
|
# Example:
|
|
# - name Example
|
|
# vip: false
|
|
# ip_subnet: '10.0.2.0/24'
|
|
# allocation_pools: [{'start': '10.0.2.4', 'end': '10.0.2.250'}]
|
|
# gateway_ip: '10.0.2.254'
|
|
#
|
|
# To support backward compatibility, two versions of the network definitions
|
|
# will be created, network/<network>.yaml and network/<network>_v6.yaml. Only
|
|
# one of these files may be used in the deployment at a time, since the
|
|
# parameters used for configuration are the same in both files. In the
|
|
# future, this behavior may be changed to create only one file for custom
|
|
# networks. You may specify IPv6 addresses for ip_subnet, allocation_pools,
|
|
# and gateway_ip if no IPv4 addresses are used for a custom network, or set
|
|
# ipv6: true, and the network/<network>.yaml file will be configured as IPv6.
|
|
#
|
|
# For configuring both IPv4 and IPv6 on the same interface, use two separate
|
|
# networks, and then assign both IPs to the same interface in a custom NIC
|
|
# configuration templates.
|
|
#
|
|
# The ordering of the networks below will determine the order in which NICs
|
|
# are assigned in the network/config/multiple-nics templates, beginning with
|
|
# NIC2, Control Plane is always NIC1.
|
|
|
|
- name: Storage
|
|
vip: true
|
|
vlan: 30
|
|
name_lower: storage
|
|
ip_subnet: '172.16.1.0/24'
|
|
allocation_pools: [{'start': '172.16.1.4', 'end': '172.16.1.250'}]
|
|
ipv6_subnet: 'fd00:fd00:fd00:3000::/64'
|
|
ipv6_allocation_pools: [{'start': 'fd00:fd00:fd00:3000::10', 'end': 'fd00:fd00:fd00:3000:ffff:ffff:ffff:fffe'}]
|
|
mtu: 1500
|
|
- name: StorageMgmt
|
|
name_lower: storage_mgmt
|
|
vip: true
|
|
vlan: 40
|
|
ip_subnet: '172.16.3.0/24'
|
|
allocation_pools: [{'start': '172.16.3.4', 'end': '172.16.3.250'}]
|
|
ipv6_subnet: 'fd00:fd00:fd00:4000::/64'
|
|
ipv6_allocation_pools: [{'start': 'fd00:fd00:fd00:4000::10', 'end': 'fd00:fd00:fd00:4000:ffff:ffff:ffff:fffe'}]
|
|
mtu: 1500
|
|
- name: InternalApi
|
|
name_lower: internal_api
|
|
vip: true
|
|
vlan: 20
|
|
ip_subnet: '172.16.2.0/24'
|
|
allocation_pools: [{'start': '172.16.2.4', 'end': '172.16.2.250'}]
|
|
ipv6_subnet: 'fd00:fd00:fd00:2000::/64'
|
|
ipv6_allocation_pools: [{'start': 'fd00:fd00:fd00:2000::10', 'end': 'fd00:fd00:fd00:2000:ffff:ffff:ffff:fffe'}]
|
|
mtu: 1500
|
|
- name: Tenant
|
|
vip: false # Tenant network does not use VIPs
|
|
name_lower: tenant
|
|
vlan: 50
|
|
ip_subnet: '172.16.0.0/24'
|
|
allocation_pools: [{'start': '172.16.0.4', 'end': '172.16.0.250'}]
|
|
# Note that tenant tunneling is only compatible with IPv4 addressing at this time.
|
|
ipv6_subnet: 'fd00:fd00:fd00:5000::/64'
|
|
ipv6_allocation_pools: [{'start': 'fd00:fd00:fd00:5000::10', 'end': 'fd00:fd00:fd00:5000:ffff:ffff:ffff:fffe'}]
|
|
mtu: 1500
|
|
- name: External
|
|
vip: true
|
|
name_lower: external
|
|
vlan: 10
|
|
ip_subnet: '10.0.0.0/24'
|
|
allocation_pools: [{'start': '10.0.0.4', 'end': '10.0.0.250'}]
|
|
gateway_ip: '10.0.0.1'
|
|
ipv6_subnet: '2001:db8:fd00:1000::/64'
|
|
ipv6_allocation_pools: [{'start': '2001:db8:fd00:1000::10', 'end': '2001:db8:fd00:1000:ffff:ffff:ffff:fffe'}]
|
|
gateway_ipv6: '2001:db8:fd00:1000::1'
|
|
mtu: 1500
|
|
- name: Management
|
|
# Management network is enabled by default for backwards-compatibility, but
|
|
# is not included in any roles by default. Add to role definitions to use.
|
|
enabled: true
|
|
vip: false # Management network does not use VIPs
|
|
name_lower: management
|
|
vlan: 60
|
|
ip_subnet: '10.0.1.0/24'
|
|
allocation_pools: [{'start': '10.0.1.4', 'end': '10.0.1.250'}]
|
|
gateway_ip: '10.0.1.1'
|
|
gateway_ipv6: 'fd00:fd00:fd00:6000::1'
|
|
ipv6_subnet: 'fd00:fd00:fd00:6000::/64'
|
|
ipv6_allocation_pools: [{'start': 'fd00:fd00:fd00:6000::10', 'end': 'fd00:fd00:fd00:6000:ffff:ffff:ffff:fffe'}]
|
|
mtu: 1500
|
|
- name: StorageNFS
|
|
enabled: true
|
|
vip: true
|
|
name_lower: storage_nfs
|
|
vlan: 70
|
|
ip_subnet: '172.16.4.0/24'
|
|
allocation_pools: [{'start': '172.16.4.4', 'end': '172.16.4.250'}]
|
|
ipv6_subnet: 'fd00:fd00:fd00:7000::/64'
|
|
ipv6_allocation_pools: [{'start': 'fd00:fd00:fd00:7000::10', 'end': 'fd00:fd00:fd00:7000:ffff:ffff:ffff:fffe'}]
|
|
mtu: 1500 |