Add network templates for multiple NIC configuration
This change adds a set of network interface configurations for use with network isolation. The multiple-nics templates includes one separate NIC per network, and assumes that nic1 is used for the provisioning network (ctlplane). Also included is an environment file for including the multiple-nics configuration in a deployment. This revision changes the ordering of the NICs. By doing that, it is possible to wire up only a subset of the NICs for the storage nodes, and it is possilbe to leave the External NIC only configured on the controllers. rdo: Updated this commit for static control plane configuration Co-Authored-By: Rhys Oxenham <roxenham@redhat.com> Change-Id: Ic878d1ed1a85b5705295d087a743570ca8213504
This commit is contained in:
parent
bea428e8eb
commit
6c57eab4c2
environments
network/config/multiple-nics
13
environments/net-multiple-nics.yaml
Normal file
13
environments/net-multiple-nics.yaml
Normal file
@ -0,0 +1,13 @@
|
||||
# This template configures each role to use a separate NIC for
|
||||
# each isolated network.
|
||||
# This template assumes use of network-isolation.yaml.
|
||||
#
|
||||
# FIXME: if/when we add functionality to heatclient to include heat
|
||||
# environment files we should think about using it here to automatically
|
||||
# include network-isolation.yaml.
|
||||
resource_registry:
|
||||
OS::TripleO::BlockStorage::Net::SoftwareConfig: ../network/config/multiple-nics/cinder-storage.yaml
|
||||
OS::TripleO::Compute::Net::SoftwareConfig: ../network/config/multiple-nics/compute.yaml
|
||||
OS::TripleO::Controller::Net::SoftwareConfig: ../network/config/multiple-nics/controller.yaml
|
||||
OS::TripleO::ObjectStorage::Net::SoftwareConfig: ../network/config/multiple-nics/swift-storage.yaml
|
||||
OS::TripleO::CephStorage::Net::SoftwareConfig: ../network/config/multiple-nics/ceph-storage.yaml
|
21
network/config/multiple-nics/README.md
Normal file
21
network/config/multiple-nics/README.md
Normal file
@ -0,0 +1,21 @@
|
||||
This directory contains Heat templates to help configure
|
||||
multiple NICs for each Overcloud role, where it is
|
||||
assumed that each NIC is running a specific network
|
||||
traffic type and that VLANs are not being used.
|
||||
|
||||
Configuration
|
||||
-------------
|
||||
|
||||
To make use of these templates create a Heat environment that looks
|
||||
something like this:
|
||||
|
||||
resource\_registry:
|
||||
OS::TripleO::BlockStorage::Net::SoftwareConfig: network/config/multiple-nics/cinder-storage.yaml
|
||||
OS::TripleO::Compute::Net::SoftwareConfig: network/config/multiple-nics/compute.yaml
|
||||
OS::TripleO::Controller::Net::SoftwareConfig: network/config/multiple-nics/controller.yaml
|
||||
OS::TripleO::ObjectStorage::Net::SoftwareConfig: network/config/multiple-nics/swift-storage.yaml
|
||||
OS::TripleO::CephStorage::Net::SoftwareConfig: network/config/multiple-nics/ceph-storage.yaml
|
||||
|
||||
Or use this Heat environment file:
|
||||
|
||||
environments/net-multiple-nics.yaml
|
113
network/config/multiple-nics/ceph-storage.yaml
Normal file
113
network/config/multiple-nics/ceph-storage.yaml
Normal file
@ -0,0 +1,113 @@
|
||||
heat_template_version: 2015-04-30
|
||||
|
||||
description: >
|
||||
Software Config to drive os-net-config to configure multiple interfaces
|
||||
for the ceph storage role.
|
||||
|
||||
parameters:
|
||||
ControlPlaneIp:
|
||||
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
|
||||
ExternalNetworkVlanID:
|
||||
default: 10
|
||||
description: Vlan ID for the external network traffic.
|
||||
type: number
|
||||
InternalApiNetworkVlanID:
|
||||
default: 20
|
||||
description: Vlan ID for the internal_api network traffic.
|
||||
type: number
|
||||
StorageNetworkVlanID:
|
||||
default: 30
|
||||
description: Vlan ID for the storage network traffic.
|
||||
type: number
|
||||
StorageMgmtNetworkVlanID:
|
||||
default: 40
|
||||
description: Vlan ID for the storage mgmt network traffic.
|
||||
type: number
|
||||
TenantNetworkVlanID:
|
||||
default: 50
|
||||
description: Vlan ID for the tenant network traffic.
|
||||
type: number
|
||||
ExternalInterfaceDefaultRoute:
|
||||
default: '10.0.0.1'
|
||||
description: default route for the external network
|
||||
type: string
|
||||
ControlPlaneSubnetCidr: # Override this via parameter_defaults
|
||||
default: '24'
|
||||
description: The subnet CIDR of the control plane network.
|
||||
type: string
|
||||
ControlPlaneDefaultRoute: # Override this via parameter_defaults
|
||||
description: The subnet CIDR of the control plane network.
|
||||
type: string
|
||||
DnsServers: # Override this via parameter_defaults
|
||||
default: []
|
||||
description: A list of DNS servers (2 max for some implementations) that will be added to resolv.conf.
|
||||
type: json
|
||||
EC2MetadataIp: # Override this via parameter_defaults
|
||||
description: The IP address of the EC2 metadata server.
|
||||
type: string
|
||||
|
||||
resources:
|
||||
OsNetConfigImpl:
|
||||
type: OS::Heat::StructuredConfig
|
||||
properties:
|
||||
group: os-apply-config
|
||||
config:
|
||||
os_net_config:
|
||||
network_config:
|
||||
-
|
||||
type: interface
|
||||
name: nic1
|
||||
use_dhcp: false
|
||||
dns_servers: {get_param: DnsServers}
|
||||
addresses:
|
||||
-
|
||||
ip_netmask:
|
||||
list_join:
|
||||
- '/'
|
||||
- - {get_param: ControlPlaneIp}
|
||||
- {get_param: ControlPlaneSubnetCidr}
|
||||
routes:
|
||||
-
|
||||
ip_netmask: 169.254.169.254/32
|
||||
next_hop: {get_param: EC2MetadataIp}
|
||||
-
|
||||
type: interface
|
||||
name: nic2
|
||||
use_dhcp: false
|
||||
addresses:
|
||||
-
|
||||
ip_netmask: {get_param: StorageIpSubnet}
|
||||
-
|
||||
type: interface
|
||||
name: nic3
|
||||
use_dhcp: false
|
||||
addresses:
|
||||
-
|
||||
ip_netmask: {get_param: StorageMgmtIpSubnet}
|
||||
|
||||
outputs:
|
||||
OS::stack_id:
|
||||
description: The OsNetConfigImpl resource.
|
||||
value: {get_resource: OsNetConfigImpl}
|
120
network/config/multiple-nics/cinder-storage.yaml
Normal file
120
network/config/multiple-nics/cinder-storage.yaml
Normal file
@ -0,0 +1,120 @@
|
||||
heat_template_version: 2015-04-30
|
||||
|
||||
description: >
|
||||
Software Config to drive os-net-config to configure multiple interfaces
|
||||
for the cinder storage role.
|
||||
|
||||
parameters:
|
||||
ControlPlaneIp:
|
||||
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
|
||||
ExternalNetworkVlanID:
|
||||
default: 10
|
||||
description: Vlan ID for the external network traffic.
|
||||
type: number
|
||||
InternalApiNetworkVlanID:
|
||||
default: 20
|
||||
description: Vlan ID for the internal_api network traffic.
|
||||
type: number
|
||||
StorageNetworkVlanID:
|
||||
default: 30
|
||||
description: Vlan ID for the storage network traffic.
|
||||
type: number
|
||||
StorageMgmtNetworkVlanID:
|
||||
default: 40
|
||||
description: Vlan ID for the storage mgmt network traffic.
|
||||
type: number
|
||||
TenantNetworkVlanID:
|
||||
default: 50
|
||||
description: Vlan ID for the tenant network traffic.
|
||||
type: number
|
||||
ExternalInterfaceDefaultRoute:
|
||||
default: '10.0.0.1'
|
||||
description: default route for the external network
|
||||
type: string
|
||||
ControlPlaneSubnetCidr: # Override this via parameter_defaults
|
||||
default: '24'
|
||||
description: The subnet CIDR of the control plane network.
|
||||
type: string
|
||||
ControlPlaneDefaultRoute: # Override this via parameter_defaults
|
||||
description: The subnet CIDR of the control plane network.
|
||||
type: string
|
||||
DnsServers: # Override this via parameter_defaults
|
||||
default: []
|
||||
description: A list of DNS servers (2 max for some implementations) that will be added to resolv.conf.
|
||||
type: json
|
||||
EC2MetadataIp: # Override this via parameter_defaults
|
||||
description: The IP address of the EC2 metadata server.
|
||||
type: string
|
||||
|
||||
resources:
|
||||
OsNetConfigImpl:
|
||||
type: OS::Heat::StructuredConfig
|
||||
properties:
|
||||
group: os-apply-config
|
||||
config:
|
||||
os_net_config:
|
||||
network_config:
|
||||
-
|
||||
type: interface
|
||||
name: nic1
|
||||
use_dhcp: false
|
||||
dns_servers: {get_param: DnsServers}
|
||||
addresses:
|
||||
-
|
||||
ip_netmask:
|
||||
list_join:
|
||||
- '/'
|
||||
- - {get_param: ControlPlaneIp}
|
||||
- {get_param: ControlPlaneSubnetCidr}
|
||||
routes:
|
||||
-
|
||||
ip_netmask: 169.254.169.254/32
|
||||
next_hop: {get_param: EC2MetadataIp}
|
||||
-
|
||||
type: interface
|
||||
name: nic2
|
||||
use_dhcp: false
|
||||
addresses:
|
||||
-
|
||||
ip_netmask: {get_param: StorageIpSubnet}
|
||||
-
|
||||
type: interface
|
||||
name: nic3
|
||||
use_dhcp: false
|
||||
addresses:
|
||||
-
|
||||
ip_netmask: {get_param: StorageMgmtIpSubnet}
|
||||
-
|
||||
type: interface
|
||||
name: nic4
|
||||
use_dhcp: false
|
||||
addresses:
|
||||
-
|
||||
ip_netmask: {get_param: InternalApiIpSubnet}
|
||||
|
||||
outputs:
|
||||
OS::stack_id:
|
||||
description: The OsNetConfigImpl resource.
|
||||
value: {get_resource: OsNetConfigImpl}
|
116
network/config/multiple-nics/compute.yaml
Normal file
116
network/config/multiple-nics/compute.yaml
Normal file
@ -0,0 +1,116 @@
|
||||
heat_template_version: 2015-04-30
|
||||
|
||||
description: >
|
||||
Software Config to drive os-net-config to configure multiple interfaces
|
||||
for the compute role.
|
||||
|
||||
parameters:
|
||||
ControlPlaneIp:
|
||||
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
|
||||
InternalApiNetworkVlanID:
|
||||
default: 20
|
||||
description: Vlan ID for the internal_api network traffic.
|
||||
type: number
|
||||
StorageNetworkVlanID:
|
||||
default: 30
|
||||
description: Vlan ID for the storage network traffic.
|
||||
type: number
|
||||
TenantNetworkVlanID:
|
||||
default: 50
|
||||
description: Vlan ID for the tenant network traffic.
|
||||
type: number
|
||||
ControlPlaneSubnetCidr: # Override this via parameter_defaults
|
||||
default: '24'
|
||||
description: The subnet CIDR of the control plane network.
|
||||
type: string
|
||||
ControlPlaneDefaultRoute: # Override this via parameter_defaults
|
||||
description: The subnet CIDR of the control plane network.
|
||||
type: string
|
||||
DnsServers: # Override this via parameter_defaults
|
||||
default: []
|
||||
description: A list of DNS servers (2 max for some implementations) that will be added to resolv.conf.
|
||||
type: json
|
||||
EC2MetadataIp: # Override this via parameter_defaults
|
||||
description: The IP address of the EC2 metadata server.
|
||||
type: string
|
||||
|
||||
resources:
|
||||
OsNetConfigImpl:
|
||||
type: OS::Heat::StructuredConfig
|
||||
properties:
|
||||
group: os-apply-config
|
||||
config:
|
||||
os_net_config:
|
||||
network_config:
|
||||
-
|
||||
type: interface
|
||||
name: nic1
|
||||
use_dhcp: false
|
||||
dns_servers: {get_param: DnsServers}
|
||||
addresses:
|
||||
-
|
||||
ip_netmask:
|
||||
list_join:
|
||||
- '/'
|
||||
- - {get_param: ControlPlaneIp}
|
||||
- {get_param: ControlPlaneSubnetCidr}
|
||||
routes:
|
||||
-
|
||||
ip_netmask: 169.254.169.254/32
|
||||
next_hop: {get_param: EC2MetadataIp}
|
||||
-
|
||||
type: interface
|
||||
name: nic2
|
||||
use_dhcp: false
|
||||
addresses:
|
||||
-
|
||||
ip_netmask: {get_param: StorageIpSubnet}
|
||||
-
|
||||
type: interface
|
||||
name: nic4
|
||||
use_dhcp: false
|
||||
addresses:
|
||||
-
|
||||
ip_netmask: {get_param: InternalApiIpSubnet}
|
||||
-
|
||||
# Create a bridge which can also be used for VLAN-mode bridge mapping
|
||||
type: ovs_bridge
|
||||
name: br-tenant
|
||||
use_dhcp: false
|
||||
addresses:
|
||||
-
|
||||
ip_netmask: {get_param: TenantIpSubnet}
|
||||
members:
|
||||
-
|
||||
type: interface
|
||||
name: nic5
|
||||
use_dhcp: false
|
||||
# force the MAC address of the bridge to this interface
|
||||
primary: true
|
||||
|
||||
outputs:
|
||||
OS::stack_id:
|
||||
description: The OsNetConfigImpl resource.
|
||||
value: {get_resource: OsNetConfigImpl}
|
152
network/config/multiple-nics/controller.yaml
Normal file
152
network/config/multiple-nics/controller.yaml
Normal file
@ -0,0 +1,152 @@
|
||||
heat_template_version: 2015-04-30
|
||||
|
||||
description: >
|
||||
Software Config to drive os-net-config to configure multiple interfaces
|
||||
for the controller role.
|
||||
|
||||
parameters:
|
||||
ControlPlaneIp:
|
||||
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
|
||||
ExternalNetworkVlanID:
|
||||
default: 10
|
||||
description: Vlan ID for the external network traffic.
|
||||
type: number
|
||||
InternalApiNetworkVlanID:
|
||||
default: 20
|
||||
description: Vlan ID for the internal_api network traffic.
|
||||
type: number
|
||||
StorageNetworkVlanID:
|
||||
default: 30
|
||||
description: Vlan ID for the storage network traffic.
|
||||
type: number
|
||||
StorageMgmtNetworkVlanID:
|
||||
default: 40
|
||||
description: Vlan ID for the storage mgmt network traffic.
|
||||
type: number
|
||||
TenantNetworkVlanID:
|
||||
default: 50
|
||||
description: Vlan ID for the tenant network traffic.
|
||||
type: number
|
||||
ExternalInterfaceDefaultRoute:
|
||||
default: '10.0.0.1'
|
||||
description: default route for the external network
|
||||
type: string
|
||||
ControlPlaneSubnetCidr: # Override this via parameter_defaults
|
||||
default: '24'
|
||||
description: The subnet CIDR of the control plane network.
|
||||
type: string
|
||||
ControlPlaneDefaultRoute: # Override this via parameter_defaults
|
||||
description: The subnet CIDR of the control plane network.
|
||||
type: string
|
||||
DnsServers: # Override this via parameter_defaults
|
||||
default: []
|
||||
description: A list of DNS servers (2 max for some implementations) that will be added to resolv.conf.
|
||||
type: json
|
||||
EC2MetadataIp: # Override this via parameter_defaults
|
||||
description: The IP address of the EC2 metadata server.
|
||||
type: string
|
||||
|
||||
resources:
|
||||
OsNetConfigImpl:
|
||||
type: OS::Heat::StructuredConfig
|
||||
properties:
|
||||
group: os-apply-config
|
||||
config:
|
||||
os_net_config:
|
||||
network_config:
|
||||
-
|
||||
type: interface
|
||||
name: nic1
|
||||
use_dhcp: false
|
||||
dns_servers: {get_param: DnsServers}
|
||||
addresses:
|
||||
-
|
||||
ip_netmask:
|
||||
list_join:
|
||||
- '/'
|
||||
- - {get_param: ControlPlaneIp}
|
||||
- {get_param: ControlPlaneSubnetCidr}
|
||||
routes:
|
||||
-
|
||||
ip_netmask: 169.254.169.254/32
|
||||
next_hop: {get_param: EC2MetadataIp}
|
||||
-
|
||||
type: interface
|
||||
name: nic2
|
||||
use_dhcp: false
|
||||
addresses:
|
||||
-
|
||||
ip_netmask: {get_param: StorageIpSubnet}
|
||||
-
|
||||
type: interface
|
||||
name: nic3
|
||||
use_dhcp: false
|
||||
addresses:
|
||||
-
|
||||
ip_netmask: {get_param: StorageMgmtIpSubnet}
|
||||
-
|
||||
type: interface
|
||||
name: nic4
|
||||
use_dhcp: false
|
||||
addresses:
|
||||
-
|
||||
ip_netmask: {get_param: InternalApiIpSubnet}
|
||||
-
|
||||
# Create a bridge which can also be used for VLAN-mode bridge mapping
|
||||
type: ovs_bridge
|
||||
name: br-tenant
|
||||
use_dhcp: false
|
||||
addresses:
|
||||
-
|
||||
ip_netmask: {get_param: TenantIpSubnet}
|
||||
members:
|
||||
-
|
||||
type: interface
|
||||
name: nic5
|
||||
use_dhcp: false
|
||||
# force the MAC address of the bridge to this interface
|
||||
primary: true
|
||||
-
|
||||
type: ovs_bridge
|
||||
name: {get_input: bridge_name}
|
||||
use_dhcp: false
|
||||
addresses:
|
||||
-
|
||||
ip_netmask: {get_param: ExternalIpSubnet}
|
||||
routes:
|
||||
-
|
||||
ip_netmask: 0.0.0.0/0
|
||||
next_hop: {get_param: ExternalInterfaceDefaultRoute}
|
||||
members:
|
||||
-
|
||||
type: interface
|
||||
name: nic6
|
||||
# force the MAC address of the bridge to this interface
|
||||
primary: true
|
||||
|
||||
outputs:
|
||||
OS::stack_id:
|
||||
description: The OsNetConfigImpl resource.
|
||||
value: {get_resource: OsNetConfigImpl}
|
120
network/config/multiple-nics/swift-storage.yaml
Normal file
120
network/config/multiple-nics/swift-storage.yaml
Normal file
@ -0,0 +1,120 @@
|
||||
heat_template_version: 2015-04-30
|
||||
|
||||
description: >
|
||||
Software Config to drive os-net-config to configure multiple interfaces
|
||||
for the swift storage role.
|
||||
|
||||
parameters:
|
||||
ControlPlaneIp:
|
||||
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
|
||||
ExternalNetworkVlanID:
|
||||
default: 10
|
||||
description: Vlan ID for the external network traffic.
|
||||
type: number
|
||||
InternalApiNetworkVlanID:
|
||||
default: 20
|
||||
description: Vlan ID for the internal_api network traffic.
|
||||
type: number
|
||||
StorageNetworkVlanID:
|
||||
default: 30
|
||||
description: Vlan ID for the storage network traffic.
|
||||
type: number
|
||||
StorageMgmtNetworkVlanID:
|
||||
default: 40
|
||||
description: Vlan ID for the storage mgmt network traffic.
|
||||
type: number
|
||||
TenantNetworkVlanID:
|
||||
default: 50
|
||||
description: Vlan ID for the tenant network traffic.
|
||||
type: number
|
||||
ExternalInterfaceDefaultRoute:
|
||||
default: '10.0.0.1'
|
||||
description: default route for the external network
|
||||
type: string
|
||||
ControlPlaneSubnetCidr: # Override this via parameter_defaults
|
||||
default: '24'
|
||||
description: The subnet CIDR of the control plane network.
|
||||
type: string
|
||||
ControlPlaneDefaultRoute: # Override this via parameter_defaults
|
||||
description: The subnet CIDR of the control plane network.
|
||||
type: string
|
||||
DnsServers: # Override this via parameter_defaults
|
||||
default: []
|
||||
description: A list of DNS servers (2 max for some implementations) that will be added to resolv.conf.
|
||||
type: json
|
||||
EC2MetadataIp: # Override this via parameter_defaults
|
||||
description: The IP address of the EC2 metadata server.
|
||||
type: string
|
||||
|
||||
resources:
|
||||
OsNetConfigImpl:
|
||||
type: OS::Heat::StructuredConfig
|
||||
properties:
|
||||
group: os-apply-config
|
||||
config:
|
||||
os_net_config:
|
||||
network_config:
|
||||
-
|
||||
type: interface
|
||||
name: nic1
|
||||
use_dhcp: false
|
||||
dns_servers: {get_param: DnsServers}
|
||||
addresses:
|
||||
-
|
||||
ip_netmask:
|
||||
list_join:
|
||||
- '/'
|
||||
- - {get_param: ControlPlaneIp}
|
||||
- {get_param: ControlPlaneSubnetCidr}
|
||||
routes:
|
||||
-
|
||||
ip_netmask: 169.254.169.254/32
|
||||
next_hop: {get_param: EC2MetadataIp}
|
||||
-
|
||||
type: interface
|
||||
name: nic2
|
||||
use_dhcp: false
|
||||
addresses:
|
||||
-
|
||||
ip_netmask: {get_param: StorageIpSubnet}
|
||||
-
|
||||
type: interface
|
||||
name: nic3
|
||||
use_dhcp: false
|
||||
addresses:
|
||||
-
|
||||
ip_netmask: {get_param: StorageMgmtIpSubnet}
|
||||
-
|
||||
type: interface
|
||||
name: nic4
|
||||
use_dhcp: false
|
||||
addresses:
|
||||
-
|
||||
ip_netmask: {get_param: InternalApiIpSubnet}
|
||||
|
||||
outputs:
|
||||
OS::stack_id:
|
||||
description: The OsNetConfigImpl resource.
|
||||
value: {get_resource: OsNetConfigImpl}
|
Loading…
x
Reference in New Issue
Block a user