From 8bc7bd15dcb170f3c37dfe0358dcdf7f9189b2ba Mon Sep 17 00:00:00 2001 From: Feng Pan Date: Thu, 28 Jun 2018 23:48:05 -0400 Subject: Add tenant vlan support Introduces tenant vlan support through configuration of network settings file. JIRA: APEX-272 Change-Id: Ie8e20a92ca4ebb9e0de4c53b5e03856d19ff660c Signed-off-by: Feng Pan --- config/network/network_settings.yaml | 6 + config/network/network_settings_csit.yaml | 6 + config/network/network_settings_tenant_vlan.yaml | 333 +++++++++++++++++++++++ config/network/network_settings_v6.yaml | 6 + 4 files changed, 351 insertions(+) create mode 100644 config/network/network_settings_tenant_vlan.yaml (limited to 'config/network') diff --git a/config/network/network_settings.yaml b/config/network/network_settings.yaml index 4c3b63a2..fee6b500 100644 --- a/config/network/network_settings.yaml +++ b/config/network/network_settings.yaml @@ -116,6 +116,12 @@ networks: mtu: 1500 # Tenant network Overlay segmentation ID range: # VNI, VLAN-ID, etc. + # VLAN config should follow the pattern of neutron ml2 network_vlan_ranges + # allowed patterns are or + # :: + # Note that for VLAN config, physnet 'datacentre:1:1000' is used for + # external networks by default and will be automatically added to + # Neutron config if the range specified here does not include datacentre. overlay_id_range: 2,65535 # Tenant network segmentation type: diff --git a/config/network/network_settings_csit.yaml b/config/network/network_settings_csit.yaml index 8eec0f65..75271140 100644 --- a/config/network/network_settings_csit.yaml +++ b/config/network/network_settings_csit.yaml @@ -116,6 +116,12 @@ networks: mtu: 1500 # Tenant network Overlay segmentation ID range: # VNI, VLAN-ID, etc. + # VLAN config should follow the pattern of neutron ml2 network_vlan_ranges + # allowed patterns are or + # :: + # Note that for VLAN config, physnet 'datacentre:1:1000' is used for + # external networks by default and will be automatically added to + # Neutron config if the range specified here does not include datacentre. overlay_id_range: 2,65535 # Tenant network segmentation type: diff --git a/config/network/network_settings_tenant_vlan.yaml b/config/network/network_settings_tenant_vlan.yaml new file mode 100644 index 00000000..e1f009fa --- /dev/null +++ b/config/network/network_settings_tenant_vlan.yaml @@ -0,0 +1,333 @@ +--- +# This configuration file defines Network Environment for a +# Baremetal Deployment of OPNFV. It contains default values +# for 5 following networks: +# +# - admin +# - tenant* +# - external* +# - storage* +# - api* +# *) optional networks +# +# Optional networks will be consolidated with the admin network +# if not explicitly configured. +# +# See short description of the networks in the comments below. +# +# "admin" is the short name for Control Plane Network. +# This network should be IPv4 even it is an IPv6 deployment +# IPv6 does not have PXE boot support. +# During OPNFV deployment it is used for node provisioning which will require +# PXE booting as well as running a DHCP server on this network. Be sure to +# disable any other DHCP/TFTP server on this network. +# +# "tenant" is the network used for tenant traffic. +# +# "external" is the network which should have internet or external +# connectivity. External OpenStack networks will be configured to egress this +# network. There can be multiple external networks, but only one assigned as +# "public" which OpenStack public API's will register. +# +# "storage" is the network for storage I/O. +# +# "api" is an optional network for splitting out OpenStack service API +# communication. This should be used for IPv6 deployments. + + +# Meta data for the network configuration +network-config-metadata: + title: LF-POD-1 Network config + version: 0.1 + created: Mon Dec 28 2015 + comment: None + +# DNS Settings +dns-domain: opnfvlf.org +dns-search: opnfvlf.org +dns_nameservers: + - 8.8.8.8 + - 8.8.4.4 +# NTP servers +ntp: + - 0.se.pool.ntp.org + - 1.se.pool.ntp.org +# Syslog server +syslog: + server: 10.128.1.24 + transport: 'tcp' + +# http(s) proxy settings added to /etc/environment of uc and oc nodes +# http_proxy: http://proxy.server:8080 +# https_proxy: https://proxy.server:8081 + +# Common network settings +networks: + # Admin configuration (pxe and jumpstart) + admin: + enabled: true + # Network settings for the Installer VM on admin network + installer_vm: + # Indicates if this VM will be bridged to an interface, or to a bond + nic_type: interface + # Interfaces to bridge for installer VM (use multiple values for bond) + members: + - em1 + # VLAN tag to use for this network on Installer VM, native means none + vlan: native + # IP to assign to Installer VM on this network + ip: 192.0.2.1 + # Usable ip range for the overcloud node IPs (including VIPs) + # Last IP is used for host bridge (i.e. br-admin). + # If empty entire range is usable. + # Cannot overlap with dhcp_range or introspection_range. + overcloud_ip_range: + - 192.0.2.51 + - 192.0.2.99 + # Gateway (only needed when public_network is disabled) + gateway: 192.0.2.1 + # Subnet in CIDR format 192.168.1.0/24 + cidr: 192.0.2.0/24 + # DHCP range for the admin network, automatically provisioned if empty + dhcp_range: + - 192.0.2.2 + - 192.0.2.50 + # Mapping of network configuration for Overcloud Nodes + nic_mapping: + # Mapping for compute profile (nodes assigned as Compute nodes) + compute: + # Physical interface type (interface or bond) + phys_type: interface + # Physical NIC members (Single value allowed for phys_type: interface) + members: + - eth0 + # Mapping for controller profile (nodes assigned as Controller nodes) + controller: + phys_type: interface + members: + - eth0 + + # Tenant network configuration + tenant: + enabled: true + # Subnet in CIDR format 192.168.1.0/24 + cidr: 11.0.0.0/24 + # Tenant network MTU + mtu: 1500 + # Tenant network Overlay segmentation ID range: + # VNI, VLAN-ID, etc. + # VLAN config should follow the pattern of neutron ml2 network_vlan_ranges + # allowed patterns are or + # :: + # Note that for VLAN config, physnet 'datacentre:1:1000' is used for + # external networks by default and will be automatically added to + # Neutron config if the range specified here does not include datacentre. + overlay_id_range: vlan:500:525 + + # Tenant network segmentation type: + # vlan, vxlan, gre + segmentation_type: vlan + # Mapping of network configuration for Overcloud Nodes + nic_mapping: + # Mapping for compute profile (nodes assigned as Compute nodes) + compute: + # Physical interface type (interface/bond) + phys_type: interface + # UIO driver to use for DPDK scenarios. + # The value is ignored for non-DPDK scenarios. + uio_driver: uio_pci_generic + # VLAN tag to use with this NIC + vlan: native + # Physical NIC members of this mapping + # Single value allowed for phys_type: interface + members: + # Note logical name like nic1 not valid for fdio deployment yet. + - eth1 + # Mapping for controller profile (nodes assigned as Controller nodes) + controller: + # Physical interface type (interface/bond) + phys_type: interface + vlan: native + # Note: logicial names like nic1 are not valid for fdio deployment yet. + members: + - eth1 + + # Can contain 1 or more external networks + external: + - public: + enabled: true + # Public network MTU + mtu: 1500 + # Network settings for the Installer VM on external network + # (note only valid on 'public' external network) + installer_vm: + # Indicates if this VM will be bridged to an interface, or to a bond + nic_type: interface + vlan: native + # Interfaces to bridge for installer VM (use multiple values for bond) + members: + - em1 + # IP to assign to Installer VM on this network + ip: 192.168.37.1 + cidr: 192.168.37.0/24 + gateway: 192.168.37.1 + # Range to allocate to floating IPs for the public network with Neutron + floating_ip_range: + - 192.168.37.200 + - 192.168.37.220 + # Usable ip range for the overcloud node IPs (including VIPs) + # Last IP will be used for host bridge (i.e. br-public). + # If empty entire range is usable. + # Cannot overlap with dhcp_range or introspection_range. + overcloud_ip_range: + - 192.168.37.10 + - 192.168.37.199 + # Mapping of network configuration for Overcloud Nodes + nic_mapping: + # Mapping for compute profile (nodes assigned as Compute nodes) + compute: + # Physical interface type (interface or bond) + # Note that this phys_type for external network will be changed + # to vpp_interface for odl_fdio scenarios and linux_bridge for + # nosdn_fdio scenarios. + phys_type: ovs_bridge + # VLAN tag to use with this NIC + vlan: native + # Physical NIC members of this mapping + # Single value allowed for phys_type: interface + members: + - eth2 + # Mapping for controller profile (nodes assigned as Controller nodes) + controller: + # Note that this phys_type for external network will be changed + # to vpp_interface for odl_fdio scenarios and linux_bridge for + # nosdn_fdio scenarios. + phys_type: ovs_bridge + vlan: native + members: + - eth2 + # External network to be created in OpenStack by Services tenant + external_overlay: + name: Public_internet + type: flat + gateway: 192.168.37.1 + # another external network + # This is an example and not yet supported + - private_cloud: + enabled: false + mtu: 1500 + # Network settings for the Installer VM on external network + # note only valid on 'public' external network + installer_vm: + # Indicates if this VM will be bridged to an interface, or to a bond + nic_type: interface + vlan: 101 + # Interfaces to bridge for installer VM (use multiple values for bond) + members: + - em1 + # IP to assign to Installer VM on this network + ip: 192.168.38.1 + cidr: 192.168.38.0/24 + gateway: 192.168.38.1 + # Range to allocate to floating IPs for the public network with Neutron + floating_ip_range: + - 192.168.38.200 + - 192.168.38.220 + # Usable IP range for overcloud nodes (including VIPs)i + # usually this is a shared subnet. + # Cannot overlap with dhcp_range or introspection_range. + overcloud_ip_range: + - 192.168.38.10 + - 192.168.38.199 + # Mapping of network configuration for Overcloud Nodes + nic_mapping: + # Mapping for compute profile (nodes assigned as Compute nodes) + compute: + # Physical interface type (interface or bond) + phys_type: interface + # VLAN tag to use with this NIC + vlan: 101 + # Physical NIC members of this mappingi + # Single value allowed for phys_type: interface + # Note: logical names like nic1 are not valid for fdio deployment yet. + members: + - eth3 + # Mapping for controller profile (nodes assigned as Controller nodes) + controller: + phys_type: interface + vlan: 101 + members: + - eth3 + # External network to be created in OpenStack by Services tenant + external_overlay: + name: private_cloud + type: vlan + segmentation_id: 101 + gateway: 192.168.38.1 + + # Storage network configuration + storage: + enabled: true + # Subnet in CIDR format + cidr: 12.0.0.0/24 + # Storage network MTU + mtu: 1500 + # Mapping of network configuration for Overcloud Nodes + nic_mapping: + # Mapping for compute profile (nodes assigned as Compute nodes) + compute: + # Physical interface type (interface or bond) + phys_type: interface + # VLAN tag to use with this NIC + vlan: native + # Physical NIC members of this mapping + # Single value allowed for phys_type: interface + members: + # Note logical names like nic1 not valid for fdio deployment yet. + - eth3 + # Mapping for controller profile (nodes assigned as Controller nodes) + controller: + phys_type: interface + vlan: native + members: + - eth3 + + api: + # API network configuration + enabled: false + # Subnet in CIDR format + cidr: fd00:fd00:fd00:4000::/64 + # VLAN tag to use for Overcloud hosts on this network + vlan: 13 + # Api network MTU + mtu: 1500 + # Mapping of network configuration for Overcloud Nodes + nic_mapping: + # Mapping for compute profile (nodes assigned as Compute nodes) + compute: + # Physical interface type (interface or bond) + phys_type: interface + # VLAN tag to use with this NIC + vlan: native + # Physical NIC members of this mapping + # Single value allowed for phys_type: interface + # Note logical names like nic1 not valid for fdio deployment yet. + members: + - eth4 + # Mapping for controller profile (nodes assigned as Controller nodes) + controller: + phys_type: interface + vlan: native + members: + - eth4 + +# Apex specific settings +apex: + networks: + admin: + # Range used for introspection phase (examining nodes). + # This cannot overlap with dhcp_range or overcloud_ip_range. + # for the overcloud default external network + introspection_range: + - 192.0.2.100 + - 192.0.2.120 diff --git a/config/network/network_settings_v6.yaml b/config/network/network_settings_v6.yaml index 176bc7ca..1dd1097d 100644 --- a/config/network/network_settings_v6.yaml +++ b/config/network/network_settings_v6.yaml @@ -116,6 +116,12 @@ networks: mtu: 1500 # Tenant network Overlay segmentation ID range: # VNI, VLAN-ID, etc. + # VLAN config should follow the pattern of neutron ml2 network_vlan_ranges + # allowed patterns are or + # :: + # Note that for VLAN config, physnet 'datacentre:1:1000' is used for + # external networks by default and will be automatically added to + # Neutron config if the range specified here does not include datacentre. overlay_id_range: 2,65535 # Tenant network segmentation type: -- cgit 1.2.3-korg