summaryrefslogtreecommitdiffstats
path: root/build/nics-template.yaml.jinja2
diff options
context:
space:
mode:
Diffstat (limited to 'build/nics-template.yaml.jinja2')
-rw-r--r--build/nics-template.yaml.jinja2130
1 files changed, 104 insertions, 26 deletions
diff --git a/build/nics-template.yaml.jinja2 b/build/nics-template.yaml.jinja2
index 959a3926..6d1fb9c0 100644
--- a/build/nics-template.yaml.jinja2
+++ b/build/nics-template.yaml.jinja2
@@ -9,30 +9,14 @@ parameters:
default: ''
description: IP address/subnet on the ctlplane network
type: string
- ExternalIpSubnet:
- default: ''
- description: IP address/subnet on the external network
- type: string
- InternalApiIpSubnet:
- default: ''
- description: IP address/subnet on the internal API network
- type: string
- StorageIpSubnet:
- default: ''
- description: IP address/subnet on the storage network
- type: string
- StorageMgmtIpSubnet:
- default: ''
- description: IP address/subnet on the storage mgmt network
- type: string
- TenantIpSubnet:
- default: ''
- description: IP address/subnet on the tenant network
- type: string
- ManagementIpSubnet: # Only populated when including environments/network-management.yaml
- default: ''
- description: IP address/subnet on the management network
- type: string
+ ControlPlaneStaticRoutes:
+ default: []
+ description: >
+ Routes for the ctlplane network traffic.
+ JSON route e.g. [{'destination':'10.0.0.0/16', 'nexthop':'10.0.0.1'}]
+ Unless the default is changed, the parameter is automatically resolved
+ from the subnet host_routes attribute.
+ type: json
ExternalNetworkVlanID:
default: 10
description: Vlan ID for the external network traffic.
@@ -75,6 +59,90 @@ parameters:
EC2MetadataIp: # Override this via parameter_defaults
description: The IP address of the EC2 metadata server.
type: string
+ ExternalIpSubnet:
+ default: ''
+ description: IP address/subnet on the external network
+ type: string
+ ExternalInterfaceRoutes:
+ default: []
+ description: >
+ Routes for the external network traffic.
+ JSON route e.g. [{'destination':'10.0.0.0/16', 'nexthop':'10.0.0.1'}]
+ Unless the default is changed, the parameter is automatically resolved
+ from the subnet host_routes attribute.
+ type: json
+ InternalApiIpSubnet:
+ default: ''
+ description: IP address/subnet on the internal_api network
+ type: string
+ InternalApiInterfaceRoutes:
+ default: []
+ description: >
+ Routes for the internal_api network traffic.
+ JSON route e.g. [{'destination':'10.0.0.0/16', 'nexthop':'10.0.0.1'}]
+ Unless the default is changed, the parameter is automatically resolved
+ from the subnet host_routes attribute.
+ type: json
+ StorageIpSubnet:
+ default: ''
+ description: IP address/subnet on the storage network
+ type: string
+ StorageInterfaceRoutes:
+ default: []
+ description: >
+ Routes for the storage network traffic.
+ JSON route e.g. [{'destination':'10.0.0.0/16', 'nexthop':'10.0.0.1'}]
+ Unless the default is changed, the parameter is automatically resolved
+ from the subnet host_routes attribute.
+ type: json
+ StorageMgmtIpSubnet:
+ default: ''
+ description: IP address/subnet on the storage_mgmt network
+ type: string
+ StorageMgmtInterfaceRoutes:
+ default: []
+ description: >
+ Routes for the storage_mgmt network traffic.
+ JSON route e.g. [{'destination':'10.0.0.0/16', 'nexthop':'10.0.0.1'}]
+ Unless the default is changed, the parameter is automatically resolved
+ from the subnet host_routes attribute.
+ type: json
+ StorageNFSIpSubnet:
+ default: ''
+ description: IP address/subnet on the storage_nfs network
+ type: string
+ StorageNFSRoutes:
+ default: []
+ description: >
+ Routes for the storage_nfs network traffic.
+ JSON route e.g. [{'destination':'10.0.0.0/16', 'nexthop':'10.0.0.1'}]
+ Unless the default is changed, the parameter is automatically resolved
+ from the subnet host_routes attribute.
+ type: json
+ TenantIpSubnet:
+ default: ''
+ description: IP address/subnet on the tenant network
+ type: string
+ TenantInterfaceRoutes:
+ default: []
+ description: >
+ Routes for the tenant network traffic.
+ JSON route e.g. [{'destination':'10.0.0.0/16', 'nexthop':'10.0.0.1'}]
+ Unless the default is changed, the parameter is automatically resolved
+ from the subnet host_routes attribute.
+ type: json
+ ManagementIpSubnet:
+ default: ''
+ description: IP address/subnet on the management network
+ type: string
+ ManagementInterfaceRoutes:
+ default: []
+ description: >
+ Routes for the management network traffic.
+ JSON route e.g. [{'destination':'10.0.0.0/16', 'nexthop':'10.0.0.1'}]
+ Unless the default is changed, the parameter is automatically resolved
+ from the subnet host_routes attribute.
+ type: json
resources:
OsNetConfigImpl:
@@ -190,6 +258,18 @@ resources:
name: {{ nets['tenant']['nic_mapping'][role]['members'][0] }}
# force the MAC address of the bridge to this interface
primary: true
+ {%- elif nets['tenant']['segmentation_type'] == 'vlan' %}
+ type: ovs_bridge
+ name: br-vlan
+ use_dhcp: false
+ addresses:
+ -
+ ip_netmask: {get_param: TenantIpSubnet}
+ members:
+ -
+ type: interface
+ name: {{ nets['tenant']['nic_mapping'][role]['members'][0] }}
+ primary: true
{%- else %}
-
type: {{ nets['tenant']['nic_mapping'][role]['phys_type'] }}
@@ -242,7 +322,6 @@ resources:
name: {{ nets['external'][0]['nic_mapping'][role]['members'][0] }}
# force the MAC address of the bridge to this interface
primary: true
- {%- if role == 'controller' %}
dns_servers: {get_param: DnsServers}
addresses:
-
@@ -252,7 +331,6 @@ resources:
default: true
ip_netmask: 0.0.0.0/0
next_hop: {get_param: ExternalInterfaceDefaultRoute}
- {%- endif %}
{%- endif %}
{%- if nets['storage']['enabled'] and nets['storage']['nic_mapping'][role]['vlan'] == 'native' %}
-