Merge "Render NIC config templates with jinja2"
This commit is contained in:
commit
9727a0d813
|
@ -48,7 +48,7 @@ parameters:
|
||||||
type: number
|
type: number
|
||||||
StorageMgmtNetworkVlanID:
|
StorageMgmtNetworkVlanID:
|
||||||
default: 40
|
default: 40
|
||||||
description: Vlan ID for the storage mgmt network traffic.
|
description: Vlan ID for the storage_mgmt network traffic.
|
||||||
type: number
|
type: number
|
||||||
TenantNetworkVlanID:
|
TenantNetworkVlanID:
|
||||||
default: 50
|
default: 50
|
||||||
|
|
|
@ -48,7 +48,7 @@ parameters:
|
||||||
type: number
|
type: number
|
||||||
StorageMgmtNetworkVlanID:
|
StorageMgmtNetworkVlanID:
|
||||||
default: 40
|
default: 40
|
||||||
description: Vlan ID for the storage mgmt network traffic.
|
description: Vlan ID for the storage_mgmt network traffic.
|
||||||
type: number
|
type: number
|
||||||
TenantNetworkVlanID:
|
TenantNetworkVlanID:
|
||||||
default: 50
|
default: 50
|
||||||
|
|
|
@ -48,7 +48,7 @@ parameters:
|
||||||
type: number
|
type: number
|
||||||
StorageMgmtNetworkVlanID:
|
StorageMgmtNetworkVlanID:
|
||||||
default: 40
|
default: 40
|
||||||
description: Vlan ID for the storage mgmt network traffic.
|
description: Vlan ID for the storage_mgmt network traffic.
|
||||||
type: number
|
type: number
|
||||||
TenantNetworkVlanID:
|
TenantNetworkVlanID:
|
||||||
default: 50
|
default: 50
|
||||||
|
|
|
@ -48,7 +48,7 @@ parameters:
|
||||||
type: number
|
type: number
|
||||||
StorageMgmtNetworkVlanID:
|
StorageMgmtNetworkVlanID:
|
||||||
default: 40
|
default: 40
|
||||||
description: Vlan ID for the storage mgmt network traffic.
|
description: Vlan ID for the storage_mgmt network traffic.
|
||||||
type: number
|
type: number
|
||||||
TenantNetworkVlanID:
|
TenantNetworkVlanID:
|
||||||
default: 50
|
default: 50
|
||||||
|
|
|
@ -48,7 +48,7 @@ parameters:
|
||||||
type: number
|
type: number
|
||||||
StorageMgmtNetworkVlanID:
|
StorageMgmtNetworkVlanID:
|
||||||
default: 40
|
default: 40
|
||||||
description: Vlan ID for the storage mgmt network traffic.
|
description: Vlan ID for the storage_mgmt network traffic.
|
||||||
type: number
|
type: number
|
||||||
TenantNetworkVlanID:
|
TenantNetworkVlanID:
|
||||||
default: 50
|
default: 50
|
||||||
|
|
|
@ -48,7 +48,7 @@ parameters:
|
||||||
type: number
|
type: number
|
||||||
StorageMgmtNetworkVlanID:
|
StorageMgmtNetworkVlanID:
|
||||||
default: 40
|
default: 40
|
||||||
description: Vlan ID for the storage mgmt network traffic.
|
description: Vlan ID for the storage_mgmt network traffic.
|
||||||
type: number
|
type: number
|
||||||
TenantNetworkVlanID:
|
TenantNetworkVlanID:
|
||||||
default: 50
|
default: 50
|
||||||
|
|
|
@ -48,7 +48,7 @@ parameters:
|
||||||
type: number
|
type: number
|
||||||
StorageMgmtNetworkVlanID:
|
StorageMgmtNetworkVlanID:
|
||||||
default: 40
|
default: 40
|
||||||
description: Vlan ID for the storage mgmt network traffic.
|
description: Vlan ID for the storage_mgmt network traffic.
|
||||||
type: number
|
type: number
|
||||||
TenantNetworkVlanID:
|
TenantNetworkVlanID:
|
||||||
default: 50
|
default: 50
|
||||||
|
|
|
@ -48,7 +48,7 @@ parameters:
|
||||||
type: number
|
type: number
|
||||||
StorageMgmtNetworkVlanID:
|
StorageMgmtNetworkVlanID:
|
||||||
default: 40
|
default: 40
|
||||||
description: Vlan ID for the storage mgmt network traffic.
|
description: Vlan ID for the storage_mgmt network traffic.
|
||||||
type: number
|
type: number
|
||||||
TenantNetworkVlanID:
|
TenantNetworkVlanID:
|
||||||
default: 50
|
default: 50
|
||||||
|
|
|
@ -48,7 +48,7 @@ parameters:
|
||||||
type: number
|
type: number
|
||||||
StorageMgmtNetworkVlanID:
|
StorageMgmtNetworkVlanID:
|
||||||
default: 40
|
default: 40
|
||||||
description: Vlan ID for the storage mgmt network traffic.
|
description: Vlan ID for the storage_mgmt network traffic.
|
||||||
type: number
|
type: number
|
||||||
TenantNetworkVlanID:
|
TenantNetworkVlanID:
|
||||||
default: 50
|
default: 50
|
||||||
|
|
|
@ -48,7 +48,7 @@ parameters:
|
||||||
type: number
|
type: number
|
||||||
StorageMgmtNetworkVlanID:
|
StorageMgmtNetworkVlanID:
|
||||||
default: 40
|
default: 40
|
||||||
description: Vlan ID for the storage mgmt network traffic.
|
description: Vlan ID for the storage_mgmt network traffic.
|
||||||
type: number
|
type: number
|
||||||
TenantNetworkVlanID:
|
TenantNetworkVlanID:
|
||||||
default: 50
|
default: 50
|
||||||
|
|
|
@ -48,7 +48,7 @@ parameters:
|
||||||
type: number
|
type: number
|
||||||
StorageMgmtNetworkVlanID:
|
StorageMgmtNetworkVlanID:
|
||||||
default: 40
|
default: 40
|
||||||
description: Vlan ID for the storage mgmt network traffic.
|
description: Vlan ID for the storage_mgmt network traffic.
|
||||||
type: number
|
type: number
|
||||||
TenantNetworkVlanID:
|
TenantNetworkVlanID:
|
||||||
default: 50
|
default: 50
|
||||||
|
|
|
@ -48,7 +48,7 @@ parameters:
|
||||||
type: number
|
type: number
|
||||||
StorageMgmtNetworkVlanID:
|
StorageMgmtNetworkVlanID:
|
||||||
default: 40
|
default: 40
|
||||||
description: Vlan ID for the storage mgmt network traffic.
|
description: Vlan ID for the storage_mgmt network traffic.
|
||||||
type: number
|
type: number
|
||||||
TenantNetworkVlanID:
|
TenantNetworkVlanID:
|
||||||
default: 50
|
default: 50
|
||||||
|
|
|
@ -48,7 +48,7 @@ parameters:
|
||||||
type: number
|
type: number
|
||||||
StorageMgmtNetworkVlanID:
|
StorageMgmtNetworkVlanID:
|
||||||
default: 40
|
default: 40
|
||||||
description: Vlan ID for the storage mgmt network traffic.
|
description: Vlan ID for the storage_mgmt network traffic.
|
||||||
type: number
|
type: number
|
||||||
TenantNetworkVlanID:
|
TenantNetworkVlanID:
|
||||||
default: 50
|
default: 50
|
||||||
|
|
|
@ -48,7 +48,7 @@ parameters:
|
||||||
type: number
|
type: number
|
||||||
StorageMgmtNetworkVlanID:
|
StorageMgmtNetworkVlanID:
|
||||||
default: 40
|
default: 40
|
||||||
description: Vlan ID for the storage mgmt network traffic.
|
description: Vlan ID for the storage_mgmt network traffic.
|
||||||
type: number
|
type: number
|
||||||
TenantNetworkVlanID:
|
TenantNetworkVlanID:
|
||||||
default: 50
|
default: 50
|
||||||
|
|
|
@ -48,7 +48,7 @@ parameters:
|
||||||
type: number
|
type: number
|
||||||
StorageMgmtNetworkVlanID:
|
StorageMgmtNetworkVlanID:
|
||||||
default: 40
|
default: 40
|
||||||
description: Vlan ID for the storage mgmt network traffic.
|
description: Vlan ID for the storage_mgmt network traffic.
|
||||||
type: number
|
type: number
|
||||||
TenantNetworkVlanID:
|
TenantNetworkVlanID:
|
||||||
default: 50
|
default: 50
|
||||||
|
|
|
@ -10,13 +10,14 @@
|
||||||
# environment files we should think about using it here to automatically
|
# environment files we should think about using it here to automatically
|
||||||
# include network-isolation.yaml.
|
# include network-isolation.yaml.
|
||||||
resource_registry:
|
resource_registry:
|
||||||
|
|
||||||
# Set external ports to noop
|
# Set external ports to noop
|
||||||
OS::TripleO::Network::External: OS::Heat::None
|
OS::TripleO::Network::External: OS::Heat::None
|
||||||
OS::TripleO::Controller::Ports::ExternalPort: ../network/ports/noop.yaml
|
OS::TripleO::Controller::Ports::ExternalPort: ../network/ports/noop.yaml
|
||||||
|
|
||||||
OS::TripleO::BlockStorage::Net::SoftwareConfig: ../network/config/bond-with-vlans/cinder-storage.yaml
|
{%- for role in roles if role.name != "Controller" %}
|
||||||
OS::TripleO::Compute::Net::SoftwareConfig: ../network/config/bond-with-vlans/compute.yaml
|
# Port assignments for the {{role.name}}
|
||||||
|
OS::TripleO::{{role.name}}::Net::SoftwareConfig: ../network/config/bond-with-vlans/{{role.deprecated_nic_config_name|default(role.name.lower().yaml)}}
|
||||||
|
{%- endfor %}
|
||||||
|
|
||||||
|
# FIXME this should really be handled via enabled networks in roles_data not overriding here.
|
||||||
OS::TripleO::Controller::Net::SoftwareConfig: ../network/config/bond-with-vlans/controller-no-external.yaml
|
OS::TripleO::Controller::Net::SoftwareConfig: ../network/config/bond-with-vlans/controller-no-external.yaml
|
||||||
OS::TripleO::ObjectStorage::Net::SoftwareConfig: ../network/config/bond-with-vlans/swift-storage.yaml
|
|
||||||
OS::TripleO::CephStorage::Net::SoftwareConfig: ../network/config/bond-with-vlans/ceph-storage.yaml
|
|
|
@ -7,8 +7,10 @@
|
||||||
# environment files we should think about using it here to automatically
|
# environment files we should think about using it here to automatically
|
||||||
# include network-isolation-v6.yaml.
|
# include network-isolation-v6.yaml.
|
||||||
resource_registry:
|
resource_registry:
|
||||||
OS::TripleO::BlockStorage::Net::SoftwareConfig: ../network/config/bond-with-vlans/cinder-storage.yaml
|
{%- for role in roles if role != "Controller" %}
|
||||||
OS::TripleO::Compute::Net::SoftwareConfig: ../network/config/bond-with-vlans/compute.yaml
|
# Port assignments for the {{role.name}}
|
||||||
|
OS::TripleO::{{role.name}}::Net::SoftwareConfig: ../network/config/bond-with-vlans/{{role.deprecated_nic_config_name|default(role.name.lower().yaml)}}
|
||||||
|
{%- endfor %}
|
||||||
|
|
||||||
|
# FIXME this should really be handled via setting ipv6:true in network_data not overriding here.
|
||||||
OS::TripleO::Controller::Net::SoftwareConfig: ../network/config/bond-with-vlans/controller-v6.yaml
|
OS::TripleO::Controller::Net::SoftwareConfig: ../network/config/bond-with-vlans/controller-v6.yaml
|
||||||
OS::TripleO::ObjectStorage::Net::SoftwareConfig: ../network/config/bond-with-vlans/swift-storage.yaml
|
|
||||||
OS::TripleO::CephStorage::Net::SoftwareConfig: ../network/config/bond-with-vlans/ceph-storage.yaml
|
|
|
@ -0,0 +1,12 @@
|
||||||
|
# This template configures each role to use a pair of bonded nics (nic2 and
|
||||||
|
# nic3) and configures an IP address on each relevant isolated network
|
||||||
|
# for each role. 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:
|
||||||
|
{%- for role in roles %}
|
||||||
|
# Port assignments for the {{role.name}}
|
||||||
|
OS::TripleO::{{role.name}}::Net::SoftwareConfig: ../network/config/bond-with-vlans/{{role.deprecated_nic_config_name|default(role.name.lower().yaml)}}
|
||||||
|
{%- endfor %}
|
|
@ -1,13 +0,0 @@
|
||||||
# This template configures each role to use a pair of bonded nics (nic2 and
|
|
||||||
# nic3) and configures an IP address on each relevant isolated network
|
|
||||||
# for each role. 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/bond-with-vlans/cinder-storage.yaml
|
|
||||||
OS::TripleO::Compute::Net::SoftwareConfig: ../network/config/bond-with-vlans/compute.yaml
|
|
||||||
OS::TripleO::Controller::Net::SoftwareConfig: ../network/config/bond-with-vlans/controller.yaml
|
|
||||||
OS::TripleO::ObjectStorage::Net::SoftwareConfig: ../network/config/bond-with-vlans/swift-storage.yaml
|
|
||||||
OS::TripleO::CephStorage::Net::SoftwareConfig: ../network/config/bond-with-vlans/ceph-storage.yaml
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
# NOTE: This environment file uses the compute-dpdk
|
||||||
|
#
|
||||||
# This template configures each role to use a pair of bonded nics (nic2 and
|
# This template configures each role to use a pair of bonded nics (nic2 and
|
||||||
# nic3) and configures an IP address on each relevant isolated network
|
# nic3) and configures an IP address on each relevant isolated network
|
||||||
# for each role. The nic4 and nic5 are configured for dpdkbond and a provider
|
# for each role. The nic4 and nic5 are configured for dpdkbond and a provider
|
||||||
|
@ -8,8 +10,10 @@
|
||||||
# environment files we should think about using it here to automatically
|
# environment files we should think about using it here to automatically
|
||||||
# include network-isolation.yaml.
|
# include network-isolation.yaml.
|
||||||
resource_registry:
|
resource_registry:
|
||||||
OS::TripleO::BlockStorage::Net::SoftwareConfig: ../network/config/bond-with-vlans/cinder-storage.yaml
|
{%- for role in roles if role.name != "Compute" %}
|
||||||
|
# Port assignments for the {{role.name}}
|
||||||
|
OS::TripleO::{{role.name}}::Net::SoftwareConfig: ../network/config/bond-with-vlans/{{role.deprecated_nic_config_name|default(role.name.lower().yaml)}}
|
||||||
|
{%- endfor %}
|
||||||
|
|
||||||
|
# FIXME this won't handle any custom compute roles, instead we should have a generic way to override this
|
||||||
OS::TripleO::Compute::Net::SoftwareConfig: ../network/config/bond-with-vlans/compute-dpdk.yaml
|
OS::TripleO::Compute::Net::SoftwareConfig: ../network/config/bond-with-vlans/compute-dpdk.yaml
|
||||||
OS::TripleO::Controller::Net::SoftwareConfig: ../network/config/bond-with-vlans/controller.yaml
|
|
||||||
OS::TripleO::ObjectStorage::Net::SoftwareConfig: ../network/config/bond-with-vlans/swift-storage.yaml
|
|
||||||
OS::TripleO::CephStorage::Net::SoftwareConfig: ../network/config/bond-with-vlans/ceph-storage.yaml
|
|
|
@ -6,8 +6,10 @@
|
||||||
# environment files we should think about using it here to automatically
|
# environment files we should think about using it here to automatically
|
||||||
# include network-isolation-v6.yaml.
|
# include network-isolation-v6.yaml.
|
||||||
resource_registry:
|
resource_registry:
|
||||||
OS::TripleO::BlockStorage::Net::SoftwareConfig: ../network/config/multiple-nics/cinder-storage.yaml
|
{%- for role in roles if role.name != "Controller" %}
|
||||||
OS::TripleO::Compute::Net::SoftwareConfig: ../network/config/multiple-nics/compute.yaml
|
# Port assignments for the {{role.name}}
|
||||||
|
OS::TripleO::{{role.name}}::Net::SoftwareConfig: ../network/config/multiple-nics/{{role.deprecated_nic_config_name|default(role.name.lower().yaml)}}
|
||||||
|
{%- endfor %}
|
||||||
|
|
||||||
|
# FIXME this should really be handled via setting ipv6:true in network_data not overriding here.
|
||||||
OS::TripleO::Controller::Net::SoftwareConfig: ../network/config/multiple-nics/controller-v6.yaml
|
OS::TripleO::Controller::Net::SoftwareConfig: ../network/config/multiple-nics/controller-v6.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
|
|
|
@ -0,0 +1,12 @@
|
||||||
|
# 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:
|
||||||
|
{%- for role in roles %}
|
||||||
|
# Port assignments for the {{role.name}}
|
||||||
|
OS::TripleO::{{role.name}}::Net::SoftwareConfig: ../network/config/multiple-nics/{{role.deprecated_nic_config_name|default(role.name.lower().yaml)}}
|
||||||
|
{%- endfor %}
|
|
@ -1,13 +0,0 @@
|
||||||
# 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
|
|
|
@ -0,0 +1,12 @@
|
||||||
|
# This template configures each role to use Vlans on a single 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:
|
||||||
|
{%- for role in roles %}
|
||||||
|
# Port assignments for the {{role.name}}
|
||||||
|
OS::TripleO::{{role.name}}::Net::SoftwareConfig: ../network/config/single-nic-linux-bridge-vlans/{{role.deprecated_nic_config_name|default(role.name.lower().yaml)}}
|
||||||
|
{%- endfor %}
|
|
@ -1,13 +0,0 @@
|
||||||
# This template configures each role to use Vlans on a single 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/single-nic-linux-bridge-vlans/cinder-storage.yaml
|
|
||||||
OS::TripleO::Compute::Net::SoftwareConfig: ../network/config/single-nic-linux-bridge-vlans/compute.yaml
|
|
||||||
OS::TripleO::Controller::Net::SoftwareConfig: ../network/config/single-nic-linux-bridge-vlans/controller.yaml
|
|
||||||
OS::TripleO::ObjectStorage::Net::SoftwareConfig: ../network/config/single-nic-linux-bridge-vlans/swift-storage.yaml
|
|
||||||
OS::TripleO::CephStorage::Net::SoftwareConfig: ../network/config/single-nic-linux-bridge-vlans/ceph-storage.yaml
|
|
|
@ -14,8 +14,10 @@ resource_registry:
|
||||||
OS::TripleO::Controller::Ports::ExternalPort: ../network/ports/noop.yaml
|
OS::TripleO::Controller::Ports::ExternalPort: ../network/ports/noop.yaml
|
||||||
|
|
||||||
# Configure other ports as normal
|
# Configure other ports as normal
|
||||||
OS::TripleO::BlockStorage::Net::SoftwareConfig: ../network/config/single-nic-vlans/cinder-storage.yaml
|
{%- for role in roles if role.name != "Controller" %}
|
||||||
OS::TripleO::Compute::Net::SoftwareConfig: ../network/config/single-nic-vlans/compute.yaml
|
# Port assignments for the {{role.name}}
|
||||||
|
OS::TripleO::{{role.name}}::Net::SoftwareConfig: ../network/config/single-nic-vlans/{{role.deprecated_nic_config_name|default(role.name.lower().yaml)}}
|
||||||
|
{%- endfor %}
|
||||||
|
|
||||||
|
# FIXME this should really be handled via enabled networks in roles_data not overriding here.
|
||||||
OS::TripleO::Controller::Net::SoftwareConfig: ../network/config/single-nic-vlans/controller-no-external.yaml
|
OS::TripleO::Controller::Net::SoftwareConfig: ../network/config/single-nic-vlans/controller-no-external.yaml
|
||||||
OS::TripleO::ObjectStorage::Net::SoftwareConfig: ../network/config/single-nic-vlans/swift-storage.yaml
|
|
||||||
OS::TripleO::CephStorage::Net::SoftwareConfig: ../network/config/single-nic-vlans/ceph-storage.yaml
|
|
|
@ -6,8 +6,10 @@
|
||||||
# environment files we should think about using it here to automatically
|
# environment files we should think about using it here to automatically
|
||||||
# include network-isolation-v6.yaml.
|
# include network-isolation-v6.yaml.
|
||||||
resource_registry:
|
resource_registry:
|
||||||
OS::TripleO::BlockStorage::Net::SoftwareConfig: ../network/config/single-nic-vlans/cinder-storage.yaml
|
{%- for role in roles if role.name != "Controller" %}
|
||||||
OS::TripleO::Compute::Net::SoftwareConfig: ../network/config/single-nic-vlans/compute.yaml
|
# Port assignments for the {{role.name}}
|
||||||
|
OS::TripleO::{{role.name}}::Net::SoftwareConfig: ../network/config/single-nic-vlans/{{role.deprecated_nic_config_name|default(role.name.lower().yaml)}}
|
||||||
|
{%- endfor %}
|
||||||
|
|
||||||
|
# FIXME this should really be handled via setting ipv6:true in network_data not overriding here.
|
||||||
OS::TripleO::Controller::Net::SoftwareConfig: ../network/config/single-nic-vlans/controller-v6.yaml
|
OS::TripleO::Controller::Net::SoftwareConfig: ../network/config/single-nic-vlans/controller-v6.yaml
|
||||||
OS::TripleO::ObjectStorage::Net::SoftwareConfig: ../network/config/single-nic-vlans/swift-storage.yaml
|
|
||||||
OS::TripleO::CephStorage::Net::SoftwareConfig: ../network/config/single-nic-vlans/ceph-storage.yaml
|
|
|
@ -0,0 +1,12 @@
|
||||||
|
# This template configures each role to use Vlans on a single 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:
|
||||||
|
{%- for role in roles %}
|
||||||
|
# Port assignments for the {{role.name}}
|
||||||
|
OS::TripleO::{{role.name}}::Net::SoftwareConfig: ../network/config/single-nic-vlans/{{role.deprecated_nic_config_name|default(role.name.lower().yaml)}}
|
||||||
|
{%- endfor %}
|
|
@ -1,13 +0,0 @@
|
||||||
# This template configures each role to use Vlans on a single 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/single-nic-vlans/cinder-storage.yaml
|
|
||||||
OS::TripleO::Compute::Net::SoftwareConfig: ../network/config/single-nic-vlans/compute.yaml
|
|
||||||
OS::TripleO::Controller::Net::SoftwareConfig: ../network/config/single-nic-vlans/controller.yaml
|
|
||||||
OS::TripleO::ObjectStorage::Net::SoftwareConfig: ../network/config/single-nic-vlans/swift-storage.yaml
|
|
||||||
OS::TripleO::CephStorage::Net::SoftwareConfig: ../network/config/single-nic-vlans/ceph-storage.yaml
|
|
|
@ -0,0 +1,64 @@
|
||||||
|
# NOTE: This file is deprecated, and is included for backwards-compatibility
|
||||||
|
# for use in upgrades. For new deployments, set ipv6: true for isolated
|
||||||
|
# networks using IPv6 (Tenant network should use IPv4 for tunneling),
|
||||||
|
# and set the default_route_networks to "['ControlPlane', 'External']"
|
||||||
|
# on the Controller role to use ControlPlane for IPv4 and External for IPv6
|
||||||
|
# default routes, and include network-environment.yaml instead of this file.
|
||||||
|
resource_registry:
|
||||||
|
# Network Interface templates to use (these files must exist). You can
|
||||||
|
# override these by including one of the net-*.yaml environment files,
|
||||||
|
# such as net-bond-with-vlans-v6.yaml, or modifying the list here.
|
||||||
|
{%- for role in roles %}
|
||||||
|
# Port assignments for the {{role.name}}
|
||||||
|
OS::TripleO::{{role.name}}::Net::SoftwareConfig:
|
||||||
|
../network/config/single-nic-vlans/{{role.deprecated_nic_config_name|default(role.name.lower().yaml)}}
|
||||||
|
{%- endfor %}
|
||||||
|
|
||||||
|
parameter_defaults:
|
||||||
|
# This section is where deployment-specific configuration is done
|
||||||
|
# CIDR subnet mask length for provisioning network
|
||||||
|
ControlPlaneSubnetCidr: '24'
|
||||||
|
# Gateway router for the provisioning network (or Undercloud IP)
|
||||||
|
ControlPlaneDefaultRoute: 192.168.24.254
|
||||||
|
EC2MetadataIp: 192.168.24.1 # Generally the IP of the Undercloud
|
||||||
|
# Customize the IP subnets to match the local environment
|
||||||
|
{%- for network in networks if network.enabled|default(true) %}
|
||||||
|
{%- if network.name != 'Tenant' %}
|
||||||
|
{{network.name}}NetCidr: '{{network.ipv6_subnet}}'
|
||||||
|
{%- else %}
|
||||||
|
# Tenant tunneling network is IPv4 until IPv6 is fully supported
|
||||||
|
{{network.name}}NetCidr: '{{network.ip_subnet}}'
|
||||||
|
{%- endif %}
|
||||||
|
{%- endfor %}
|
||||||
|
# Customize the VLAN IDs to match the local environment
|
||||||
|
{%- for network in networks if network.enabled|default(true) %}
|
||||||
|
{{network.name}}NetworkVlanID: {{network.vlan}}
|
||||||
|
{%- endfor %}
|
||||||
|
# Customize the IP ranges on each network to use for static IPs and VIPs
|
||||||
|
{%- for network in networks if network.enabled|default(true) %}
|
||||||
|
{%- if network.name == 'External' %}
|
||||||
|
# Leave room if the external network is also used for floating IPs
|
||||||
|
{%- endif %}
|
||||||
|
{%- if network.name != 'Tenant' %}
|
||||||
|
{{network.name}}AllocationPools: {{network.ipv6_allocation_pools}}
|
||||||
|
{%- else %}
|
||||||
|
# Tenant tunneling network should be IPv4
|
||||||
|
{{network.name}}AllocationPools: {{network.ip_allocation_pools}}
|
||||||
|
{%- endif %}
|
||||||
|
{%- endfor %}
|
||||||
|
# Gateway routers for routable networks
|
||||||
|
{%- for network in networks if network.enabled|default(true) and network.gateway_ipv6|default(false) %}
|
||||||
|
{{network.name}}InterfaceDefaultRoute: '{{network.gateway_ipv6}}'
|
||||||
|
{%- endfor %}
|
||||||
|
{#- FIXME: These global parameters should be defined in a YAML file, e.g. network_data.yaml. #}
|
||||||
|
# Define the DNS servers (maximum 2) for the overcloud nodes
|
||||||
|
DnsServers: ["8.8.8.8","8.8.4.4"]
|
||||||
|
# List of Neutron network types for tenant networks (will be used in order)
|
||||||
|
NeutronNetworkType: 'vxlan,vlan'
|
||||||
|
# The tunnel type for the tenant network (vxlan or gre). Set to '' to disable tunneling.
|
||||||
|
NeutronTunnelTypes: 'vxlan'
|
||||||
|
# Neutron VLAN ranges per network, for example 'datacentre:1:499,tenant:500:1000':
|
||||||
|
NeutronNetworkVLANRanges: 'datacentre:1:1000'
|
||||||
|
# Customize bonding options, e.g. "mode=4 lacp_rate=1 updelay=1000 miimon=100"
|
||||||
|
# for Linux bonds w/LACP, or "bond_mode=active-backup" for OVS active/backup.
|
||||||
|
BondInterfaceOvsOptions: "bond_mode=active-backup"
|
|
@ -1,60 +0,0 @@
|
||||||
#This file is an example of an environment file for defining the isolated
|
|
||||||
#networks and related parameters.
|
|
||||||
resource_registry:
|
|
||||||
# Network Interface templates to use (these files must exist)
|
|
||||||
OS::TripleO::BlockStorage::Net::SoftwareConfig:
|
|
||||||
../network/config/single-nic-vlans/cinder-storage.yaml
|
|
||||||
OS::TripleO::Compute::Net::SoftwareConfig:
|
|
||||||
../network/config/single-nic-vlans/compute.yaml
|
|
||||||
OS::TripleO::Controller::Net::SoftwareConfig:
|
|
||||||
../network/config/single-nic-vlans/controller.yaml
|
|
||||||
OS::TripleO::ObjectStorage::Net::SoftwareConfig:
|
|
||||||
../network/config/single-nic-vlans/swift-storage.yaml
|
|
||||||
OS::TripleO::CephStorage::Net::SoftwareConfig:
|
|
||||||
../network/config/single-nic-vlans/ceph-storage.yaml
|
|
||||||
|
|
||||||
parameter_defaults:
|
|
||||||
# This section is where deployment-specific configuration is done
|
|
||||||
# CIDR subnet mask length for provisioning network
|
|
||||||
ControlPlaneSubnetCidr: '24'
|
|
||||||
# Gateway router for the provisioning network (or Undercloud IP)
|
|
||||||
ControlPlaneDefaultRoute: 192.168.24.254
|
|
||||||
EC2MetadataIp: 192.168.24.1 # Generally the IP of the Undercloud
|
|
||||||
# Customize the IP subnets to match the local environment
|
|
||||||
InternalApiNetCidr: 'fd00:fd00:fd00:2000::/64'
|
|
||||||
StorageNetCidr: 'fd00:fd00:fd00:3000::/64'
|
|
||||||
StorageMgmtNetCidr: 'fd00:fd00:fd00:4000::/64'
|
|
||||||
# Tenant tunneling network is IPv4 until IPv6 is fully supported
|
|
||||||
TenantNetCidr: 172.16.0.0/24
|
|
||||||
ExternalNetCidr: '2001:db8:fd00:1000::/64'
|
|
||||||
# Customize the VLAN IDs to match the local environment
|
|
||||||
InternalApiNetworkVlanID: 20
|
|
||||||
StorageNetworkVlanID: 30
|
|
||||||
StorageMgmtNetworkVlanID: 40
|
|
||||||
TenantNetworkVlanID: 50
|
|
||||||
ExternalNetworkVlanID: 10
|
|
||||||
# Customize the IP ranges on each network to use for static IPs and VIPs
|
|
||||||
InternalApiAllocationPools: [{'start': 'fd00:fd00:fd00:2000::10', 'end': 'fd00:fd00:fd00:2000:ffff:ffff:ffff:fffe'}]
|
|
||||||
StorageAllocationPools: [{'start': 'fd00:fd00:fd00:3000::10', 'end': 'fd00:fd00:fd00:3000:ffff:ffff:ffff:fffe'}]
|
|
||||||
StorageMgmtAllocationPools: [{'start': 'fd00:fd00:fd00:4000::10', 'end': 'fd00:fd00:fd00:4000:ffff:ffff:ffff:fffe'}]
|
|
||||||
TenantAllocationPools: [{'start': '172.16.0.10', 'end': '172.16.0.200'}]
|
|
||||||
# Leave room if the external network is also used for floating IPs
|
|
||||||
ExternalAllocationPools: [{'start': '2001:db8:fd00:1000::10', 'end': '2001:db8:fd00:1000:ffff:ffff:ffff:fffe'}]
|
|
||||||
# Gateway router for the external network
|
|
||||||
ExternalInterfaceDefaultRoute: '2001:db8:fd00:1000::1'
|
|
||||||
# Uncomment if using the Management Network (see network-management-v6.yaml)
|
|
||||||
# ManagementNetCidr: 'fd00:fd00:fd00:6000::/64'
|
|
||||||
# ManagementAllocationPools: [{'start': 'fd00:fd00:fd00:6000::10', 'end': 'fd00:fd00:fd00:6000:ffff:ffff:ffff:fffe'}]
|
|
||||||
# Use either this parameter or ControlPlaneDefaultRoute in the NIC templates
|
|
||||||
# ManagementInterfaceDefaultRoute: 'fd00:fd00:fd00:6000::1'
|
|
||||||
# Define the DNS servers (maximum 2) for the overcloud nodes
|
|
||||||
DnsServers: ["8.8.8.8","8.8.4.4"]
|
|
||||||
# List of Neutron network types for tenant networks (will be used in order)
|
|
||||||
NeutronNetworkType: 'vxlan,vlan'
|
|
||||||
# The tunnel type for the tenant network (vxlan or gre). Set to '' to disable tunneling.
|
|
||||||
NeutronTunnelTypes: 'vxlan'
|
|
||||||
# Neutron VLAN ranges per network, for example 'datacentre:1:499,tenant:500:1000':
|
|
||||||
NeutronNetworkVLANRanges: 'datacentre:1:1000'
|
|
||||||
# Customize bonding options, e.g. "mode=4 lacp_rate=1 updelay=1000 miimon=100"
|
|
||||||
# for Linux bonds w/LACP, or "bond_mode=active-backup" for OVS active/backup.
|
|
||||||
BondInterfaceOvsOptions: "bond_mode=active-backup"
|
|
|
@ -0,0 +1,61 @@
|
||||||
|
#This file is an example of an environment file for defining the isolated
|
||||||
|
#networks and related parameters.
|
||||||
|
resource_registry:
|
||||||
|
# Network Interface templates to use (these files must exist). You can
|
||||||
|
# override these by including one of the net-*.yaml environment files,
|
||||||
|
# such as net-bond-with-vlans.yaml, or modifying the list here.
|
||||||
|
{%- for role in roles %}
|
||||||
|
# Port assignments for the {{role.name}}
|
||||||
|
OS::TripleO::{{role.name}}::Net::SoftwareConfig:
|
||||||
|
../network/config/single-nic-vlans/{{role.deprecated_nic_config_name|default(role.name.lower().yaml)}}
|
||||||
|
{%- endfor %}
|
||||||
|
|
||||||
|
parameter_defaults:
|
||||||
|
# This section is where deployment-specific configuration is done
|
||||||
|
# CIDR subnet mask length for provisioning network
|
||||||
|
ControlPlaneSubnetCidr: '24'
|
||||||
|
# Gateway router for the provisioning network (or Undercloud IP)
|
||||||
|
ControlPlaneDefaultRoute: 192.168.24.254
|
||||||
|
EC2MetadataIp: 192.168.24.1 # Generally the IP of the Undercloud
|
||||||
|
# Customize the IP subnets to match the local environment
|
||||||
|
{%- for network in networks if network.enabled|default(true) %}
|
||||||
|
{%- if network.ipv6|default(false) %}
|
||||||
|
{{network.name}}NetCidr: '{{network.ipv6_subnet}}'
|
||||||
|
{%- else %}
|
||||||
|
{{network.name}}NetCidr: '{{network.ip_subnet}}'
|
||||||
|
{%- endif %}
|
||||||
|
{%- endfor %}
|
||||||
|
# Customize the VLAN IDs to match the local environment
|
||||||
|
{%- for network in networks if network.enabled|default(true) %}
|
||||||
|
{{network.name}}NetworkVlanID: {{network.vlan}}
|
||||||
|
{%- endfor %}
|
||||||
|
{%- for network in networks if network.enabled|default(true) %}
|
||||||
|
{%- if network.name == 'External' %}
|
||||||
|
# Leave room if the external network is also used for floating IPs
|
||||||
|
{%- endif %}
|
||||||
|
{%- if network.ipv6|default(false) %}
|
||||||
|
{{network.name}}AllocationPools: {{network.ipv6_allocation_pools}}
|
||||||
|
{%- else %}
|
||||||
|
{{network.name}}AllocationPools: {{network.allocation_pools}}
|
||||||
|
{%- endif %}
|
||||||
|
{%- endfor %}
|
||||||
|
# Gateway routers for routable networks
|
||||||
|
{%- for network in networks if network.enabled|default(true) %}
|
||||||
|
{%- if network.ipv6|default(false) and network.gateway_ipv6|default(false) %}
|
||||||
|
{{network.name}}InterfaceDefaultRoute: '{{network.gateway_ipv6}}'
|
||||||
|
{%- elif network.gateway_ip|default(false) %}
|
||||||
|
{{network.name}}InterfaceDefaultRoute: '{{network.gateway_ip}}'
|
||||||
|
{%- endif %}
|
||||||
|
{%- endfor %}
|
||||||
|
{#- FIXME: These global parameters should be defined in a YAML file, e.g. network_data.yaml. #}
|
||||||
|
# Define the DNS servers (maximum 2) for the overcloud nodes
|
||||||
|
DnsServers: ["8.8.8.8","8.8.4.4"]
|
||||||
|
# List of Neutron network types for tenant networks (will be used in order)
|
||||||
|
NeutronNetworkType: 'vxlan,vlan'
|
||||||
|
# The tunnel type for the tenant network (vxlan or gre). Set to '' to disable tunneling.
|
||||||
|
NeutronTunnelTypes: 'vxlan'
|
||||||
|
# Neutron VLAN ranges per network, for example 'datacentre:1:499,tenant:500:1000':
|
||||||
|
NeutronNetworkVLANRanges: 'datacentre:1:1000'
|
||||||
|
# Customize bonding options, e.g. "mode=4 lacp_rate=1 updelay=1000 miimon=100"
|
||||||
|
# for Linux bonds w/LACP, or "bond_mode=active-backup" for OVS active/backup.
|
||||||
|
BondInterfaceOvsOptions: "bond_mode=active-backup"
|
|
@ -1,59 +0,0 @@
|
||||||
#This file is an example of an environment file for defining the isolated
|
|
||||||
#networks and related parameters.
|
|
||||||
resource_registry:
|
|
||||||
# Network Interface templates to use (these files must exist)
|
|
||||||
OS::TripleO::BlockStorage::Net::SoftwareConfig:
|
|
||||||
../network/config/single-nic-vlans/cinder-storage.yaml
|
|
||||||
OS::TripleO::Compute::Net::SoftwareConfig:
|
|
||||||
../network/config/single-nic-vlans/compute.yaml
|
|
||||||
OS::TripleO::Controller::Net::SoftwareConfig:
|
|
||||||
../network/config/single-nic-vlans/controller.yaml
|
|
||||||
OS::TripleO::ObjectStorage::Net::SoftwareConfig:
|
|
||||||
../network/config/single-nic-vlans/swift-storage.yaml
|
|
||||||
OS::TripleO::CephStorage::Net::SoftwareConfig:
|
|
||||||
../network/config/single-nic-vlans/ceph-storage.yaml
|
|
||||||
|
|
||||||
parameter_defaults:
|
|
||||||
# This section is where deployment-specific configuration is done
|
|
||||||
# CIDR subnet mask length for provisioning network
|
|
||||||
ControlPlaneSubnetCidr: '24'
|
|
||||||
# Gateway router for the provisioning network (or Undercloud IP)
|
|
||||||
ControlPlaneDefaultRoute: 192.168.24.254
|
|
||||||
EC2MetadataIp: 192.168.24.1 # Generally the IP of the Undercloud
|
|
||||||
# Customize the IP subnets to match the local environment
|
|
||||||
InternalApiNetCidr: 172.17.0.0/24
|
|
||||||
StorageNetCidr: 172.18.0.0/24
|
|
||||||
StorageMgmtNetCidr: 172.19.0.0/24
|
|
||||||
TenantNetCidr: 172.16.0.0/24
|
|
||||||
ExternalNetCidr: 10.0.0.0/24
|
|
||||||
# Customize the VLAN IDs to match the local environment
|
|
||||||
InternalApiNetworkVlanID: 20
|
|
||||||
StorageNetworkVlanID: 30
|
|
||||||
StorageMgmtNetworkVlanID: 40
|
|
||||||
TenantNetworkVlanID: 50
|
|
||||||
ExternalNetworkVlanID: 10
|
|
||||||
# Customize the IP ranges on each network to use for static IPs and VIPs
|
|
||||||
InternalApiAllocationPools: [{'start': '172.17.0.10', 'end': '172.17.0.200'}]
|
|
||||||
StorageAllocationPools: [{'start': '172.18.0.10', 'end': '172.18.0.200'}]
|
|
||||||
StorageMgmtAllocationPools: [{'start': '172.19.0.10', 'end': '172.19.0.200'}]
|
|
||||||
TenantAllocationPools: [{'start': '172.16.0.10', 'end': '172.16.0.200'}]
|
|
||||||
# Leave room if the external network is also used for floating IPs
|
|
||||||
ExternalAllocationPools: [{'start': '10.0.0.10', 'end': '10.0.0.50'}]
|
|
||||||
# Gateway router for the external network
|
|
||||||
ExternalInterfaceDefaultRoute: 10.0.0.1
|
|
||||||
# Uncomment if using the Management Network (see network-management.yaml)
|
|
||||||
# ManagementNetCidr: 10.0.1.0/24
|
|
||||||
# ManagementAllocationPools: [{'start': '10.0.1.10', 'end': '10.0.1.50'}]
|
|
||||||
# Use either this parameter or ControlPlaneDefaultRoute in the NIC templates
|
|
||||||
# ManagementInterfaceDefaultRoute: 10.0.1.1
|
|
||||||
# Define the DNS servers (maximum 2) for the overcloud nodes
|
|
||||||
DnsServers: ["8.8.8.8","8.8.4.4"]
|
|
||||||
# List of Neutron network types for tenant networks (will be used in order)
|
|
||||||
NeutronNetworkType: 'vxlan,vlan'
|
|
||||||
# The tunnel type for the tenant network (vxlan or gre). Set to '' to disable tunneling.
|
|
||||||
NeutronTunnelTypes: 'vxlan'
|
|
||||||
# Neutron VLAN ranges per network, for example 'datacentre:1:499,tenant:500:1000':
|
|
||||||
NeutronNetworkVLANRanges: 'datacentre:1:1000'
|
|
||||||
# Customize bonding options, e.g. "mode=4 lacp_rate=1 updelay=1000 miimon=100"
|
|
||||||
# for Linux bonds w/LACP, or "bond_mode=active-backup" for OVS active/backup.
|
|
||||||
BondInterfaceOvsOptions: "bond_mode=active-backup"
|
|
|
@ -6,6 +6,11 @@
|
||||||
{%- endif -%}
|
{%- endif -%}
|
||||||
{%- endfor -%}
|
{%- endfor -%}
|
||||||
{%- set primary_role_name = primary_role[0].name -%}
|
{%- set primary_role_name = primary_role[0].name -%}
|
||||||
|
# NOTE: This template is now deprecated, and is only included for compatibility
|
||||||
|
# when upgrading a deployment where this template was originally used. For new
|
||||||
|
# deployments, set "ipv6: true" on desired networks in network_data.yaml, and
|
||||||
|
# include network-isolation.yaml.
|
||||||
|
#
|
||||||
# Enable the creation of Neutron networks for isolated Overcloud
|
# Enable the creation of Neutron networks for isolated Overcloud
|
||||||
# traffic and configure each role to assign ports (related
|
# traffic and configure each role to assign ports (related
|
||||||
# to that role) on these networks.
|
# to that role) on these networks.
|
||||||
|
|
|
@ -16,30 +16,12 @@ parameters:
|
||||||
default: ''
|
default: ''
|
||||||
description: IP address/subnet on the ctlplane network
|
description: IP address/subnet on the ctlplane network
|
||||||
type: string
|
type: string
|
||||||
ExternalIpSubnet:
|
{%- for network in networks %}
|
||||||
|
{{network.name}}IpSubnet:
|
||||||
default: ''
|
default: ''
|
||||||
description: IP address/subnet on the external network
|
description: IP address/subnet on the {{network.name_lower}} 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:
|
|
||||||
default: ''
|
|
||||||
description: IP address/subnet on the management network
|
|
||||||
type: string
|
type: string
|
||||||
|
{%- endfor %}
|
||||||
resources:
|
resources:
|
||||||
OsNetConfigImpl:
|
OsNetConfigImpl:
|
||||||
type: OS::Heat::SoftwareConfig
|
type: OS::Heat::SoftwareConfig
|
||||||
|
@ -71,4 +53,3 @@ outputs:
|
||||||
description: The OsNetConfigImpl resource.
|
description: The OsNetConfigImpl resource.
|
||||||
value:
|
value:
|
||||||
get_resource: OsNetConfigImpl
|
get_resource: OsNetConfigImpl
|
||||||
|
|
|
@ -1,35 +1,17 @@
|
||||||
heat_template_version: queens
|
heat_template_version: queens
|
||||||
description: >
|
description: >
|
||||||
Software Config to drive os-net-config for a simple bridge.
|
Software Config to drive os-net-config for a simple interface on a bridge.
|
||||||
parameters:
|
parameters:
|
||||||
ControlPlaneIp:
|
ControlPlaneIp:
|
||||||
default: ''
|
default: ''
|
||||||
description: IP address/subnet on the ctlplane network
|
description: IP address/subnet on the ctlplane network
|
||||||
type: string
|
type: string
|
||||||
ExternalIpSubnet:
|
{%- for network in networks %}
|
||||||
|
{{network.name}}IpSubnet:
|
||||||
default: ''
|
default: ''
|
||||||
description: IP address/subnet on the external network
|
description: IP address/subnet on the {{network.name_lower}} 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:
|
|
||||||
default: ''
|
|
||||||
description: IP address/subnet on the management network
|
|
||||||
type: string
|
type: string
|
||||||
|
{%- endfor %}
|
||||||
resources:
|
resources:
|
||||||
OsNetConfigImpl:
|
OsNetConfigImpl:
|
||||||
type: OS::Heat::SoftwareConfig
|
type: OS::Heat::SoftwareConfig
|
|
@ -1,35 +1,17 @@
|
||||||
heat_template_version: queens
|
heat_template_version: queens
|
||||||
description: >
|
description: >
|
||||||
Software Config to drive os-net-config for a simple bridge.
|
Software Config to drive os-net-config for a simple linux bridge.
|
||||||
parameters:
|
parameters:
|
||||||
ControlPlaneIp:
|
ControlPlaneIp:
|
||||||
default: ''
|
default: ''
|
||||||
description: IP address/subnet on the ctlplane network
|
description: IP address/subnet on the ctlplane network
|
||||||
type: string
|
type: string
|
||||||
ExternalIpSubnet:
|
{%- for network in networks %}
|
||||||
|
{{network.name}}IpSubnet:
|
||||||
default: ''
|
default: ''
|
||||||
description: IP address/subnet on the external network
|
description: IP address/subnet on the {{network.name_lower}} 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:
|
|
||||||
default: ''
|
|
||||||
description: IP address/subnet on the management network
|
|
||||||
type: string
|
type: string
|
||||||
|
{%- endfor %}
|
||||||
ControlPlaneDefaultRoute: # Override this via parameter_defaults
|
ControlPlaneDefaultRoute: # Override this via parameter_defaults
|
||||||
description: The default route of the control plane network.
|
description: The default route of the control plane network.
|
||||||
type: string
|
type: string
|
|
@ -0,0 +1,29 @@
|
||||||
|
heat_template_version: queens
|
||||||
|
|
||||||
|
description: >
|
||||||
|
Software Config to no-op for os-net-config. Using this will allow you
|
||||||
|
to use the parameter driven (init-neutron-ovs) configuration instead.
|
||||||
|
|
||||||
|
parameters:
|
||||||
|
ControlPlaneIp:
|
||||||
|
default: ''
|
||||||
|
description: IP address/subnet on the ctlplane network
|
||||||
|
type: string
|
||||||
|
{%- for network in networks %}
|
||||||
|
{{network.name}}IpSubnet:
|
||||||
|
default: ''
|
||||||
|
description: IP address/subnet on the {{network.name_lower}} network
|
||||||
|
type: string
|
||||||
|
{%- endfor %}
|
||||||
|
|
||||||
|
resources:
|
||||||
|
OsNetConfigImpl:
|
||||||
|
type: OS::Heat::StructuredConfig
|
||||||
|
properties:
|
||||||
|
group: apply-config
|
||||||
|
config: {}
|
||||||
|
|
||||||
|
outputs:
|
||||||
|
OS::stack_id:
|
||||||
|
description: The OsNetConfigImpl resource.
|
||||||
|
value: {get_resource: OsNetConfigImpl}
|
|
@ -1,47 +0,0 @@
|
||||||
heat_template_version: queens
|
|
||||||
|
|
||||||
description: >
|
|
||||||
Software Config to no-op for os-net-config. Using this will allow you
|
|
||||||
to use the parameter driven (init-neutron-ovs) configuration instead.
|
|
||||||
|
|
||||||
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
|
|
||||||
ManagementIpSubnet:
|
|
||||||
default: ''
|
|
||||||
description: IP address/subnet on the management network
|
|
||||||
type: string
|
|
||||||
|
|
||||||
resources:
|
|
||||||
OsNetConfigImpl:
|
|
||||||
type: OS::Heat::StructuredConfig
|
|
||||||
properties:
|
|
||||||
group: apply-config
|
|
||||||
config: {}
|
|
||||||
|
|
||||||
outputs:
|
|
||||||
OS::stack_id:
|
|
||||||
description: The OsNetConfigImpl resource.
|
|
||||||
value: {get_resource: OsNetConfigImpl}
|
|
|
@ -1,35 +1,18 @@
|
||||||
heat_template_version: queens
|
heat_template_version: queens
|
||||||
description: >
|
description: >
|
||||||
Software Config to drive os-net-config for a simple bridge configured with a static IP address for the ctlplane network.
|
Software Config to drive os-net-config for a simple bridge configured with
|
||||||
|
external DHCP and a static IP address for the ctlplane network.
|
||||||
parameters:
|
parameters:
|
||||||
ControlPlaneIp:
|
ControlPlaneIp:
|
||||||
default: ''
|
default: ''
|
||||||
description: IP address/subnet on the ctlplane network
|
description: IP address/subnet on the ctlplane network
|
||||||
type: string
|
type: string
|
||||||
ExternalIpSubnet:
|
{%- for network in networks %}
|
||||||
|
{{network.name}}IpSubnet:
|
||||||
default: ''
|
default: ''
|
||||||
description: IP address/subnet on the external network
|
description: IP address/subnet on the {{network.name_lower}} 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:
|
|
||||||
default: ''
|
|
||||||
description: IP address/subnet on the management network
|
|
||||||
type: string
|
type: string
|
||||||
|
{%- endfor %}
|
||||||
ControlPlaneSubnetCidr: # Override this via parameter_defaults
|
ControlPlaneSubnetCidr: # Override this via parameter_defaults
|
||||||
default: '24'
|
default: '24'
|
||||||
description: The subnet CIDR of the control plane network.
|
description: The subnet CIDR of the control plane network.
|
||||||
|
@ -84,4 +67,3 @@ outputs:
|
||||||
description: The OsNetConfigImpl resource.
|
description: The OsNetConfigImpl resource.
|
||||||
value:
|
value:
|
||||||
get_resource: OsNetConfigImpl
|
get_resource: OsNetConfigImpl
|
||||||
|
|
|
@ -1,35 +1,18 @@
|
||||||
heat_template_version: queens
|
heat_template_version: queens
|
||||||
description: >
|
description: >
|
||||||
Software Config to drive os-net-config for a simple bridge configured with a static IP address for the ctlplane network.
|
Software Config to drive os-net-config for a simple bridge configured with a
|
||||||
|
static IP address for the ctlplane network.
|
||||||
parameters:
|
parameters:
|
||||||
ControlPlaneIp:
|
ControlPlaneIp:
|
||||||
default: ''
|
default: ''
|
||||||
description: IP address/subnet on the ctlplane network
|
description: IP address/subnet on the ctlplane network
|
||||||
type: string
|
type: string
|
||||||
ExternalIpSubnet:
|
{%- for network in networks %}
|
||||||
|
{{network.name}}IpSubnet:
|
||||||
default: ''
|
default: ''
|
||||||
description: IP address/subnet on the external network
|
description: IP address/subnet on the {{network.name_lower}} 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:
|
|
||||||
default: ''
|
|
||||||
description: IP address/subnet on the management network
|
|
||||||
type: string
|
type: string
|
||||||
|
{%- endfor %}
|
||||||
ControlPlaneSubnetCidr: # Override this via parameter_defaults
|
ControlPlaneSubnetCidr: # Override this via parameter_defaults
|
||||||
default: '24'
|
default: '24'
|
||||||
description: The subnet CIDR of the control plane network.
|
description: The subnet CIDR of the control plane network.
|
|
@ -1,35 +1,17 @@
|
||||||
heat_template_version: queens
|
heat_template_version: queens
|
||||||
description: >
|
description: >
|
||||||
Software Config to drive os-net-config for a simple bridge.
|
Software Config to drive os-net-config for a simple interface with DHCP.
|
||||||
parameters:
|
parameters:
|
||||||
ControlPlaneIp:
|
ControlPlaneIp:
|
||||||
default: ''
|
default: ''
|
||||||
description: IP address/subnet on the ctlplane network
|
description: IP address/subnet on the ctlplane network
|
||||||
type: string
|
type: string
|
||||||
ExternalIpSubnet:
|
{%- for network in networks %}
|
||||||
|
{{network.name}}IpSubnet:
|
||||||
default: ''
|
default: ''
|
||||||
description: IP address/subnet on the external network
|
description: IP address/subnet on the {{network.name_lower}} 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:
|
|
||||||
default: ''
|
|
||||||
description: IP address/subnet on the management network
|
|
||||||
type: string
|
type: string
|
||||||
|
{%- endfor %}
|
||||||
ControlPlaneSubnetCidr: # Override this via parameter_defaults
|
ControlPlaneSubnetCidr: # Override this via parameter_defaults
|
||||||
default: '24'
|
default: '24'
|
||||||
description: The subnet CIDR of the control plane network.
|
description: The subnet CIDR of the control plane network.
|
|
@ -1,35 +1,18 @@
|
||||||
heat_template_version: queens
|
heat_template_version: queens
|
||||||
description: >
|
description: >
|
||||||
Software Config to drive os-net-config for a simple bridge configured with a static IP address for the ctlplane network.
|
Software Config to drive os-net-config for a simple bridge configured with a
|
||||||
|
static IP address for the ctlplane network.
|
||||||
parameters:
|
parameters:
|
||||||
ControlPlaneIp:
|
ControlPlaneIp:
|
||||||
default: ''
|
default: ''
|
||||||
description: IP address/subnet on the ctlplane network
|
description: IP address/subnet on the ctlplane network
|
||||||
type: string
|
type: string
|
||||||
ExternalIpSubnet:
|
{%- for network in networks %}
|
||||||
|
{{network.name}}IpSubnet:
|
||||||
default: ''
|
default: ''
|
||||||
description: IP address/subnet on the external network
|
description: IP address/subnet on the {{network.name_lower}} 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:
|
|
||||||
default: ''
|
|
||||||
description: IP address/subnet on the management network
|
|
||||||
type: string
|
type: string
|
||||||
|
{%- endfor %}
|
||||||
ControlPlaneSubnetCidr: # Override this via parameter_defaults
|
ControlPlaneSubnetCidr: # Override this via parameter_defaults
|
||||||
default: '24'
|
default: '24'
|
||||||
description: The subnet CIDR of the control plane network.
|
description: The subnet CIDR of the control plane network.
|
|
@ -1,5 +1,5 @@
|
||||||
This directory contains Heat templates to help configure
|
This directory contains Heat templates to help configure
|
||||||
Vlans on a bonded pair of NICs for each Overcloud role.
|
VLANs on a bonded pair of NICs for each Overcloud role.
|
||||||
|
|
||||||
There are two versions of the controller role template, one with
|
There are two versions of the controller role template, one with
|
||||||
an external network interface, and another without. If the
|
an external network interface, and another without. If the
|
||||||
|
@ -33,8 +33,10 @@ Same as above except set the following value for the controller role:
|
||||||
Configuration with System Management Network
|
Configuration with System Management Network
|
||||||
--------------------------------------------
|
--------------------------------------------
|
||||||
|
|
||||||
To enable the optional System Management network, create a Heat environment
|
The Management network is included for upgrade compatibility with
|
||||||
that looks something like this:
|
previous versions, but disabled. To enable the optional System
|
||||||
|
Management network, create a Heat environment that looks something like
|
||||||
|
this:
|
||||||
|
|
||||||
resource\_registry:
|
resource\_registry:
|
||||||
OS::TripleO::Network::Management: ../network/management.yaml
|
OS::TripleO::Network::Management: ../network/management.yaml
|
||||||
|
@ -47,3 +49,9 @@ that looks something like this:
|
||||||
Or use this Heat environment file:
|
Or use this Heat environment file:
|
||||||
|
|
||||||
environments/network-management.yaml
|
environments/network-management.yaml
|
||||||
|
|
||||||
|
Or, enable the Management network in network_data.yaml, and add the network
|
||||||
|
to the list of networks used by each role in the role definition file
|
||||||
|
(e.g. roles_data.yaml). Refer to installation documentation for procedure
|
||||||
|
to generate a role file for custom roles.
|
||||||
|
|
||||||
|
|
|
@ -1,165 +0,0 @@
|
||||||
heat_template_version: queens
|
|
||||||
description: >
|
|
||||||
Software Config to drive os-net-config with 2 bonded nics on a bridge with VLANs attached 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
|
|
||||||
ManagementIpSubnet: # Only populated when including environments/network-management.yaml
|
|
||||||
default: ''
|
|
||||||
description: IP address/subnet on the management network
|
|
||||||
type: string
|
|
||||||
BondInterfaceOvsOptions:
|
|
||||||
default: ''
|
|
||||||
description: 'The ovs_options or bonding_options string for the bond
|
|
||||||
interface. Set things like lacp=active and/or bond_mode=balance-slb
|
|
||||||
for OVS bonds or like mode=4 for Linux bonds using this option.'
|
|
||||||
type: string
|
|
||||||
constraints:
|
|
||||||
- allowed_pattern: ^((?!balance.tcp).)*$
|
|
||||||
description: 'The balance-tcp bond mode is known to cause packet loss and
|
|
||||||
should not be used in BondInterfaceOvsOptions.'
|
|
||||||
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
|
|
||||||
ManagementNetworkVlanID:
|
|
||||||
default: 60
|
|
||||||
description: Vlan ID for the management 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 default route of the control plane network.
|
|
||||||
type: string
|
|
||||||
ExternalInterfaceDefaultRoute: # Not used by default in this template
|
|
||||||
default: 10.0.0.1
|
|
||||||
description: The default route of the external network.
|
|
||||||
type: string
|
|
||||||
ManagementInterfaceDefaultRoute: # Commented out by default in this template
|
|
||||||
default: unset
|
|
||||||
description: The default route of the management 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: comma_delimited_list
|
|
||||||
EC2MetadataIp: # Override this via parameter_defaults
|
|
||||||
description: The IP address of the EC2 metadata server.
|
|
||||||
type: string
|
|
||||||
resources:
|
|
||||||
OsNetConfigImpl:
|
|
||||||
type: OS::Heat::SoftwareConfig
|
|
||||||
properties:
|
|
||||||
group: script
|
|
||||||
config:
|
|
||||||
str_replace:
|
|
||||||
template:
|
|
||||||
get_file: ../../scripts/run-os-net-config.sh
|
|
||||||
params:
|
|
||||||
$network_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
|
|
||||||
- default: true
|
|
||||||
next_hop:
|
|
||||||
get_param: ControlPlaneDefaultRoute
|
|
||||||
- type: ovs_bridge
|
|
||||||
name: br-bond
|
|
||||||
members:
|
|
||||||
- type: ovs_bond
|
|
||||||
name: bond1
|
|
||||||
ovs_options:
|
|
||||||
get_param: BondInterfaceOvsOptions
|
|
||||||
members:
|
|
||||||
- type: interface
|
|
||||||
name: nic2
|
|
||||||
primary: true
|
|
||||||
- type: interface
|
|
||||||
name: nic3
|
|
||||||
- type: vlan
|
|
||||||
device: bond1
|
|
||||||
vlan_id:
|
|
||||||
get_param: StorageNetworkVlanID
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: StorageIpSubnet
|
|
||||||
- type: vlan
|
|
||||||
device: bond1
|
|
||||||
vlan_id:
|
|
||||||
get_param: StorageMgmtNetworkVlanID
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: StorageMgmtIpSubnet
|
|
||||||
# Uncomment when including environments/network-management.yaml
|
|
||||||
# If setting default route on the Management interface, comment
|
|
||||||
# out the default route on the Control Plane.
|
|
||||||
#-
|
|
||||||
# type: vlan
|
|
||||||
# device: bond1
|
|
||||||
# vlan_id: {get_param: ManagementNetworkVlanID}
|
|
||||||
# addresses:
|
|
||||||
# -
|
|
||||||
# ip_netmask: {get_param: ManagementIpSubnet}
|
|
||||||
# routes:
|
|
||||||
# -
|
|
||||||
# default: true
|
|
||||||
# next_hop: {get_param: ManagementInterfaceDefaultRoute}
|
|
||||||
outputs:
|
|
||||||
OS::stack_id:
|
|
||||||
description: The OsNetConfigImpl resource.
|
|
||||||
value:
|
|
||||||
get_resource: OsNetConfigImpl
|
|
||||||
|
|
|
@ -1,172 +0,0 @@
|
||||||
heat_template_version: queens
|
|
||||||
description: >
|
|
||||||
Software Config to drive os-net-config with 2 bonded nics on a bridge with VLANs attached 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
|
|
||||||
ManagementIpSubnet: # Only populated when including environments/network-management.yaml
|
|
||||||
default: ''
|
|
||||||
description: IP address/subnet on the management network
|
|
||||||
type: string
|
|
||||||
BondInterfaceOvsOptions:
|
|
||||||
default: ''
|
|
||||||
description: 'The ovs_options or bonding_options string for the bond
|
|
||||||
interface. Set things like lacp=active and/or bond_mode=balance-slb
|
|
||||||
for OVS bonds or like mode=4 for Linux bonds using this option.'
|
|
||||||
type: string
|
|
||||||
constraints:
|
|
||||||
- allowed_pattern: ^((?!balance.tcp).)*$
|
|
||||||
description: 'The balance-tcp bond mode is known to cause packet loss and
|
|
||||||
should not be used in BondInterfaceOvsOptions.'
|
|
||||||
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
|
|
||||||
ManagementNetworkVlanID:
|
|
||||||
default: 60
|
|
||||||
description: Vlan ID for the management 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 default route of the control plane network.
|
|
||||||
type: string
|
|
||||||
ExternalInterfaceDefaultRoute: # Not used by default in this template
|
|
||||||
default: 10.0.0.1
|
|
||||||
description: The default route of the external network.
|
|
||||||
type: string
|
|
||||||
ManagementInterfaceDefaultRoute: # Commented out by default in this template
|
|
||||||
default: unset
|
|
||||||
description: The default route of the management 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: comma_delimited_list
|
|
||||||
EC2MetadataIp: # Override this via parameter_defaults
|
|
||||||
description: The IP address of the EC2 metadata server.
|
|
||||||
type: string
|
|
||||||
resources:
|
|
||||||
OsNetConfigImpl:
|
|
||||||
type: OS::Heat::SoftwareConfig
|
|
||||||
properties:
|
|
||||||
group: script
|
|
||||||
config:
|
|
||||||
str_replace:
|
|
||||||
template:
|
|
||||||
get_file: ../../scripts/run-os-net-config.sh
|
|
||||||
params:
|
|
||||||
$network_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
|
|
||||||
- default: true
|
|
||||||
next_hop:
|
|
||||||
get_param: ControlPlaneDefaultRoute
|
|
||||||
- type: ovs_bridge
|
|
||||||
name: br-bond
|
|
||||||
members:
|
|
||||||
- type: ovs_bond
|
|
||||||
name: bond1
|
|
||||||
ovs_options:
|
|
||||||
get_param: BondInterfaceOvsOptions
|
|
||||||
members:
|
|
||||||
- type: interface
|
|
||||||
name: nic2
|
|
||||||
primary: true
|
|
||||||
- type: interface
|
|
||||||
name: nic3
|
|
||||||
- type: vlan
|
|
||||||
device: bond1
|
|
||||||
vlan_id:
|
|
||||||
get_param: InternalApiNetworkVlanID
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: InternalApiIpSubnet
|
|
||||||
- type: vlan
|
|
||||||
device: bond1
|
|
||||||
vlan_id:
|
|
||||||
get_param: StorageNetworkVlanID
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: StorageIpSubnet
|
|
||||||
- type: vlan
|
|
||||||
device: bond1
|
|
||||||
vlan_id:
|
|
||||||
get_param: StorageMgmtNetworkVlanID
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: StorageMgmtIpSubnet
|
|
||||||
# Uncomment when including environments/network-management.yaml
|
|
||||||
# If setting default route on the Management interface, comment
|
|
||||||
# out the default route on the Control Plane.
|
|
||||||
#-
|
|
||||||
# type: vlan
|
|
||||||
# device: bond1
|
|
||||||
# vlan_id: {get_param: ManagementNetworkVlanID}
|
|
||||||
# addresses:
|
|
||||||
# -
|
|
||||||
# ip_netmask: {get_param: ManagementIpSubnet}
|
|
||||||
# routes:
|
|
||||||
# -
|
|
||||||
# default: true
|
|
||||||
# next_hop: {get_param: ManagementInterfaceDefaultRoute}
|
|
||||||
outputs:
|
|
||||||
OS::stack_id:
|
|
||||||
description: The OsNetConfigImpl resource.
|
|
||||||
value:
|
|
||||||
get_resource: OsNetConfigImpl
|
|
||||||
|
|
|
@ -1,64 +1,27 @@
|
||||||
|
# NOTE: This legacy template configures the Compute role for using OVS DPDK.
|
||||||
|
# This template is included for upgrades that originally used this file.
|
||||||
|
# If you are deploying a new installation, you should enable the ComputeOvsDpdk
|
||||||
|
# role and use compute-ovs-dpdk.yaml instead.
|
||||||
heat_template_version: queens
|
heat_template_version: queens
|
||||||
description: >
|
description: >
|
||||||
Software Config to drive os-net-config with OVS-DPDK bond in addition to the 2 bonded NICs with VLANs attached for the compute role.
|
Software Config to drive os-net-config to configure VLANs for the compute role with DPDK.
|
||||||
parameters:
|
parameters:
|
||||||
ControlPlaneIp:
|
ControlPlaneIp:
|
||||||
default: ''
|
default: ''
|
||||||
description: IP address/subnet on the ctlplane network
|
description: IP address/subnet on the ctlplane network
|
||||||
type: string
|
type: string
|
||||||
ExternalIpSubnet:
|
{%- for network in networks %}
|
||||||
|
{{network.name}}IpSubnet:
|
||||||
default: ''
|
default: ''
|
||||||
description: IP address/subnet on the external network
|
description: IP address/subnet on the {{network.name_lower}} network
|
||||||
type: string
|
type: string
|
||||||
InternalApiIpSubnet:
|
{%- endfor %}
|
||||||
default: ''
|
{%- for network in networks %}
|
||||||
description: IP address/subnet on the internal_api network
|
{{network.name}}NetworkVlanID:
|
||||||
type: string
|
default: {{network.vlan}}
|
||||||
StorageIpSubnet:
|
description: Vlan ID for the {{network.name_lower}} network traffic.
|
||||||
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
|
|
||||||
BondInterfaceOvsOptions:
|
|
||||||
default: ''
|
|
||||||
description: The bonding_options string for the bond interface. Set things like lacp=active and/or bond_mode=balance-slb using
|
|
||||||
this option. The default mode is active-backup.
|
|
||||||
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
|
|
||||||
ManagementNetworkVlanID:
|
|
||||||
default: 60
|
|
||||||
description: Vlan ID for the management network traffic.
|
|
||||||
type: number
|
type: number
|
||||||
|
{%- endfor %}
|
||||||
ControlPlaneSubnetCidr: # Override this via parameter_defaults
|
ControlPlaneSubnetCidr: # Override this via parameter_defaults
|
||||||
default: '24'
|
default: '24'
|
||||||
description: The subnet CIDR of the control plane network.
|
description: The subnet CIDR of the control plane network.
|
||||||
|
@ -66,14 +29,19 @@ parameters:
|
||||||
ControlPlaneDefaultRoute: # Override this via parameter_defaults
|
ControlPlaneDefaultRoute: # Override this via parameter_defaults
|
||||||
description: The default route of the control plane network.
|
description: The default route of the control plane network.
|
||||||
type: string
|
type: string
|
||||||
ExternalInterfaceDefaultRoute: # Not used by default in this template
|
{%- for network in networks %}
|
||||||
default: 10.0.0.1
|
{%- if network.ipv6|default(false) and network.gateway_ipv6|default(false) %}
|
||||||
description: The default route of the external network.
|
{{network.name}}InterfaceDefaultRoute:
|
||||||
|
default: '{{network.gateway_ipv6}}'
|
||||||
|
description: default route for the {{network.name_lower}} network
|
||||||
type: string
|
type: string
|
||||||
ManagementInterfaceDefaultRoute: # Commented out by default in this template
|
{%- elif network.gateway_ip|default(false) %}
|
||||||
default: unset
|
{{network.name}}InterfaceDefaultRoute:
|
||||||
description: The default route of the management network.
|
default: '{{network.gateway_ip}}'
|
||||||
|
description: default route for the {{network.name_lower}} network
|
||||||
type: string
|
type: string
|
||||||
|
{%- endif %}
|
||||||
|
{%- endfor %}
|
||||||
DnsServers: # Override this via parameter_defaults
|
DnsServers: # Override this via parameter_defaults
|
||||||
default: []
|
default: []
|
||||||
description: A list of DNS servers (2 max for some implementations) that will be added to resolv.conf.
|
description: A list of DNS servers (2 max for some implementations) that will be added to resolv.conf.
|
|
@ -1,175 +0,0 @@
|
||||||
heat_template_version: queens
|
|
||||||
description: >
|
|
||||||
Software Config to drive os-net-config with 2 bonded nics on a bridge with VLANs attached 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
|
|
||||||
ManagementIpSubnet: # Only populated when including environments/network-management.yaml
|
|
||||||
default: ''
|
|
||||||
description: IP address/subnet on the management network
|
|
||||||
type: string
|
|
||||||
BondInterfaceOvsOptions:
|
|
||||||
default: ''
|
|
||||||
description: 'The ovs_options or bonding_options string for the bond
|
|
||||||
interface. Set things like lacp=active and/or bond_mode=balance-slb
|
|
||||||
for OVS bonds or like mode=4 for Linux bonds using this option.'
|
|
||||||
type: string
|
|
||||||
constraints:
|
|
||||||
- allowed_pattern: ^((?!balance.tcp).)*$
|
|
||||||
description: 'The balance-tcp bond mode is known to cause packet loss and
|
|
||||||
should not be used in BondInterfaceOvsOptions.'
|
|
||||||
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
|
|
||||||
ManagementNetworkVlanID:
|
|
||||||
default: 60
|
|
||||||
description: Vlan ID for the management 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 default route of the control plane network.
|
|
||||||
type: string
|
|
||||||
ExternalInterfaceDefaultRoute: # Not used by default in this template
|
|
||||||
default: 10.0.0.1
|
|
||||||
description: The default route of the external network.
|
|
||||||
type: string
|
|
||||||
ManagementInterfaceDefaultRoute: # Commented out by default in this template
|
|
||||||
default: unset
|
|
||||||
description: The default route of the management 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: comma_delimited_list
|
|
||||||
EC2MetadataIp: # Override this via parameter_defaults
|
|
||||||
description: The IP address of the EC2 metadata server.
|
|
||||||
type: string
|
|
||||||
resources:
|
|
||||||
OsNetConfigImpl:
|
|
||||||
type: OS::Heat::SoftwareConfig
|
|
||||||
properties:
|
|
||||||
group: script
|
|
||||||
config:
|
|
||||||
str_replace:
|
|
||||||
template:
|
|
||||||
get_file: ../../scripts/run-os-net-config.sh
|
|
||||||
params:
|
|
||||||
$network_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
|
|
||||||
- default: true
|
|
||||||
next_hop:
|
|
||||||
get_param: ControlPlaneDefaultRoute
|
|
||||||
- type: ovs_bridge
|
|
||||||
name: bridge_name
|
|
||||||
members:
|
|
||||||
- type: ovs_bond
|
|
||||||
name: bond1
|
|
||||||
ovs_options:
|
|
||||||
get_param: BondInterfaceOvsOptions
|
|
||||||
members:
|
|
||||||
- type: interface
|
|
||||||
name: nic2
|
|
||||||
primary: true
|
|
||||||
- type: interface
|
|
||||||
name: nic3
|
|
||||||
- type: vlan
|
|
||||||
device: bond1
|
|
||||||
vlan_id:
|
|
||||||
get_param: InternalApiNetworkVlanID
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: InternalApiIpSubnet
|
|
||||||
- type: vlan
|
|
||||||
device: bond1
|
|
||||||
vlan_id:
|
|
||||||
get_param: StorageNetworkVlanID
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: StorageIpSubnet
|
|
||||||
# Uncomment when including environments/hyperconverged-ceph.yaml
|
|
||||||
#- type: vlan
|
|
||||||
# device: bond1
|
|
||||||
# vlan_id: {get_param: StorageMgmtNetworkVlanID}
|
|
||||||
# addresses:
|
|
||||||
# - ip_netmask: {get_param: StorageMgmtIpSubnet}
|
|
||||||
- type: vlan
|
|
||||||
device: bond1
|
|
||||||
vlan_id:
|
|
||||||
get_param: TenantNetworkVlanID
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: TenantIpSubnet
|
|
||||||
# Uncomment when including environments/network-management.yaml
|
|
||||||
# If setting default route on the Management interface, comment
|
|
||||||
# out the default route on the Control Plane.
|
|
||||||
#- type: vlan
|
|
||||||
# device: bond1
|
|
||||||
# vlan_id: {get_param: ManagementNetworkVlanID}
|
|
||||||
# addresses:
|
|
||||||
# - ip_netmask: {get_param: ManagementIpSubnet}
|
|
||||||
# routes:
|
|
||||||
# - default: true
|
|
||||||
# next_hop: {get_param: ManagementInterfaceDefaultRoute}
|
|
||||||
outputs:
|
|
||||||
OS::stack_id:
|
|
||||||
description: The OsNetConfigImpl resource.
|
|
||||||
value:
|
|
||||||
get_resource: OsNetConfigImpl
|
|
||||||
|
|
|
@ -1,3 +1,7 @@
|
||||||
|
# NOTE: This template is now deprecated, and is only included for compatibility
|
||||||
|
# when upgrading a deployment where this template was originally used. For new
|
||||||
|
# deployments, remove the External network from the Controller role and set
|
||||||
|
# default_route_networks to ['ControlPlane'].
|
||||||
heat_template_version: queens
|
heat_template_version: queens
|
||||||
description: >
|
description: >
|
||||||
Software Config to drive os-net-config with 2 bonded nics on a bridge with VLANs attached for the controller role.
|
Software Config to drive os-net-config with 2 bonded nics on a bridge with VLANs attached for the controller role.
|
||||||
|
@ -6,30 +10,12 @@ parameters:
|
||||||
default: ''
|
default: ''
|
||||||
description: IP address/subnet on the ctlplane network
|
description: IP address/subnet on the ctlplane network
|
||||||
type: string
|
type: string
|
||||||
ExternalIpSubnet:
|
{%- for network in networks %}
|
||||||
|
{{network.name}}IpSubnet:
|
||||||
default: ''
|
default: ''
|
||||||
description: IP address/subnet on the external network
|
description: IP address/subnet on the {{network.name_lower}} 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
|
type: string
|
||||||
|
{%- endfor %}
|
||||||
BondInterfaceOvsOptions:
|
BondInterfaceOvsOptions:
|
||||||
default: ''
|
default: ''
|
||||||
description: 'The ovs_options or bonding_options string for the bond
|
description: 'The ovs_options or bonding_options string for the bond
|
||||||
|
@ -40,41 +26,28 @@ parameters:
|
||||||
- allowed_pattern: ^((?!balance.tcp).)*$
|
- allowed_pattern: ^((?!balance.tcp).)*$
|
||||||
description: 'The balance-tcp bond mode is known to cause packet loss and
|
description: 'The balance-tcp bond mode is known to cause packet loss and
|
||||||
should not be used in BondInterfaceOvsOptions.'
|
should not be used in BondInterfaceOvsOptions.'
|
||||||
ExternalNetworkVlanID:
|
{%- for network in networks %}
|
||||||
default: 10
|
{{network.name}}NetworkVlanID:
|
||||||
description: Vlan ID for the external network traffic.
|
default: {{network.vlan}}
|
||||||
type: number
|
description: Vlan ID for the {{network.name_lower}} network traffic.
|
||||||
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
|
|
||||||
ManagementNetworkVlanID:
|
|
||||||
default: 60
|
|
||||||
description: Vlan ID for the management network traffic.
|
|
||||||
type: number
|
type: number
|
||||||
|
{%- endfor %}
|
||||||
ControlPlaneDefaultRoute: # Override this via parameter_defaults
|
ControlPlaneDefaultRoute: # Override this via parameter_defaults
|
||||||
description: The default route of the control plane network.
|
description: The default route of the control plane network.
|
||||||
type: string
|
type: string
|
||||||
ExternalInterfaceDefaultRoute:
|
{%- for network in networks %}
|
||||||
default: 10.0.0.1
|
{%- if network.ipv6|default(false) and network.gateway_ipv6|default(false) %}
|
||||||
description: default route for the external network
|
{{network.name}}InterfaceDefaultRoute:
|
||||||
|
default: '{{network.gateway_ipv6}}'
|
||||||
|
description: default route for the {{network.name_lower}} network
|
||||||
type: string
|
type: string
|
||||||
ManagementInterfaceDefaultRoute: # Commented out by default in this template
|
{%- elif network.gateway_ip|default(false) %}
|
||||||
default: unset
|
{{network.name}}InterfaceDefaultRoute:
|
||||||
description: The default route of the management network.
|
default: '{{network.gateway_ip}}'
|
||||||
|
description: default route for the {{network.name_lower}} network
|
||||||
type: string
|
type: string
|
||||||
|
{%- endif %}
|
||||||
|
{%- endfor %}
|
||||||
ControlPlaneSubnetCidr: # Override this via parameter_defaults
|
ControlPlaneSubnetCidr: # Override this via parameter_defaults
|
||||||
default: '24'
|
default: '24'
|
||||||
description: The subnet CIDR of the control plane network.
|
description: The subnet CIDR of the control plane network.
|
||||||
|
@ -129,28 +102,24 @@ resources:
|
||||||
- type: interface
|
- type: interface
|
||||||
name: nic3
|
name: nic3
|
||||||
- type: vlan
|
- type: vlan
|
||||||
device: bond1
|
|
||||||
vlan_id:
|
vlan_id:
|
||||||
get_param: InternalApiNetworkVlanID
|
get_param: InternalApiNetworkVlanID
|
||||||
addresses:
|
addresses:
|
||||||
- ip_netmask:
|
- ip_netmask:
|
||||||
get_param: InternalApiIpSubnet
|
get_param: InternalApiIpSubnet
|
||||||
- type: vlan
|
- type: vlan
|
||||||
device: bond1
|
|
||||||
vlan_id:
|
vlan_id:
|
||||||
get_param: StorageNetworkVlanID
|
get_param: StorageNetworkVlanID
|
||||||
addresses:
|
addresses:
|
||||||
- ip_netmask:
|
- ip_netmask:
|
||||||
get_param: StorageIpSubnet
|
get_param: StorageIpSubnet
|
||||||
- type: vlan
|
- type: vlan
|
||||||
device: bond1
|
|
||||||
vlan_id:
|
vlan_id:
|
||||||
get_param: StorageMgmtNetworkVlanID
|
get_param: StorageMgmtNetworkVlanID
|
||||||
addresses:
|
addresses:
|
||||||
- ip_netmask:
|
- ip_netmask:
|
||||||
get_param: StorageMgmtIpSubnet
|
get_param: StorageMgmtIpSubnet
|
||||||
- type: vlan
|
- type: vlan
|
||||||
device: bond1
|
|
||||||
vlan_id:
|
vlan_id:
|
||||||
get_param: TenantNetworkVlanID
|
get_param: TenantNetworkVlanID
|
||||||
addresses:
|
addresses:
|
|
@ -8,30 +8,12 @@ parameters:
|
||||||
default: ''
|
default: ''
|
||||||
description: IP address/subnet on the ctlplane network
|
description: IP address/subnet on the ctlplane network
|
||||||
type: string
|
type: string
|
||||||
ExternalIpSubnet:
|
{%- for network in networks %}
|
||||||
|
{{network.name}}IpSubnet:
|
||||||
default: ''
|
default: ''
|
||||||
description: IP address/subnet on the external network
|
description: IP address/subnet on the {{network.name_lower}} 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
|
type: string
|
||||||
|
{%- endfor %}
|
||||||
BondInterfaceOvsOptions:
|
BondInterfaceOvsOptions:
|
||||||
default: bond_mode=active-backup
|
default: bond_mode=active-backup
|
||||||
description: 'The ovs_options or bonding_options string for the bond
|
description: 'The ovs_options or bonding_options string for the bond
|
||||||
|
@ -42,30 +24,12 @@ parameters:
|
||||||
- allowed_pattern: ^((?!balance.tcp).)*$
|
- allowed_pattern: ^((?!balance.tcp).)*$
|
||||||
description: 'The balance-tcp bond mode is known to cause packet loss and
|
description: 'The balance-tcp bond mode is known to cause packet loss and
|
||||||
should not be used in BondInterfaceOvsOptions.'
|
should not be used in BondInterfaceOvsOptions.'
|
||||||
ExternalNetworkVlanID:
|
{%- for network in networks %}
|
||||||
default: 10
|
{{network.name}}NetworkVlanID:
|
||||||
description: Vlan ID for the external network traffic.
|
default: {{network.vlan}}
|
||||||
type: number
|
description: Vlan ID for the {{network.name_lower}} network traffic.
|
||||||
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
|
|
||||||
ManagementNetworkVlanID:
|
|
||||||
default: 60
|
|
||||||
description: Vlan ID for the management network traffic.
|
|
||||||
type: number
|
type: number
|
||||||
|
{%- endfor %}
|
||||||
ControlPlaneSubnetCidr: # Override this via parameter_defaults
|
ControlPlaneSubnetCidr: # Override this via parameter_defaults
|
||||||
default: '24'
|
default: '24'
|
||||||
description: The subnet CIDR of the control plane network.
|
description: The subnet CIDR of the control plane network.
|
||||||
|
@ -73,14 +37,19 @@ parameters:
|
||||||
ControlPlaneDefaultRoute: # Override this via parameter_defaults
|
ControlPlaneDefaultRoute: # Override this via parameter_defaults
|
||||||
description: The default route of the control plane network.
|
description: The default route of the control plane network.
|
||||||
type: string
|
type: string
|
||||||
ExternalInterfaceDefaultRoute:
|
{%- for network in networks %}
|
||||||
default: 10.0.0.1
|
{%- if network.ipv6|default(false) and network.gateway_ipv6|default(false) %}
|
||||||
description: default route for the external network
|
{{network.name}}InterfaceDefaultRoute:
|
||||||
|
default: '{{network.gateway_ipv6}}'
|
||||||
|
description: default route for the {{network.name_lower}} network
|
||||||
type: string
|
type: string
|
||||||
ManagementInterfaceDefaultRoute: # Commented out by default in this template
|
{%- elif network.gateway_ip|default(false) %}
|
||||||
default: unset
|
{{network.name}}InterfaceDefaultRoute:
|
||||||
description: The default route of the management network.
|
default: '{{network.gateway_ip}}'
|
||||||
|
description: default route for the {{network.name_lower}} network
|
||||||
type: string
|
type: string
|
||||||
|
{%- endif %}
|
||||||
|
{%- endfor %}
|
||||||
DnsServers: # Override this via parameter_defaults
|
DnsServers: # Override this via parameter_defaults
|
||||||
default: []
|
default: []
|
||||||
description: A list of DNS servers (2 max for some implementations) that will be added to resolv.conf.
|
description: A list of DNS servers (2 max for some implementations) that will be added to resolv.conf.
|
||||||
|
@ -132,7 +101,6 @@ resources:
|
||||||
- type: interface
|
- type: interface
|
||||||
name: nic3
|
name: nic3
|
||||||
- type: vlan
|
- type: vlan
|
||||||
device: bond1
|
|
||||||
vlan_id:
|
vlan_id:
|
||||||
get_param: ExternalNetworkVlanID
|
get_param: ExternalNetworkVlanID
|
||||||
addresses:
|
addresses:
|
||||||
|
@ -143,28 +111,24 @@ resources:
|
||||||
next_hop:
|
next_hop:
|
||||||
get_param: ExternalInterfaceDefaultRoute
|
get_param: ExternalInterfaceDefaultRoute
|
||||||
- type: vlan
|
- type: vlan
|
||||||
device: bond1
|
|
||||||
vlan_id:
|
vlan_id:
|
||||||
get_param: InternalApiNetworkVlanID
|
get_param: InternalApiNetworkVlanID
|
||||||
addresses:
|
addresses:
|
||||||
- ip_netmask:
|
- ip_netmask:
|
||||||
get_param: InternalApiIpSubnet
|
get_param: InternalApiIpSubnet
|
||||||
- type: vlan
|
- type: vlan
|
||||||
device: bond1
|
|
||||||
vlan_id:
|
vlan_id:
|
||||||
get_param: StorageNetworkVlanID
|
get_param: StorageNetworkVlanID
|
||||||
addresses:
|
addresses:
|
||||||
- ip_netmask:
|
- ip_netmask:
|
||||||
get_param: StorageIpSubnet
|
get_param: StorageIpSubnet
|
||||||
- type: vlan
|
- type: vlan
|
||||||
device: bond1
|
|
||||||
vlan_id:
|
vlan_id:
|
||||||
get_param: StorageMgmtNetworkVlanID
|
get_param: StorageMgmtNetworkVlanID
|
||||||
addresses:
|
addresses:
|
||||||
- ip_netmask:
|
- ip_netmask:
|
||||||
get_param: StorageMgmtIpSubnet
|
get_param: StorageMgmtIpSubnet
|
||||||
- type: vlan
|
- type: vlan
|
||||||
device: bond1
|
|
||||||
vlan_id:
|
vlan_id:
|
||||||
get_param: TenantNetworkVlanID
|
get_param: TenantNetworkVlanID
|
||||||
addresses:
|
addresses:
|
||||||
|
@ -176,7 +140,6 @@ resources:
|
||||||
# make the External API unreachable from remote subnets.
|
# make the External API unreachable from remote subnets.
|
||||||
#-
|
#-
|
||||||
# type: vlan
|
# type: vlan
|
||||||
# device: bond1
|
|
||||||
# vlan_id: {get_param: ManagementNetworkVlanID}
|
# vlan_id: {get_param: ManagementNetworkVlanID}
|
||||||
# addresses:
|
# addresses:
|
||||||
# -
|
# -
|
|
@ -1,188 +0,0 @@
|
||||||
heat_template_version: queens
|
|
||||||
description: >
|
|
||||||
Software Config to drive os-net-config with 2 bonded nics on a bridge with VLANs attached 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
|
|
||||||
ManagementIpSubnet: # Only populated when including environments/network-management.yaml
|
|
||||||
default: ''
|
|
||||||
description: IP address/subnet on the management network
|
|
||||||
type: string
|
|
||||||
BondInterfaceOvsOptions:
|
|
||||||
default: bond_mode=active-backup
|
|
||||||
description: 'The ovs_options or bonding_options string for the bond
|
|
||||||
interface. Set things like lacp=active and/or bond_mode=balance-slb
|
|
||||||
for OVS bonds or like mode=4 for Linux bonds using this option.'
|
|
||||||
type: string
|
|
||||||
constraints:
|
|
||||||
- allowed_pattern: ^((?!balance.tcp).)*$
|
|
||||||
description: 'The balance-tcp bond mode is known to cause packet loss and
|
|
||||||
should not be used in BondInterfaceOvsOptions.'
|
|
||||||
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
|
|
||||||
ManagementNetworkVlanID:
|
|
||||||
default: 60
|
|
||||||
description: Vlan ID for the management network traffic.
|
|
||||||
type: number
|
|
||||||
ControlPlaneDefaultRoute: # Override this via parameter_defaults
|
|
||||||
description: The default route of the control plane network.
|
|
||||||
type: string
|
|
||||||
ExternalInterfaceDefaultRoute:
|
|
||||||
default: 10.0.0.1
|
|
||||||
description: default route for the external network
|
|
||||||
type: string
|
|
||||||
ManagementInterfaceDefaultRoute: # Commented out by default in this template
|
|
||||||
default: unset
|
|
||||||
description: The default route of the management network.
|
|
||||||
type: string
|
|
||||||
ControlPlaneSubnetCidr: # Override this via parameter_defaults
|
|
||||||
default: '24'
|
|
||||||
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: comma_delimited_list
|
|
||||||
EC2MetadataIp: # Override this via parameter_defaults
|
|
||||||
description: The IP address of the EC2 metadata server.
|
|
||||||
type: string
|
|
||||||
resources:
|
|
||||||
OsNetConfigImpl:
|
|
||||||
type: OS::Heat::SoftwareConfig
|
|
||||||
properties:
|
|
||||||
group: script
|
|
||||||
config:
|
|
||||||
str_replace:
|
|
||||||
template:
|
|
||||||
get_file: ../../scripts/run-os-net-config.sh
|
|
||||||
params:
|
|
||||||
$network_config:
|
|
||||||
network_config:
|
|
||||||
- type: interface
|
|
||||||
name: nic1
|
|
||||||
use_dhcp: false
|
|
||||||
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: ovs_bridge
|
|
||||||
name: bridge_name
|
|
||||||
dns_servers:
|
|
||||||
get_param: DnsServers
|
|
||||||
members:
|
|
||||||
- type: ovs_bond
|
|
||||||
name: bond1
|
|
||||||
ovs_options:
|
|
||||||
get_param: BondInterfaceOvsOptions
|
|
||||||
members:
|
|
||||||
- type: interface
|
|
||||||
name: nic2
|
|
||||||
primary: true
|
|
||||||
- type: interface
|
|
||||||
name: nic3
|
|
||||||
- type: vlan
|
|
||||||
device: bond1
|
|
||||||
vlan_id:
|
|
||||||
get_param: ExternalNetworkVlanID
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: ExternalIpSubnet
|
|
||||||
routes:
|
|
||||||
- default: true
|
|
||||||
next_hop:
|
|
||||||
get_param: ExternalInterfaceDefaultRoute
|
|
||||||
- type: vlan
|
|
||||||
device: bond1
|
|
||||||
vlan_id:
|
|
||||||
get_param: InternalApiNetworkVlanID
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: InternalApiIpSubnet
|
|
||||||
- type: vlan
|
|
||||||
device: bond1
|
|
||||||
vlan_id:
|
|
||||||
get_param: StorageNetworkVlanID
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: StorageIpSubnet
|
|
||||||
- type: vlan
|
|
||||||
device: bond1
|
|
||||||
vlan_id:
|
|
||||||
get_param: StorageMgmtNetworkVlanID
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: StorageMgmtIpSubnet
|
|
||||||
- type: vlan
|
|
||||||
device: bond1
|
|
||||||
vlan_id:
|
|
||||||
get_param: TenantNetworkVlanID
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: TenantIpSubnet
|
|
||||||
# Uncomment when including environments/network-management.yaml
|
|
||||||
# If setting default route on the Management interface, comment
|
|
||||||
# out the default route on the External interface. This will
|
|
||||||
# make the External API unreachable from remote subnets.
|
|
||||||
#-
|
|
||||||
# type: vlan
|
|
||||||
# device: bond1
|
|
||||||
# vlan_id: {get_param: ManagementNetworkVlanID}
|
|
||||||
# addresses:
|
|
||||||
# -
|
|
||||||
# ip_netmask: {get_param: ManagementIpSubnet}
|
|
||||||
# routes:
|
|
||||||
# -
|
|
||||||
# default: true
|
|
||||||
# next_hop: {get_param: ManagementInterfaceDefaultRoute}
|
|
||||||
outputs:
|
|
||||||
OS::stack_id:
|
|
||||||
description: The OsNetConfigImpl resource.
|
|
||||||
value:
|
|
||||||
get_resource: OsNetConfigImpl
|
|
||||||
|
|
|
@ -1,166 +0,0 @@
|
||||||
heat_template_version: queens
|
|
||||||
description: >
|
|
||||||
Software Config to drive os-net-config with 2 bonded nics on a bridge with VLANs attached for a dedicated Neutron networker 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
|
|
||||||
ManagementIpSubnet: # Only populated when including environments/network-management.yaml
|
|
||||||
default: ''
|
|
||||||
description: IP address/subnet on the management network
|
|
||||||
type: string
|
|
||||||
BondInterfaceOvsOptions:
|
|
||||||
default: bond_mode=active-backup
|
|
||||||
description: The ovs_options string for the bond interface. Set things like lacp=active and/or bond_mode=balance-slb using
|
|
||||||
this option.
|
|
||||||
type: string
|
|
||||||
constraints:
|
|
||||||
- allowed_pattern: ^((?!balance.tcp).)*$
|
|
||||||
description: 'The balance-tcp bond mode is known to cause packet loss and
|
|
||||||
should not be used in BondInterfaceOvsOptions.
|
|
||||||
'
|
|
||||||
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
|
|
||||||
ManagementNetworkVlanID:
|
|
||||||
default: 60
|
|
||||||
description: Vlan ID for the management network traffic.
|
|
||||||
type: number
|
|
||||||
ControlPlaneDefaultRoute: # Override this via parameter_defaults
|
|
||||||
description: The default route of the control plane network.
|
|
||||||
type: string
|
|
||||||
ExternalInterfaceDefaultRoute:
|
|
||||||
default: 10.0.0.1
|
|
||||||
description: default route for the external network
|
|
||||||
type: string
|
|
||||||
ManagementInterfaceDefaultRoute: # Commented out by default in this template
|
|
||||||
default: unset
|
|
||||||
description: The default route of the management network.
|
|
||||||
type: string
|
|
||||||
ControlPlaneSubnetCidr: # Override this via parameter_defaults
|
|
||||||
default: '24'
|
|
||||||
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: comma_delimited_list
|
|
||||||
EC2MetadataIp: # Override this via parameter_defaults
|
|
||||||
description: The IP address of the EC2 metadata server.
|
|
||||||
type: string
|
|
||||||
resources:
|
|
||||||
OsNetConfigImpl:
|
|
||||||
type: OS::Heat::SoftwareConfig
|
|
||||||
properties:
|
|
||||||
group: script
|
|
||||||
config:
|
|
||||||
str_replace:
|
|
||||||
template:
|
|
||||||
get_file: ../../scripts/run-os-net-config.sh
|
|
||||||
params:
|
|
||||||
$network_config:
|
|
||||||
network_config:
|
|
||||||
- type: interface
|
|
||||||
name: nic1
|
|
||||||
use_dhcp: false
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
list_join:
|
|
||||||
- /
|
|
||||||
- - get_param: ControlPlaneIp
|
|
||||||
- get_param: ControlPlaneSubnetCidr
|
|
||||||
routes:
|
|
||||||
- ip_netmask: 169.254.169.254/32
|
|
||||||
next_hop:
|
|
||||||
get_param: EC2MetadataIp
|
|
||||||
- default: true
|
|
||||||
next_hop:
|
|
||||||
get_param: ControlPlaneDefaultRoute
|
|
||||||
- type: ovs_bridge
|
|
||||||
name: bridge_name
|
|
||||||
dns_servers:
|
|
||||||
get_param: DnsServers
|
|
||||||
members:
|
|
||||||
- type: ovs_bond
|
|
||||||
name: bond1
|
|
||||||
ovs_options:
|
|
||||||
get_param: BondInterfaceOvsOptions
|
|
||||||
members:
|
|
||||||
- type: interface
|
|
||||||
name: nic2
|
|
||||||
primary: true
|
|
||||||
- type: interface
|
|
||||||
name: nic3
|
|
||||||
- type: vlan
|
|
||||||
device: bond1
|
|
||||||
vlan_id:
|
|
||||||
get_param: InternalApiNetworkVlanID
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: InternalApiIpSubnet
|
|
||||||
- type: vlan
|
|
||||||
device: bond1
|
|
||||||
vlan_id:
|
|
||||||
get_param: TenantNetworkVlanID
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: TenantIpSubnet
|
|
||||||
# Uncomment when including environments/network-management.yaml
|
|
||||||
# If setting default route on the Management interface, comment
|
|
||||||
# out the default route on the External interface. This will
|
|
||||||
# make the External API unreachable from remote subnets.
|
|
||||||
#-
|
|
||||||
# type: vlan
|
|
||||||
# device: bond1
|
|
||||||
# vlan_id: {get_param: ManagementNetworkVlanID}
|
|
||||||
# addresses:
|
|
||||||
# -
|
|
||||||
# ip_netmask: {get_param: ManagementIpSubnet}
|
|
||||||
# routes:
|
|
||||||
# -
|
|
||||||
# default: true
|
|
||||||
# next_hop: {get_param: ManagementInterfaceDefaultRoute}
|
|
||||||
outputs:
|
|
||||||
OS::stack_id:
|
|
||||||
description: The OsNetConfigImpl resource.
|
|
||||||
value:
|
|
||||||
get_resource: OsNetConfigImpl
|
|
||||||
|
|
|
@ -0,0 +1,179 @@
|
||||||
|
heat_template_version: queens
|
||||||
|
description: >
|
||||||
|
Software Config to drive os-net-config with 2 bonded nics on a bridge with VLANs attached for the {{role.name}} role.
|
||||||
|
parameters:
|
||||||
|
ControlPlaneIp:
|
||||||
|
default: ''
|
||||||
|
description: IP address/subnet on the ctlplane network
|
||||||
|
type: string
|
||||||
|
{%- for network in networks %}
|
||||||
|
{{network.name}}IpSubnet:
|
||||||
|
default: ''
|
||||||
|
description: IP address/subnet on the {{network.name_lower}} network
|
||||||
|
type: string
|
||||||
|
{%- endfor %}
|
||||||
|
BondInterfaceOvsOptions:
|
||||||
|
default: bond_mode=active-backup
|
||||||
|
description: 'The ovs_options or bonding_options string for the bond
|
||||||
|
interface. Set things like lacp=active and/or bond_mode=balance-slb
|
||||||
|
for OVS bonds or like mode=4 for Linux bonds using this option.'
|
||||||
|
type: string
|
||||||
|
constraints:
|
||||||
|
- allowed_pattern: ^((?!balance.tcp).)*$
|
||||||
|
description: 'The balance-tcp bond mode is known to cause packet loss and
|
||||||
|
should not be used in BondInterfaceOvsOptions.'
|
||||||
|
{%- for network in networks %}
|
||||||
|
{{network.name}}NetworkVlanID:
|
||||||
|
default: {{network.vlan}}
|
||||||
|
description: Vlan ID for the {{network.name_lower}} network traffic.
|
||||||
|
type: number
|
||||||
|
{%- endfor %}
|
||||||
|
ControlPlaneDefaultRoute: # Override this via parameter_defaults
|
||||||
|
description: The default route of the control plane network.
|
||||||
|
type: string
|
||||||
|
{%- for network in networks %}
|
||||||
|
{%- if network.ipv6|default(false) and network.gateway_ipv6|default(false) %}
|
||||||
|
{{network.name}}InterfaceDefaultRoute:
|
||||||
|
default: '{{network.gateway_ipv6}}'
|
||||||
|
description: default route for the {{network.name_lower}} network
|
||||||
|
type: string
|
||||||
|
{%- elif network.gateway_ip|default(false) %}
|
||||||
|
{{network.name}}InterfaceDefaultRoute:
|
||||||
|
default: '{{network.gateway_ip}}'
|
||||||
|
description: default route for the {{network.name_lower}} network
|
||||||
|
type: string
|
||||||
|
{%- endif %}
|
||||||
|
{%- endfor %}
|
||||||
|
ControlPlaneSubnetCidr: # Override this via parameter_defaults
|
||||||
|
default: '24'
|
||||||
|
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: comma_delimited_list
|
||||||
|
EC2MetadataIp: # Override this via parameter_defaults
|
||||||
|
description: The IP address of the EC2 metadata server.
|
||||||
|
type: string
|
||||||
|
{%- if role.name == 'ComputeOvsDpdk' %}
|
||||||
|
NumDpdkInterfaceRxQueues:
|
||||||
|
description: Number of Rx Queues required for DPDK bond or DPDK ports
|
||||||
|
default: 1
|
||||||
|
type: number
|
||||||
|
{%- endif %}
|
||||||
|
resources:
|
||||||
|
OsNetConfigImpl:
|
||||||
|
type: OS::Heat::SoftwareConfig
|
||||||
|
properties:
|
||||||
|
group: script
|
||||||
|
config:
|
||||||
|
str_replace:
|
||||||
|
template:
|
||||||
|
get_file: ../../scripts/run-os-net-config.sh
|
||||||
|
params:
|
||||||
|
$network_config:
|
||||||
|
network_config:
|
||||||
|
- type: interface
|
||||||
|
name: nic1
|
||||||
|
use_dhcp: false
|
||||||
|
addresses:
|
||||||
|
- ip_netmask:
|
||||||
|
list_join:
|
||||||
|
- /
|
||||||
|
- - get_param: ControlPlaneIp
|
||||||
|
- get_param: ControlPlaneSubnetCidr
|
||||||
|
routes:
|
||||||
|
- ip_netmask: 169.254.169.254/32
|
||||||
|
next_hop:
|
||||||
|
get_param: EC2MetadataIp
|
||||||
|
{%- if role.default_route_networks is not defined or 'ControlPlane' in role.default_route_networks %}
|
||||||
|
- default: true
|
||||||
|
next_hop:
|
||||||
|
get_param: ControlPlaneDefaultRoute
|
||||||
|
{%- endif %}
|
||||||
|
{%- if role.name != 'ComputeOvsDpdk' %}
|
||||||
|
- type: ovs_bridge
|
||||||
|
name: bridge_name
|
||||||
|
dns_servers:
|
||||||
|
get_param: DnsServers
|
||||||
|
members:
|
||||||
|
- type: ovs_bond
|
||||||
|
name: bond1
|
||||||
|
ovs_options:
|
||||||
|
get_param: BondInterfaceOvsOptions
|
||||||
|
members:
|
||||||
|
- type: interface
|
||||||
|
name: nic2
|
||||||
|
primary: true
|
||||||
|
- type: interface
|
||||||
|
name: nic3
|
||||||
|
{%- for network in networks if network.enabled|default(true) and network.name in role.networks %}
|
||||||
|
- type: vlan
|
||||||
|
vlan_id:
|
||||||
|
get_param: {{network.name}}NetworkVlanID
|
||||||
|
addresses:
|
||||||
|
- ip_netmask:
|
||||||
|
get_param: {{network.name}}IpSubnet
|
||||||
|
{%- if network.name in role.default_route_networks %}
|
||||||
|
routes:
|
||||||
|
- default: true
|
||||||
|
next_hop:
|
||||||
|
get_param: {{network.name}}InterfaceDefaultRoute
|
||||||
|
{%- endif %}
|
||||||
|
{%- endfor %}
|
||||||
|
{%- else %}
|
||||||
|
# Linux bond for non-DPDK traffic required when using DPDK
|
||||||
|
- type: linux_bond
|
||||||
|
name: bond_api
|
||||||
|
bonding_options:
|
||||||
|
get_param: BondInterfaceOvsOptions
|
||||||
|
use_dhcp: false
|
||||||
|
dns_servers:
|
||||||
|
get_param: DnsServers
|
||||||
|
members:
|
||||||
|
- type: interface
|
||||||
|
name: nic2
|
||||||
|
primary: true
|
||||||
|
- type: interface
|
||||||
|
name: nic3
|
||||||
|
{%- for network in networks if network.enabled|default(true) and network.name in role.networks %}
|
||||||
|
- type: vlan
|
||||||
|
device: bond_api
|
||||||
|
vlan_id:
|
||||||
|
get_param: {{network.name}}NetworkVlanID
|
||||||
|
addresses:
|
||||||
|
- ip_netmask:
|
||||||
|
get_param: {{network.name}}IpSubnet
|
||||||
|
{%- if network.name in role.default_route_networks %}
|
||||||
|
routes:
|
||||||
|
- default: true
|
||||||
|
next_hop:
|
||||||
|
get_param: {{network.name}}InterfaceDefaultRoute
|
||||||
|
{%- endif %}
|
||||||
|
{%- endfor %}
|
||||||
|
# Used as a provider network with external DHCP
|
||||||
|
- type: ovs_user_bridge
|
||||||
|
name: br-dpdk0
|
||||||
|
members:
|
||||||
|
- type: ovs_dpdk_bond
|
||||||
|
name: dpdkbond0
|
||||||
|
rx_queue:
|
||||||
|
get_param: NumDpdkInterfaceRxQueues
|
||||||
|
members:
|
||||||
|
- type: ovs_dpdk_port
|
||||||
|
name: dpdk0
|
||||||
|
members:
|
||||||
|
- type: interface
|
||||||
|
name: nic4
|
||||||
|
- type: ovs_dpdk_port
|
||||||
|
name: dpdk1
|
||||||
|
members:
|
||||||
|
- type: interface
|
||||||
|
name: nic5
|
||||||
|
{%- endif %}
|
||||||
|
outputs:
|
||||||
|
OS::stack_id:
|
||||||
|
description: The OsNetConfigImpl resource.
|
||||||
|
value:
|
||||||
|
get_resource: OsNetConfigImpl
|
||||||
|
|
|
@ -1,172 +0,0 @@
|
||||||
heat_template_version: queens
|
|
||||||
description: >
|
|
||||||
Software Config to drive os-net-config with 2 bonded nics on a bridge with VLANs attached 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
|
|
||||||
ManagementIpSubnet: # Only populated when including environments/network-management.yaml
|
|
||||||
default: ''
|
|
||||||
description: IP address/subnet on the management network
|
|
||||||
type: string
|
|
||||||
BondInterfaceOvsOptions:
|
|
||||||
default: ''
|
|
||||||
description: The ovs_options or bonding_options string for the bond
|
|
||||||
interface. Set things like lacp=active and/or bond_mode=balance-slb
|
|
||||||
for OVS bonds or like mode=4 for Linux bonds using this option.
|
|
||||||
type: string
|
|
||||||
constraints:
|
|
||||||
- allowed_pattern: ^((?!balance.tcp).)*$
|
|
||||||
description: The balance-tcp bond mode is known to cause packet loss and
|
|
||||||
should not be used in BondInterfaceOvsOptions.
|
|
||||||
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
|
|
||||||
ManagementNetworkVlanID:
|
|
||||||
default: 60
|
|
||||||
description: Vlan ID for the management 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 default route of the control plane network.
|
|
||||||
type: string
|
|
||||||
ExternalInterfaceDefaultRoute: # Not used by default in this template
|
|
||||||
default: 10.0.0.1
|
|
||||||
description: The default route of the external network.
|
|
||||||
type: string
|
|
||||||
ManagementInterfaceDefaultRoute: # Commented out by default in this template
|
|
||||||
default: unset
|
|
||||||
description: The default route of the management 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: comma_delimited_list
|
|
||||||
EC2MetadataIp: # Override this via parameter_defaults
|
|
||||||
description: The IP address of the EC2 metadata server.
|
|
||||||
type: string
|
|
||||||
resources:
|
|
||||||
OsNetConfigImpl:
|
|
||||||
type: OS::Heat::SoftwareConfig
|
|
||||||
properties:
|
|
||||||
group: script
|
|
||||||
config:
|
|
||||||
str_replace:
|
|
||||||
template:
|
|
||||||
get_file: ../../scripts/run-os-net-config.sh
|
|
||||||
params:
|
|
||||||
$network_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
|
|
||||||
- default: true
|
|
||||||
next_hop:
|
|
||||||
get_param: ControlPlaneDefaultRoute
|
|
||||||
- type: ovs_bridge
|
|
||||||
name: br-bond
|
|
||||||
members:
|
|
||||||
- type: ovs_bond
|
|
||||||
name: bond1
|
|
||||||
ovs_options:
|
|
||||||
get_param: BondInterfaceOvsOptions
|
|
||||||
members:
|
|
||||||
- type: interface
|
|
||||||
name: nic2
|
|
||||||
primary: true
|
|
||||||
- type: interface
|
|
||||||
name: nic3
|
|
||||||
- type: vlan
|
|
||||||
device: bond1
|
|
||||||
vlan_id:
|
|
||||||
get_param: InternalApiNetworkVlanID
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: InternalApiIpSubnet
|
|
||||||
- type: vlan
|
|
||||||
device: bond1
|
|
||||||
vlan_id:
|
|
||||||
get_param: StorageNetworkVlanID
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: StorageIpSubnet
|
|
||||||
- type: vlan
|
|
||||||
device: bond1
|
|
||||||
vlan_id:
|
|
||||||
get_param: StorageMgmtNetworkVlanID
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: StorageMgmtIpSubnet
|
|
||||||
# Uncomment when including environments/network-management.yaml
|
|
||||||
# If setting default route on the Management interface, comment
|
|
||||||
# out the default route on the Control Plane.
|
|
||||||
#-
|
|
||||||
# type: vlan
|
|
||||||
# device: bond1
|
|
||||||
# vlan_id: {get_param: ManagementNetworkVlanID}
|
|
||||||
# addresses:
|
|
||||||
# -
|
|
||||||
# ip_netmask: {get_param: ManagementIpSubnet}
|
|
||||||
# routes:
|
|
||||||
# -
|
|
||||||
# default: true
|
|
||||||
# next_hop: {get_param: ManagementInterfaceDefaultRoute}
|
|
||||||
outputs:
|
|
||||||
OS::stack_id:
|
|
||||||
description: The OsNetConfigImpl resource.
|
|
||||||
value:
|
|
||||||
get_resource: OsNetConfigImpl
|
|
||||||
|
|
|
@ -23,8 +23,10 @@ Or use this Heat environment file:
|
||||||
Configuration with System Management Network
|
Configuration with System Management Network
|
||||||
--------------------------------------------
|
--------------------------------------------
|
||||||
|
|
||||||
To enable the optional System Management network, create a Heat environment
|
The Management network is included for upgrade compatibility with
|
||||||
that looks something like this:
|
previous versions, but disabled. To enable the optional System
|
||||||
|
Management network, create a Heat environment that looks something like
|
||||||
|
this:
|
||||||
|
|
||||||
resource\_registry:
|
resource\_registry:
|
||||||
OS::TripleO::Network::Management: ../network/management.yaml
|
OS::TripleO::Network::Management: ../network/management.yaml
|
||||||
|
@ -37,3 +39,9 @@ that looks something like this:
|
||||||
Or use this Heat environment file:
|
Or use this Heat environment file:
|
||||||
|
|
||||||
environments/network-management.yaml
|
environments/network-management.yaml
|
||||||
|
|
||||||
|
Or, enable the Management network in network_data.yaml, and add the network
|
||||||
|
to the list of networks used by each role in the role definition file
|
||||||
|
(e.g. roles_data.yaml). Refer to installation documentation for procedure
|
||||||
|
to generate a role file for custom roles.
|
||||||
|
|
||||||
|
|
|
@ -1,140 +0,0 @@
|
||||||
heat_template_version: queens
|
|
||||||
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
|
|
||||||
ManagementIpSubnet: # Only populated when including environments/network-management.yaml
|
|
||||||
default: ''
|
|
||||||
description: IP address/subnet on the management 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
|
|
||||||
ManagementNetworkVlanID:
|
|
||||||
default: 60
|
|
||||||
description: Vlan ID for the management 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 default route of the control plane network.
|
|
||||||
type: string
|
|
||||||
ExternalInterfaceDefaultRoute: # Not used by default in this template
|
|
||||||
default: 10.0.0.1
|
|
||||||
description: The default route of the external network.
|
|
||||||
type: string
|
|
||||||
ManagementInterfaceDefaultRoute: # Commented out by default in this template
|
|
||||||
default: unset
|
|
||||||
description: The default route of the management 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: comma_delimited_list
|
|
||||||
EC2MetadataIp: # Override this via parameter_defaults
|
|
||||||
description: The IP address of the EC2 metadata server.
|
|
||||||
type: string
|
|
||||||
resources:
|
|
||||||
OsNetConfigImpl:
|
|
||||||
type: OS::Heat::SoftwareConfig
|
|
||||||
properties:
|
|
||||||
group: script
|
|
||||||
config:
|
|
||||||
str_replace:
|
|
||||||
template:
|
|
||||||
get_file: ../../scripts/run-os-net-config.sh
|
|
||||||
params:
|
|
||||||
$network_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
|
|
||||||
- default: true
|
|
||||||
next_hop:
|
|
||||||
get_param: ControlPlaneDefaultRoute
|
|
||||||
- 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
|
|
||||||
# Uncomment when including environments/network-management.yaml
|
|
||||||
# If setting default route on the Management interface, comment
|
|
||||||
# out the default route on the Control Plane.
|
|
||||||
#-
|
|
||||||
# type: interface
|
|
||||||
# name: nic7
|
|
||||||
# use_dhcp: false
|
|
||||||
# addresses:
|
|
||||||
# -
|
|
||||||
# ip_netmask: {get_param: ManagementIpSubnet}
|
|
||||||
# routes:
|
|
||||||
# -
|
|
||||||
# default: true
|
|
||||||
# next_hop: {get_param: ManagementInterfaceDefaultRoute}
|
|
||||||
outputs:
|
|
||||||
OS::stack_id:
|
|
||||||
description: The OsNetConfigImpl resource.
|
|
||||||
value:
|
|
||||||
get_resource: OsNetConfigImpl
|
|
||||||
|
|
|
@ -1,146 +0,0 @@
|
||||||
heat_template_version: queens
|
|
||||||
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
|
|
||||||
ManagementIpSubnet: # Only populated when including environments/network-management.yaml
|
|
||||||
default: ''
|
|
||||||
description: IP address/subnet on the management 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
|
|
||||||
ManagementNetworkVlanID:
|
|
||||||
default: 60
|
|
||||||
description: Vlan ID for the management 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 default route of the control plane network.
|
|
||||||
type: string
|
|
||||||
ExternalInterfaceDefaultRoute: # Not used by default in this template
|
|
||||||
default: 10.0.0.1
|
|
||||||
description: The default route of the external network.
|
|
||||||
type: string
|
|
||||||
ManagementInterfaceDefaultRoute: # Commented out by default in this template
|
|
||||||
default: unset
|
|
||||||
description: The default route of the management 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: comma_delimited_list
|
|
||||||
EC2MetadataIp: # Override this via parameter_defaults
|
|
||||||
description: The IP address of the EC2 metadata server.
|
|
||||||
type: string
|
|
||||||
resources:
|
|
||||||
OsNetConfigImpl:
|
|
||||||
type: OS::Heat::SoftwareConfig
|
|
||||||
properties:
|
|
||||||
group: script
|
|
||||||
config:
|
|
||||||
str_replace:
|
|
||||||
template:
|
|
||||||
get_file: ../../scripts/run-os-net-config.sh
|
|
||||||
params:
|
|
||||||
$network_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
|
|
||||||
- default: true
|
|
||||||
next_hop:
|
|
||||||
get_param: ControlPlaneDefaultRoute
|
|
||||||
- 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
|
|
||||||
# Uncomment when including environments/network-management.yaml
|
|
||||||
# If setting default route on the Management interface, comment
|
|
||||||
# out the default route on the Control Plane.
|
|
||||||
#-
|
|
||||||
# type: interface
|
|
||||||
# name: nic7
|
|
||||||
# use_dhcp: false
|
|
||||||
# addresses:
|
|
||||||
# -
|
|
||||||
# ip_netmask: {get_param: ManagementIpSubnet}
|
|
||||||
# routes:
|
|
||||||
# -
|
|
||||||
# default: true
|
|
||||||
# next_hop: {get_param: ManagementInterfaceDefaultRoute}
|
|
||||||
outputs:
|
|
||||||
OS::stack_id:
|
|
||||||
description: The OsNetConfigImpl resource.
|
|
||||||
value:
|
|
||||||
get_resource: OsNetConfigImpl
|
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
|
# FIXME: This legacy template should be converted to a composable role
|
||||||
heat_template_version: queens
|
heat_template_version: queens
|
||||||
description: >
|
description: >
|
||||||
Software Config to drive os-net-config to configure multiple interfaces for the
|
Software Config to drive os-net-config to configure multiple interfaces for the
|
||||||
|
@ -7,54 +8,18 @@ parameters:
|
||||||
default: ''
|
default: ''
|
||||||
description: IP address/subnet on the ctlplane network
|
description: IP address/subnet on the ctlplane network
|
||||||
type: string
|
type: string
|
||||||
ExternalIpSubnet:
|
{%- for network in networks %}
|
||||||
|
{{network.name}}IpSubnet:
|
||||||
default: ''
|
default: ''
|
||||||
description: IP address/subnet on the external network
|
description: IP address/subnet on the {{network.name_lower}} network
|
||||||
type: string
|
type: string
|
||||||
InternalApiIpSubnet:
|
{%- endfor %}
|
||||||
default: ''
|
{%- for network in networks %}
|
||||||
description: IP address/subnet on the internal_api network
|
{{network.name}}NetworkVlanID:
|
||||||
type: string
|
default: {{network.vlan}}
|
||||||
StorageIpSubnet:
|
description: Vlan ID for the {{network.name_lower}} network traffic.
|
||||||
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
|
|
||||||
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
|
|
||||||
ManagementNetworkVlanID:
|
|
||||||
default: 60
|
|
||||||
description: Vlan ID for the management network traffic.
|
|
||||||
type: number
|
type: number
|
||||||
|
{%- endfor %}
|
||||||
ControlPlaneSubnetCidr: # Override this via parameter_defaults
|
ControlPlaneSubnetCidr: # Override this via parameter_defaults
|
||||||
default: '24'
|
default: '24'
|
||||||
description: The subnet CIDR of the control plane network.
|
description: The subnet CIDR of the control plane network.
|
||||||
|
@ -62,14 +27,19 @@ parameters:
|
||||||
ControlPlaneDefaultRoute: # Override this via parameter_defaults
|
ControlPlaneDefaultRoute: # Override this via parameter_defaults
|
||||||
description: The default route of the control plane network.
|
description: The default route of the control plane network.
|
||||||
type: string
|
type: string
|
||||||
ExternalInterfaceDefaultRoute: # Not used by default in this template
|
{%- for network in networks %}
|
||||||
default: 10.0.0.1
|
{%- if network.ipv6|default(false) and network.gateway_ipv6|default(false) %}
|
||||||
description: The default route of the external network.
|
{{network.name}}InterfaceDefaultRoute:
|
||||||
|
default: '{{network.gateway_ipv6}}'
|
||||||
|
description: default route for the {{network.name_lower}} network
|
||||||
type: string
|
type: string
|
||||||
ManagementInterfaceDefaultRoute: # Commented out by default in this template
|
{%- elif network.gateway_ip|default(false) %}
|
||||||
default: unset
|
{{network.name}}InterfaceDefaultRoute:
|
||||||
description: The default route of the management network.
|
default: '{{network.gateway_ip}}'
|
||||||
|
description: default route for the {{network.name_lower}} network
|
||||||
type: string
|
type: string
|
||||||
|
{%- endif %}
|
||||||
|
{%- endfor %}
|
||||||
DnsServers: # Override this via parameter_defaults
|
DnsServers: # Override this via parameter_defaults
|
||||||
default: []
|
default: []
|
||||||
description: A list of DNS servers (2 max for some implementations) that will be added to resolv.conf.
|
description: A list of DNS servers (2 max for some implementations) that will be added to resolv.conf.
|
|
@ -1,154 +0,0 @@
|
||||||
heat_template_version: queens
|
|
||||||
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
|
|
||||||
ManagementIpSubnet: # Only populated when including environments/network-management.yaml
|
|
||||||
default: ''
|
|
||||||
description: IP address/subnet on the management 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
|
|
||||||
ManagementNetworkVlanID:
|
|
||||||
default: 60
|
|
||||||
description: Vlan ID for the management 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 default route of the control plane network.
|
|
||||||
type: string
|
|
||||||
ExternalInterfaceDefaultRoute: # Not used by default in this template
|
|
||||||
default: 10.0.0.1
|
|
||||||
description: The default route of the external network.
|
|
||||||
type: string
|
|
||||||
ManagementInterfaceDefaultRoute: # Commented out by default in this template
|
|
||||||
default: unset
|
|
||||||
description: The default route of the management 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: comma_delimited_list
|
|
||||||
EC2MetadataIp: # Override this via parameter_defaults
|
|
||||||
description: The IP address of the EC2 metadata server.
|
|
||||||
type: string
|
|
||||||
resources:
|
|
||||||
OsNetConfigImpl:
|
|
||||||
type: OS::Heat::SoftwareConfig
|
|
||||||
properties:
|
|
||||||
group: script
|
|
||||||
config:
|
|
||||||
str_replace:
|
|
||||||
template:
|
|
||||||
get_file: ../../scripts/run-os-net-config.sh
|
|
||||||
params:
|
|
||||||
$network_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
|
|
||||||
- default: true
|
|
||||||
next_hop:
|
|
||||||
get_param: ControlPlaneDefaultRoute
|
|
||||||
- type: interface
|
|
||||||
name: nic2
|
|
||||||
use_dhcp: false
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: StorageIpSubnet
|
|
||||||
# Uncomment when including environments/hyperconverged-ceph.yaml
|
|
||||||
#- 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
|
|
||||||
- type: ovs_bridge
|
|
||||||
name: br-tenant
|
|
||||||
use_dhcp: false
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: TenantIpSubnet
|
|
||||||
members:
|
|
||||||
- type: interface
|
|
||||||
name: nic5
|
|
||||||
use_dhcp: false
|
|
||||||
primary: true
|
|
||||||
# Uncomment when including environments/network-management.yaml
|
|
||||||
# If setting default route on the Management interface, comment
|
|
||||||
# out the default route on the Control Plane.
|
|
||||||
#- type: interface
|
|
||||||
# name: nic7
|
|
||||||
# use_dhcp: false
|
|
||||||
# addresses:
|
|
||||||
# - ip_netmask: {get_param: ManagementIpSubnet}
|
|
||||||
# routes:
|
|
||||||
# - default: true
|
|
||||||
# next_hop: {get_param: ManagementInterfaceDefaultRoute}
|
|
||||||
outputs:
|
|
||||||
OS::stack_id:
|
|
||||||
description: The OsNetConfigImpl resource.
|
|
||||||
value:
|
|
||||||
get_resource: OsNetConfigImpl
|
|
||||||
|
|
|
@ -7,54 +7,18 @@ parameters:
|
||||||
default: ''
|
default: ''
|
||||||
description: IP address/subnet on the ctlplane network
|
description: IP address/subnet on the ctlplane network
|
||||||
type: string
|
type: string
|
||||||
ExternalIpSubnet:
|
{%- for network in networks %}
|
||||||
|
{{network.name}}IpSubnet:
|
||||||
default: ''
|
default: ''
|
||||||
description: IP address/subnet on the external network
|
description: IP address/subnet on the {{network.name_lower}} network
|
||||||
type: string
|
type: string
|
||||||
InternalApiIpSubnet:
|
{%- endfor %}
|
||||||
default: ''
|
{%- for network in networks %}
|
||||||
description: IP address/subnet on the internal_api network
|
{{network.name}}NetworkVlanID:
|
||||||
type: string
|
default: {{network.vlan}}
|
||||||
StorageIpSubnet:
|
description: Vlan ID for the {{network.name_lower}} network traffic.
|
||||||
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
|
|
||||||
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
|
|
||||||
ManagementNetworkVlanID:
|
|
||||||
default: 60
|
|
||||||
description: Vlan ID for the management network traffic.
|
|
||||||
type: number
|
type: number
|
||||||
|
{%- endfor %}
|
||||||
ControlPlaneSubnetCidr: # Override this via parameter_defaults
|
ControlPlaneSubnetCidr: # Override this via parameter_defaults
|
||||||
default: '24'
|
default: '24'
|
||||||
description: The subnet CIDR of the control plane network.
|
description: The subnet CIDR of the control plane network.
|
||||||
|
@ -62,14 +26,19 @@ parameters:
|
||||||
ControlPlaneDefaultRoute: # Override this via parameter_defaults
|
ControlPlaneDefaultRoute: # Override this via parameter_defaults
|
||||||
description: The default route of the control plane network.
|
description: The default route of the control plane network.
|
||||||
type: string
|
type: string
|
||||||
ExternalInterfaceDefaultRoute:
|
{%- for network in networks %}
|
||||||
default: 10.0.0.1
|
{%- if network.ipv6|default(false) and network.gateway_ipv6|default(false) %}
|
||||||
description: default route for the external network
|
{{network.name}}InterfaceDefaultRoute:
|
||||||
|
default: '{{network.gateway_ipv6}}'
|
||||||
|
description: default route for the {{network.name_lower}} network
|
||||||
type: string
|
type: string
|
||||||
ManagementInterfaceDefaultRoute: # Commented out by default in this template
|
{%- elif network.gateway_ip|default(false) %}
|
||||||
default: unset
|
{{network.name}}InterfaceDefaultRoute:
|
||||||
description: The default route of the management network.
|
default: '{{network.gateway_ip}}'
|
||||||
|
description: default route for the {{network.name_lower}} network
|
||||||
type: string
|
type: string
|
||||||
|
{%- endif %}
|
||||||
|
{%- endfor %}
|
||||||
DnsServers: # Override this via parameter_defaults
|
DnsServers: # Override this via parameter_defaults
|
||||||
default: []
|
default: []
|
||||||
description: A list of DNS servers (2 max for some implementations) that will be added to resolv.conf.
|
description: A list of DNS servers (2 max for some implementations) that will be added to resolv.conf.
|
|
@ -1,171 +0,0 @@
|
||||||
heat_template_version: queens
|
|
||||||
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
|
|
||||||
ManagementIpSubnet: # Only populated when including environments/network-management.yaml
|
|
||||||
default: ''
|
|
||||||
description: IP address/subnet on the management 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
|
|
||||||
ManagementNetworkVlanID:
|
|
||||||
default: 60
|
|
||||||
description: Vlan ID for the management 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 default route of the control plane network.
|
|
||||||
type: string
|
|
||||||
ExternalInterfaceDefaultRoute:
|
|
||||||
default: 10.0.0.1
|
|
||||||
description: default route for the external network
|
|
||||||
type: string
|
|
||||||
ManagementInterfaceDefaultRoute: # Commented out by default in this template
|
|
||||||
default: unset
|
|
||||||
description: The default route of the management 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: comma_delimited_list
|
|
||||||
EC2MetadataIp: # Override this via parameter_defaults
|
|
||||||
description: The IP address of the EC2 metadata server.
|
|
||||||
type: string
|
|
||||||
resources:
|
|
||||||
OsNetConfigImpl:
|
|
||||||
type: OS::Heat::SoftwareConfig
|
|
||||||
properties:
|
|
||||||
group: script
|
|
||||||
config:
|
|
||||||
str_replace:
|
|
||||||
template:
|
|
||||||
get_file: ../../scripts/run-os-net-config.sh
|
|
||||||
params:
|
|
||||||
$network_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
|
|
||||||
- type: ovs_bridge
|
|
||||||
name: br-tenant
|
|
||||||
use_dhcp: false
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: TenantIpSubnet
|
|
||||||
members:
|
|
||||||
- type: interface
|
|
||||||
name: nic5
|
|
||||||
use_dhcp: false
|
|
||||||
primary: true
|
|
||||||
- type: ovs_bridge
|
|
||||||
name: bridge_name
|
|
||||||
dns_servers:
|
|
||||||
get_param: DnsServers
|
|
||||||
use_dhcp: false
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: ExternalIpSubnet
|
|
||||||
routes:
|
|
||||||
- default: true
|
|
||||||
next_hop:
|
|
||||||
get_param: ExternalInterfaceDefaultRoute
|
|
||||||
members:
|
|
||||||
- type: interface
|
|
||||||
name: nic6
|
|
||||||
primary: true
|
|
||||||
# Uncomment when including environments/network-management.yaml
|
|
||||||
# If setting default route on the Management interface, comment
|
|
||||||
# out the default route on the External interface. This will
|
|
||||||
# make the External API unreachable from remote subnets.
|
|
||||||
#-
|
|
||||||
# type: interface
|
|
||||||
# name: nic7
|
|
||||||
# use_dhcp: false
|
|
||||||
# addresses:
|
|
||||||
# -
|
|
||||||
# ip_netmask: {get_param: ManagementIpSubnet}
|
|
||||||
# routes:
|
|
||||||
# -
|
|
||||||
# default: true
|
|
||||||
# next_hop: {get_param: ManagementInterfaceDefaultRoute}
|
|
||||||
outputs:
|
|
||||||
OS::stack_id:
|
|
||||||
description: The OsNetConfigImpl resource.
|
|
||||||
value:
|
|
||||||
get_resource: OsNetConfigImpl
|
|
||||||
|
|
|
@ -1,152 +0,0 @@
|
||||||
heat_template_version: queens
|
|
||||||
description: >
|
|
||||||
Software Config to drive os-net-config to configure multiple interfaces for a dedicated Neutron networker 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
|
|
||||||
ManagementIpSubnet: # Only populated when including environments/network-management.yaml
|
|
||||||
default: ''
|
|
||||||
description: IP address/subnet on the management 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
|
|
||||||
ManagementNetworkVlanID:
|
|
||||||
default: 60
|
|
||||||
description: Vlan ID for the management 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 default route of the control plane network.
|
|
||||||
type: string
|
|
||||||
ExternalInterfaceDefaultRoute:
|
|
||||||
default: 10.0.0.1
|
|
||||||
description: default route for the external network
|
|
||||||
type: string
|
|
||||||
ManagementInterfaceDefaultRoute: # Commented out by default in this template
|
|
||||||
default: unset
|
|
||||||
description: The default route of the management 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: comma_delimited_list
|
|
||||||
EC2MetadataIp: # Override this via parameter_defaults
|
|
||||||
description: The IP address of the EC2 metadata server.
|
|
||||||
type: string
|
|
||||||
resources:
|
|
||||||
OsNetConfigImpl:
|
|
||||||
type: OS::Heat::SoftwareConfig
|
|
||||||
properties:
|
|
||||||
group: script
|
|
||||||
config:
|
|
||||||
str_replace:
|
|
||||||
template:
|
|
||||||
get_file: ../../scripts/run-os-net-config.sh
|
|
||||||
params:
|
|
||||||
$network_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
|
|
||||||
- default: true
|
|
||||||
next_hop:
|
|
||||||
get_param: ControlPlaneDefaultRoute
|
|
||||||
- type: interface
|
|
||||||
name: nic4
|
|
||||||
use_dhcp: false
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: InternalApiIpSubnet
|
|
||||||
- type: ovs_bridge
|
|
||||||
name: br-tenant
|
|
||||||
use_dhcp: false
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: TenantIpSubnet
|
|
||||||
members:
|
|
||||||
- type: interface
|
|
||||||
name: nic5
|
|
||||||
use_dhcp: false
|
|
||||||
primary: true
|
|
||||||
- type: ovs_bridge
|
|
||||||
name: bridge_name
|
|
||||||
use_dhcp: false
|
|
||||||
members:
|
|
||||||
- type: interface
|
|
||||||
name: nic6
|
|
||||||
primary: true
|
|
||||||
# Uncomment when including environments/network-management.yaml
|
|
||||||
# If setting default route on the Management interface, comment
|
|
||||||
# out the default route on the Control Plane interface.
|
|
||||||
#-
|
|
||||||
# type: interface
|
|
||||||
# name: nic7
|
|
||||||
# use_dhcp: false
|
|
||||||
# addresses:
|
|
||||||
# -
|
|
||||||
# ip_netmask: {get_param: ManagementIpSubnet}
|
|
||||||
# routes:
|
|
||||||
# -
|
|
||||||
# default: true
|
|
||||||
# next_hop: {get_param: ManagementInterfaceDefaultRoute}
|
|
||||||
outputs:
|
|
||||||
OS::stack_id:
|
|
||||||
description: The OsNetConfigImpl resource.
|
|
||||||
value:
|
|
||||||
get_resource: OsNetConfigImpl
|
|
||||||
|
|
|
@ -0,0 +1,152 @@
|
||||||
|
heat_template_version: queens
|
||||||
|
description: >
|
||||||
|
Software Config to drive os-net-config to configure multiple interfaces for the {{role.name}} role.
|
||||||
|
parameters:
|
||||||
|
ControlPlaneIp:
|
||||||
|
default: ''
|
||||||
|
description: IP address/subnet on the ctlplane network
|
||||||
|
type: string
|
||||||
|
{%- for network in networks %}
|
||||||
|
{{network.name}}IpSubnet:
|
||||||
|
default: ''
|
||||||
|
description: IP address/subnet on the {{network.name_lower}} network
|
||||||
|
type: string
|
||||||
|
{%- endfor %}
|
||||||
|
{%- for network in networks %}
|
||||||
|
{{network.name}}NetworkVlanID:
|
||||||
|
default: {{network.vlan}}
|
||||||
|
description: Vlan ID for the {{network.name_lower}} network traffic.
|
||||||
|
type: number
|
||||||
|
{%- endfor %}
|
||||||
|
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 default route of the control plane network.
|
||||||
|
type: string
|
||||||
|
{%- for network in networks %}
|
||||||
|
{%- if network.ipv6|default(false) and network.gateway_ipv6|default(false) %}
|
||||||
|
{{network.name}}InterfaceDefaultRoute:
|
||||||
|
default: '{{network.gateway_ipv6}}'
|
||||||
|
description: default route for the {{network.name_lower}} network
|
||||||
|
type: string
|
||||||
|
{%- elif network.gateway_ip|default(false) %}
|
||||||
|
{{network.name}}InterfaceDefaultRoute:
|
||||||
|
default: '{{network.gateway_ip}}'
|
||||||
|
description: default route for the {{network.name_lower}} network
|
||||||
|
type: string
|
||||||
|
{%- endif %}
|
||||||
|
{%- endfor %}
|
||||||
|
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: comma_delimited_list
|
||||||
|
EC2MetadataIp: # Override this via parameter_defaults
|
||||||
|
description: The IP address of the EC2 metadata server.
|
||||||
|
type: string
|
||||||
|
{%- if role.name == 'ComputeOvsDpdk' %}
|
||||||
|
NumDpdkInterfaceRxQueues:
|
||||||
|
description: Number of Rx Queues required for DPDK bond or DPDK ports
|
||||||
|
default: 1
|
||||||
|
type: number
|
||||||
|
{%- endif %}
|
||||||
|
resources:
|
||||||
|
OsNetConfigImpl:
|
||||||
|
type: OS::Heat::SoftwareConfig
|
||||||
|
properties:
|
||||||
|
group: script
|
||||||
|
config:
|
||||||
|
str_replace:
|
||||||
|
template:
|
||||||
|
get_file: ../../scripts/run-os-net-config.sh
|
||||||
|
params:
|
||||||
|
$network_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
|
||||||
|
{%- if role.default_route_networks is not defined or 'ControlPlane' in role.default_route_networks %}
|
||||||
|
- default: true
|
||||||
|
next_hop:
|
||||||
|
get_param: ControlPlaneDefaultRoute
|
||||||
|
{%- endif %}
|
||||||
|
{%- set nics_used = [1] %}
|
||||||
|
{%- for network in networks %}
|
||||||
|
{%- if network.name not in ["External", "Tenant"] %}
|
||||||
|
{%- if network.name in role.networks %}
|
||||||
|
- type: interface
|
||||||
|
name: nic{{loop.index + 1}}
|
||||||
|
use_dhcp: false
|
||||||
|
addresses:
|
||||||
|
- ip_netmask:
|
||||||
|
get_param: {{network.name}}IpSubnet
|
||||||
|
{%- endif %}
|
||||||
|
{%- elif network.name in role.networks or role.name == 'Networker' %}
|
||||||
|
- type: ovs_bridge
|
||||||
|
{%- if network.name == "External" %}
|
||||||
|
name: bridge_name
|
||||||
|
{%- else %}
|
||||||
|
name: br-{{network.name_lower}}
|
||||||
|
{%- endif %}
|
||||||
|
dns_servers:
|
||||||
|
get_param: DnsServers
|
||||||
|
use_dhcp: false
|
||||||
|
{%- if network.name in role.networks %}
|
||||||
|
addresses:
|
||||||
|
- ip_netmask:
|
||||||
|
get_param: {{network.name}}IpSubnet
|
||||||
|
{%- endif %}
|
||||||
|
{%- if network.name == role.default_route_network %}
|
||||||
|
routes:
|
||||||
|
- default: true
|
||||||
|
next_hop:
|
||||||
|
get_param: {{network.name}}InterfaceDefaultRoute
|
||||||
|
{%- endif %}
|
||||||
|
members:
|
||||||
|
- type: interface
|
||||||
|
name: nic{{loop.index + 1}}
|
||||||
|
use_dhcp: false
|
||||||
|
primary: true
|
||||||
|
{%- endif %}
|
||||||
|
{#- This hack gets around Jinja scope limitations to update nics_used within loop. #}
|
||||||
|
{%- set _ = nics_used.append(loop.index) %}
|
||||||
|
{%- endfor %}
|
||||||
|
{%- if role.name == 'ComputeOvsDpdk' %}
|
||||||
|
# Used as a provider network with external DHCP
|
||||||
|
- type: ovs_user_bridge
|
||||||
|
name: br-dpdk0
|
||||||
|
members:
|
||||||
|
- type: ovs_dpdk_bond
|
||||||
|
name: dpdkbond0
|
||||||
|
rx_queue:
|
||||||
|
get_param: NumDpdkInterfaceRxQueues
|
||||||
|
members:
|
||||||
|
- type: ovs_dpdk_port
|
||||||
|
name: dpdk0
|
||||||
|
members:
|
||||||
|
- type: interface
|
||||||
|
name: nic{{nics_used[-1] + 1}}
|
||||||
|
- type: ovs_dpdk_port
|
||||||
|
name: dpdk1
|
||||||
|
members:
|
||||||
|
- type: interface
|
||||||
|
name: nic{{nics_used[-1] + 2}}
|
||||||
|
{%- endif %}
|
||||||
|
outputs:
|
||||||
|
OS::stack_id:
|
||||||
|
description: The OsNetConfigImpl resource.
|
||||||
|
value:
|
||||||
|
get_resource: OsNetConfigImpl
|
|
@ -1,146 +0,0 @@
|
||||||
heat_template_version: queens
|
|
||||||
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
|
|
||||||
ManagementIpSubnet: # Only populated when including environments/network-management.yaml
|
|
||||||
default: ''
|
|
||||||
description: IP address/subnet on the management 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
|
|
||||||
ManagementNetworkVlanID:
|
|
||||||
default: 60
|
|
||||||
description: Vlan ID for the management 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 default route of the control plane network.
|
|
||||||
type: string
|
|
||||||
ExternalInterfaceDefaultRoute: # Not used by default in this template
|
|
||||||
default: 10.0.0.1
|
|
||||||
description: The default route of the external network.
|
|
||||||
type: string
|
|
||||||
ManagementInterfaceDefaultRoute: # Commented out by default in this template
|
|
||||||
default: unset
|
|
||||||
description: The default route of the management 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: comma_delimited_list
|
|
||||||
EC2MetadataIp: # Override this via parameter_defaults
|
|
||||||
description: The IP address of the EC2 metadata server.
|
|
||||||
type: string
|
|
||||||
resources:
|
|
||||||
OsNetConfigImpl:
|
|
||||||
type: OS::Heat::SoftwareConfig
|
|
||||||
properties:
|
|
||||||
group: script
|
|
||||||
config:
|
|
||||||
str_replace:
|
|
||||||
template:
|
|
||||||
get_file: ../../scripts/run-os-net-config.sh
|
|
||||||
params:
|
|
||||||
$network_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
|
|
||||||
- default: true
|
|
||||||
next_hop:
|
|
||||||
get_param: ControlPlaneDefaultRoute
|
|
||||||
- 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
|
|
||||||
# Uncomment when including environments/network-management.yaml
|
|
||||||
# If setting default route on the Management interface, comment
|
|
||||||
# out the default route on the Control Plane.
|
|
||||||
#-
|
|
||||||
# type: interface
|
|
||||||
# name: nic7
|
|
||||||
# use_dhcp: false
|
|
||||||
# addresses:
|
|
||||||
# -
|
|
||||||
# ip_netmask: {get_param: ManagementIpSubnet}
|
|
||||||
# routes:
|
|
||||||
# -
|
|
||||||
# default: true
|
|
||||||
# next_hop: {get_param: ManagementInterfaceDefaultRoute}
|
|
||||||
outputs:
|
|
||||||
OS::stack_id:
|
|
||||||
description: The OsNetConfigImpl resource.
|
|
||||||
value:
|
|
||||||
get_resource: OsNetConfigImpl
|
|
||||||
|
|
|
@ -1,147 +0,0 @@
|
||||||
heat_template_version: queens
|
|
||||||
description: >
|
|
||||||
Software Config to drive os-net-config to configure VLANs 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
|
|
||||||
ManagementIpSubnet: # Only populated when including environments/network-management.yaml
|
|
||||||
default: ''
|
|
||||||
description: IP address/subnet on the management 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
|
|
||||||
ManagementNetworkVlanID:
|
|
||||||
default: 60
|
|
||||||
description: Vlan ID for the management 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 default route of the control plane network.
|
|
||||||
type: string
|
|
||||||
ExternalInterfaceDefaultRoute: # Not used by default in this template
|
|
||||||
default: 10.0.0.1
|
|
||||||
description: The default route of the external network.
|
|
||||||
type: string
|
|
||||||
ManagementInterfaceDefaultRoute: # Commented out by default in this template
|
|
||||||
default: unset
|
|
||||||
description: The default route of the management 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: comma_delimited_list
|
|
||||||
EC2MetadataIp: # Override this via parameter_defaults
|
|
||||||
description: The IP address of the EC2 metadata server.
|
|
||||||
type: string
|
|
||||||
resources:
|
|
||||||
OsNetConfigImpl:
|
|
||||||
type: OS::Heat::SoftwareConfig
|
|
||||||
properties:
|
|
||||||
group: script
|
|
||||||
config:
|
|
||||||
str_replace:
|
|
||||||
template:
|
|
||||||
get_file: ../../scripts/run-os-net-config.sh
|
|
||||||
params:
|
|
||||||
$network_config:
|
|
||||||
network_config:
|
|
||||||
- type: linux_bridge
|
|
||||||
name: br-storage
|
|
||||||
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
|
|
||||||
- default: true
|
|
||||||
next_hop:
|
|
||||||
get_param: ControlPlaneDefaultRoute
|
|
||||||
members:
|
|
||||||
- type: interface
|
|
||||||
name: nic1
|
|
||||||
# force the MAC address of the bridge to this interface
|
|
||||||
primary: true
|
|
||||||
- type: vlan
|
|
||||||
vlan_id:
|
|
||||||
get_param: StorageNetworkVlanID
|
|
||||||
device: br-storage
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: StorageIpSubnet
|
|
||||||
- type: vlan
|
|
||||||
vlan_id:
|
|
||||||
get_param: StorageMgmtNetworkVlanID
|
|
||||||
device: br-storage
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: StorageMgmtIpSubnet
|
|
||||||
# Uncomment when including environments/network-management.yaml
|
|
||||||
# If setting default route on the Management interface, comment
|
|
||||||
# out the default route on the Control Plane.
|
|
||||||
#-
|
|
||||||
# type: vlan
|
|
||||||
# vlan_id: {get_param: ManagementNetworkVlanID}
|
|
||||||
# device: br-storage
|
|
||||||
# addresses:
|
|
||||||
# -
|
|
||||||
# ip_netmask: {get_param: ManagementIpSubnet}
|
|
||||||
# routes:
|
|
||||||
# -
|
|
||||||
# default: true
|
|
||||||
# next_hop: {get_param: ManagementInterfaceDefaultRoute}
|
|
||||||
outputs:
|
|
||||||
OS::stack_id:
|
|
||||||
description: The OsNetConfigImpl resource.
|
|
||||||
value:
|
|
||||||
get_resource: OsNetConfigImpl
|
|
||||||
|
|
|
@ -1,154 +0,0 @@
|
||||||
heat_template_version: queens
|
|
||||||
description: >
|
|
||||||
Software Config to drive os-net-config to configure VLANs 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
|
|
||||||
ManagementIpSubnet: # Only populated when including environments/network-management.yaml
|
|
||||||
default: ''
|
|
||||||
description: IP address/subnet on the management 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
|
|
||||||
ManagementNetworkVlanID:
|
|
||||||
default: 60
|
|
||||||
description: Vlan ID for the management 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 default route of the control plane network.
|
|
||||||
type: string
|
|
||||||
ExternalInterfaceDefaultRoute: # Not used by default in this template
|
|
||||||
default: 10.0.0.1
|
|
||||||
description: The default route of the external network.
|
|
||||||
type: string
|
|
||||||
ManagementInterfaceDefaultRoute: # Commented out by default in this template
|
|
||||||
default: unset
|
|
||||||
description: The default route of the management 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: comma_delimited_list
|
|
||||||
EC2MetadataIp: # Override this via parameter_defaults
|
|
||||||
description: The IP address of the EC2 metadata server.
|
|
||||||
type: string
|
|
||||||
resources:
|
|
||||||
OsNetConfigImpl:
|
|
||||||
type: OS::Heat::SoftwareConfig
|
|
||||||
properties:
|
|
||||||
group: script
|
|
||||||
config:
|
|
||||||
str_replace:
|
|
||||||
template:
|
|
||||||
get_file: ../../scripts/run-os-net-config.sh
|
|
||||||
params:
|
|
||||||
$network_config:
|
|
||||||
network_config:
|
|
||||||
- type: linux_bridge
|
|
||||||
name: br-storage
|
|
||||||
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
|
|
||||||
- default: true
|
|
||||||
next_hop:
|
|
||||||
get_param: ControlPlaneDefaultRoute
|
|
||||||
members:
|
|
||||||
- type: interface
|
|
||||||
name: nic1
|
|
||||||
# force the MAC address of the bridge to this interface
|
|
||||||
primary: true
|
|
||||||
- type: vlan
|
|
||||||
vlan_id:
|
|
||||||
get_param: InternalApiNetworkVlanID
|
|
||||||
device: br-storage
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: InternalApiIpSubnet
|
|
||||||
- type: vlan
|
|
||||||
vlan_id:
|
|
||||||
get_param: StorageNetworkVlanID
|
|
||||||
device: br-storage
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: StorageIpSubnet
|
|
||||||
- type: vlan
|
|
||||||
vlan_id:
|
|
||||||
get_param: StorageMgmtNetworkVlanID
|
|
||||||
device: br-storage
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: StorageMgmtIpSubnet
|
|
||||||
# Uncomment when including environments/network-management.yaml
|
|
||||||
# If setting default route on the Management interface, comment
|
|
||||||
# out the default route on the Control Plane.
|
|
||||||
#-
|
|
||||||
# type: vlan
|
|
||||||
# vlan_id: {get_param: ManagementNetworkVlanID}
|
|
||||||
# device: br-storage
|
|
||||||
# addresses:
|
|
||||||
# -
|
|
||||||
# ip_netmask: {get_param: ManagementIpSubnet}
|
|
||||||
# routes:
|
|
||||||
# -
|
|
||||||
# default: true
|
|
||||||
# next_hop: {get_param: ManagementInterfaceDefaultRoute}
|
|
||||||
outputs:
|
|
||||||
OS::stack_id:
|
|
||||||
description: The OsNetConfigImpl resource.
|
|
||||||
value:
|
|
||||||
get_resource: OsNetConfigImpl
|
|
||||||
|
|
|
@ -1,157 +0,0 @@
|
||||||
heat_template_version: queens
|
|
||||||
description: >
|
|
||||||
Software Config to drive os-net-config to configure VLANs 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
|
|
||||||
ManagementIpSubnet: # Only populated when including environments/network-management.yaml
|
|
||||||
default: ''
|
|
||||||
description: IP address/subnet on the management 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
|
|
||||||
ManagementNetworkVlanID:
|
|
||||||
default: 60
|
|
||||||
description: Vlan ID for the management 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 default route of the control plane network.
|
|
||||||
type: string
|
|
||||||
ExternalInterfaceDefaultRoute: # Not used by default in this template
|
|
||||||
default: 10.0.0.1
|
|
||||||
description: The default route of the external network.
|
|
||||||
type: string
|
|
||||||
ManagementInterfaceDefaultRoute: # Commented out by default in this template
|
|
||||||
default: unset
|
|
||||||
description: The default route of the management 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: comma_delimited_list
|
|
||||||
EC2MetadataIp: # Override this via parameter_defaults
|
|
||||||
description: The IP address of the EC2 metadata server.
|
|
||||||
type: string
|
|
||||||
resources:
|
|
||||||
OsNetConfigImpl:
|
|
||||||
type: OS::Heat::SoftwareConfig
|
|
||||||
properties:
|
|
||||||
group: script
|
|
||||||
config:
|
|
||||||
str_replace:
|
|
||||||
template:
|
|
||||||
get_file: ../../scripts/run-os-net-config.sh
|
|
||||||
params:
|
|
||||||
$network_config:
|
|
||||||
network_config:
|
|
||||||
- type: linux_bridge
|
|
||||||
name: bridge_name
|
|
||||||
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
|
|
||||||
- default: true
|
|
||||||
next_hop:
|
|
||||||
get_param: ControlPlaneDefaultRoute
|
|
||||||
members:
|
|
||||||
- type: interface
|
|
||||||
name: interface_name
|
|
||||||
# force the MAC address of the bridge to this interface
|
|
||||||
primary: true
|
|
||||||
- type: vlan
|
|
||||||
vlan_id:
|
|
||||||
get_param: InternalApiNetworkVlanID
|
|
||||||
device: bridge_name
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: InternalApiIpSubnet
|
|
||||||
- type: vlan
|
|
||||||
vlan_id:
|
|
||||||
get_param: StorageNetworkVlanID
|
|
||||||
device: bridge_name
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: StorageIpSubnet
|
|
||||||
# Uncomment when including environments/hyperconverged-ceph.yaml
|
|
||||||
#- type: vlan
|
|
||||||
# vlan_id: {get_param: StorageMgmtNetworkVlanID}
|
|
||||||
# device: bridge_name
|
|
||||||
# addresses:
|
|
||||||
# - ip_netmask: {get_param: StorageMgmtIpSubnet}
|
|
||||||
- type: vlan
|
|
||||||
vlan_id:
|
|
||||||
get_param: TenantNetworkVlanID
|
|
||||||
device: bridge_name
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: TenantIpSubnet
|
|
||||||
# Uncomment when including environments/network-management.yaml
|
|
||||||
# If setting default route on the Management interface, comment
|
|
||||||
# out the default route on the Control Plane.
|
|
||||||
#- type: vlan
|
|
||||||
# vlan_id: {get_param: ManagementNetworkVlanID}
|
|
||||||
# device: bridge_name
|
|
||||||
# addresses:
|
|
||||||
# - ip_netmask: {get_param: ManagementIpSubnet}
|
|
||||||
# routes:
|
|
||||||
# - default: true
|
|
||||||
# next_hop: {get_param: ManagementInterfaceDefaultRoute}
|
|
||||||
outputs:
|
|
||||||
OS::stack_id:
|
|
||||||
description: The OsNetConfigImpl resource.
|
|
||||||
value:
|
|
||||||
get_resource: OsNetConfigImpl
|
|
||||||
|
|
|
@ -7,65 +7,34 @@ parameters:
|
||||||
default: ''
|
default: ''
|
||||||
description: IP address/subnet on the ctlplane network
|
description: IP address/subnet on the ctlplane network
|
||||||
type: string
|
type: string
|
||||||
ExternalIpSubnet:
|
{%- for network in networks %}
|
||||||
|
{{network.name}}IpSubnet:
|
||||||
default: ''
|
default: ''
|
||||||
description: IP address/subnet on the external network
|
description: IP address/subnet on the {{network.name_lower}} network
|
||||||
type: string
|
type: string
|
||||||
InternalApiIpSubnet:
|
{%- endfor %}
|
||||||
default: ''
|
{%- for network in networks %}
|
||||||
description: IP address/subnet on the internal_api network
|
{{network.name}}NetworkVlanID:
|
||||||
type: string
|
default: {{network.vlan}}
|
||||||
StorageIpSubnet:
|
description: Vlan ID for the {{network.name_lower}} network traffic.
|
||||||
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
|
|
||||||
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
|
|
||||||
ManagementNetworkVlanID:
|
|
||||||
default: 60
|
|
||||||
description: Vlan ID for the management network traffic.
|
|
||||||
type: number
|
type: number
|
||||||
|
{%- endfor %}
|
||||||
ControlPlaneDefaultRoute: # Override this via parameter_defaults
|
ControlPlaneDefaultRoute: # Override this via parameter_defaults
|
||||||
description: The default route of the control plane network.
|
description: The default route of the control plane network.
|
||||||
type: string
|
type: string
|
||||||
ExternalInterfaceDefaultRoute:
|
{%- for network in networks %}
|
||||||
default: 10.0.0.1
|
{%- if network.ipv6|default(false) and network.gateway_ipv6|default(false) %}
|
||||||
description: default route for the external network
|
{{network.name}}InterfaceDefaultRoute:
|
||||||
|
default: '{{network.gateway_ipv6}}'
|
||||||
|
description: default route for the {{network.name_lower}} network
|
||||||
type: string
|
type: string
|
||||||
ManagementInterfaceDefaultRoute: # Commented out by default in this template
|
{%- elif network.gateway_ip|default(false) %}
|
||||||
default: unset
|
{{network.name}}InterfaceDefaultRoute:
|
||||||
description: The default route of the management network.
|
default: '{{network.gateway_ip}}'
|
||||||
|
description: default route for the {{network.name_lower}} network
|
||||||
type: string
|
type: string
|
||||||
|
{%- endif %}
|
||||||
|
{%- endfor %}
|
||||||
ControlPlaneSubnetCidr: # Override this via parameter_defaults
|
ControlPlaneSubnetCidr: # Override this via parameter_defaults
|
||||||
default: '24'
|
default: '24'
|
||||||
description: The subnet CIDR of the control plane network.
|
description: The subnet CIDR of the control plane network.
|
|
@ -1,172 +0,0 @@
|
||||||
heat_template_version: queens
|
|
||||||
description: >
|
|
||||||
Software Config to drive os-net-config to configure VLANs 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
|
|
||||||
ManagementIpSubnet: # Only populated when including environments/network-management.yaml
|
|
||||||
default: ''
|
|
||||||
description: IP address/subnet on the management 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
|
|
||||||
ManagementNetworkVlanID:
|
|
||||||
default: 60
|
|
||||||
description: Vlan ID for the management network traffic.
|
|
||||||
type: number
|
|
||||||
ControlPlaneDefaultRoute: # Override this via parameter_defaults
|
|
||||||
description: The default route of the control plane network.
|
|
||||||
type: string
|
|
||||||
ExternalInterfaceDefaultRoute:
|
|
||||||
default: 10.0.0.1
|
|
||||||
description: default route for the external network
|
|
||||||
type: string
|
|
||||||
ManagementInterfaceDefaultRoute: # Commented out by default in this template
|
|
||||||
default: unset
|
|
||||||
description: The default route of the management network.
|
|
||||||
type: string
|
|
||||||
ControlPlaneSubnetCidr: # Override this via parameter_defaults
|
|
||||||
default: '24'
|
|
||||||
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: comma_delimited_list
|
|
||||||
EC2MetadataIp: # Override this via parameter_defaults
|
|
||||||
description: The IP address of the EC2 metadata server.
|
|
||||||
type: string
|
|
||||||
resources:
|
|
||||||
OsNetConfigImpl:
|
|
||||||
type: OS::Heat::SoftwareConfig
|
|
||||||
properties:
|
|
||||||
group: script
|
|
||||||
config:
|
|
||||||
str_replace:
|
|
||||||
template:
|
|
||||||
get_file: ../../scripts/run-os-net-config.sh
|
|
||||||
params:
|
|
||||||
$network_config:
|
|
||||||
network_config:
|
|
||||||
- type: linux_bridge
|
|
||||||
name: bridge_name
|
|
||||||
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
|
|
||||||
- default: true
|
|
||||||
next_hop:
|
|
||||||
get_param: ControlPlaneDefaultRoute
|
|
||||||
members:
|
|
||||||
- type: interface
|
|
||||||
name: interface_name
|
|
||||||
primary: true
|
|
||||||
- type: vlan
|
|
||||||
vlan_id:
|
|
||||||
get_param: ExternalNetworkVlanID
|
|
||||||
device: bridge_name
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: ExternalIpSubnet
|
|
||||||
routes:
|
|
||||||
- default: true
|
|
||||||
next_hop:
|
|
||||||
get_param: ExternalInterfaceDefaultRoute
|
|
||||||
- type: vlan
|
|
||||||
vlan_id:
|
|
||||||
get_param: InternalApiNetworkVlanID
|
|
||||||
device: bridge_name
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: InternalApiIpSubnet
|
|
||||||
- type: vlan
|
|
||||||
vlan_id:
|
|
||||||
get_param: StorageNetworkVlanID
|
|
||||||
device: bridge_name
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: StorageIpSubnet
|
|
||||||
- type: vlan
|
|
||||||
vlan_id:
|
|
||||||
get_param: StorageMgmtNetworkVlanID
|
|
||||||
device: bridge_name
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: StorageMgmtIpSubnet
|
|
||||||
- type: vlan
|
|
||||||
vlan_id:
|
|
||||||
get_param: TenantNetworkVlanID
|
|
||||||
device: bridge_name
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: TenantIpSubnet
|
|
||||||
# Uncomment when including environments/network-management.yaml
|
|
||||||
# If setting default route on the Management interface, comment
|
|
||||||
# out the default route on the External interface. This will
|
|
||||||
# make the External API unreachable from remote subnets.
|
|
||||||
#-
|
|
||||||
# type: vlan
|
|
||||||
# vlan_id: {get_param: ManagementNetworkVlanID}
|
|
||||||
# device: bridge_name
|
|
||||||
# addresses:
|
|
||||||
# -
|
|
||||||
# ip_netmask: {get_param: ManagementIpSubnet}
|
|
||||||
# routes:
|
|
||||||
# -
|
|
||||||
# default: true
|
|
||||||
# next_hop: {get_param: ManagementInterfaceDefaultRoute}
|
|
||||||
outputs:
|
|
||||||
OS::stack_id:
|
|
||||||
description: The OsNetConfigImpl resource.
|
|
||||||
value:
|
|
||||||
get_resource: OsNetConfigImpl
|
|
||||||
|
|
|
@ -1,148 +0,0 @@
|
||||||
heat_template_version: queens
|
|
||||||
description: >
|
|
||||||
Software Config to drive os-net-config to configure VLANs for a dedicated Neutron networker 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
|
|
||||||
ManagementIpSubnet: # Only populated when including environments/network-management.yaml
|
|
||||||
default: ''
|
|
||||||
description: IP address/subnet on the management 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
|
|
||||||
ManagementNetworkVlanID:
|
|
||||||
default: 60
|
|
||||||
description: Vlan ID for the management network traffic.
|
|
||||||
type: number
|
|
||||||
ControlPlaneDefaultRoute: # Override this via parameter_defaults
|
|
||||||
description: The default route of the control plane network.
|
|
||||||
type: string
|
|
||||||
ExternalInterfaceDefaultRoute:
|
|
||||||
default: 10.0.0.1
|
|
||||||
description: default route for the external network
|
|
||||||
type: string
|
|
||||||
ManagementInterfaceDefaultRoute: # Commented out by default in this template
|
|
||||||
default: unset
|
|
||||||
description: The default route of the management network.
|
|
||||||
type: string
|
|
||||||
ControlPlaneSubnetCidr: # Override this via parameter_defaults
|
|
||||||
default: '24'
|
|
||||||
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: comma_delimited_list
|
|
||||||
EC2MetadataIp: # Override this via parameter_defaults
|
|
||||||
description: The IP address of the EC2 metadata server.
|
|
||||||
type: string
|
|
||||||
resources:
|
|
||||||
OsNetConfigImpl:
|
|
||||||
type: OS::Heat::SoftwareConfig
|
|
||||||
properties:
|
|
||||||
group: script
|
|
||||||
config:
|
|
||||||
str_replace:
|
|
||||||
template:
|
|
||||||
get_file: ../../scripts/run-os-net-config.sh
|
|
||||||
params:
|
|
||||||
$network_config:
|
|
||||||
network_config:
|
|
||||||
- type: linux_bridge
|
|
||||||
name: bridge_name
|
|
||||||
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
|
|
||||||
- default: true
|
|
||||||
next_hop:
|
|
||||||
get_param: ControlPlaneDefaultRoute
|
|
||||||
members:
|
|
||||||
- type: interface
|
|
||||||
# NOTE: "interface_name" will be replaced by the value of NeutronPublicInterface,
|
|
||||||
# default is "nic1". Set this value via parameter_defaults in an environment file.
|
|
||||||
name: interface_name
|
|
||||||
primary: true
|
|
||||||
- type: vlan
|
|
||||||
vlan_id:
|
|
||||||
get_param: InternalApiNetworkVlanID
|
|
||||||
device: bridge_name
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: InternalApiIpSubnet
|
|
||||||
- type: vlan
|
|
||||||
vlan_id:
|
|
||||||
get_param: TenantNetworkVlanID
|
|
||||||
device: bridge_name
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: TenantIpSubnet
|
|
||||||
# Uncomment when including environments/network-management.yaml
|
|
||||||
# If setting default route on the Management interface, comment
|
|
||||||
# out the default route on the Control Plane interface.
|
|
||||||
#-
|
|
||||||
# type: vlan
|
|
||||||
# vlan_id: {get_param: ManagementNetworkVlanID}
|
|
||||||
# device: bridge_name
|
|
||||||
# addresses:
|
|
||||||
# -
|
|
||||||
# ip_netmask: {get_param: ManagementIpSubnet}
|
|
||||||
# routes:
|
|
||||||
# -
|
|
||||||
# default: true
|
|
||||||
# next_hop: {get_param: ManagementInterfaceDefaultRoute}
|
|
||||||
outputs:
|
|
||||||
OS::stack_id:
|
|
||||||
description: The OsNetConfigImpl resource.
|
|
||||||
value:
|
|
||||||
get_resource: OsNetConfigImpl
|
|
||||||
|
|
|
@ -0,0 +1,103 @@
|
||||||
|
heat_template_version: queens
|
||||||
|
description: >
|
||||||
|
Software Config to drive os-net-config to configure VLANs for the {{role.name}} role.
|
||||||
|
parameters:
|
||||||
|
ControlPlaneIp:
|
||||||
|
default: ''
|
||||||
|
description: IP address/subnet on the ctlplane network
|
||||||
|
type: string
|
||||||
|
{%- for network in networks %}
|
||||||
|
{{network.name}}IpSubnet:
|
||||||
|
default: ''
|
||||||
|
description: IP address/subnet on the {{network.name_lower}} network
|
||||||
|
type: string
|
||||||
|
{%- endfor %}
|
||||||
|
{%- for network in networks %}
|
||||||
|
{{network.name}}NetworkVlanID:
|
||||||
|
default: {{network.vlan}}
|
||||||
|
description: Vlan ID for the {{network.name_lower}} network traffic.
|
||||||
|
type: number
|
||||||
|
{%- endfor %}
|
||||||
|
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 default route of the control plane network.
|
||||||
|
type: string
|
||||||
|
{%- for network in networks %}
|
||||||
|
{%- if network.ipv6|default(false) and network.gateway_ipv6|default(false) %}
|
||||||
|
{{network.name}}InterfaceDefaultRoute:
|
||||||
|
default: '{{network.gateway_ipv6}}'
|
||||||
|
description: default route for the {{network.name_lower}} network
|
||||||
|
type: string
|
||||||
|
{%- elif network.gateway_ip|default(false) %}
|
||||||
|
{{network.name}}InterfaceDefaultRoute:
|
||||||
|
default: '{{network.gateway_ip}}'
|
||||||
|
description: default route for the {{network.name_lower}} network
|
||||||
|
type: string
|
||||||
|
{%- endif %}
|
||||||
|
{%- endfor %}
|
||||||
|
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: comma_delimited_list
|
||||||
|
EC2MetadataIp: # Override this via parameter_defaults
|
||||||
|
description: The IP address of the EC2 metadata server.
|
||||||
|
type: string
|
||||||
|
resources:
|
||||||
|
OsNetConfigImpl:
|
||||||
|
type: OS::Heat::SoftwareConfig
|
||||||
|
properties:
|
||||||
|
group: script
|
||||||
|
config:
|
||||||
|
str_replace:
|
||||||
|
template:
|
||||||
|
get_file: ../../scripts/run-os-net-config.sh
|
||||||
|
params:
|
||||||
|
$network_config:
|
||||||
|
network_config:
|
||||||
|
- type: linux_bridge
|
||||||
|
name: bridge_name
|
||||||
|
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
|
||||||
|
{%- if role.default_route_networks is not defined or 'ControlPlane' in role.default_route_networks %}
|
||||||
|
- default: true
|
||||||
|
next_hop:
|
||||||
|
get_param: ControlPlaneDefaultRoute
|
||||||
|
{%- endif %}
|
||||||
|
members:
|
||||||
|
- type: interface
|
||||||
|
name: interface_name
|
||||||
|
primary: true
|
||||||
|
{%- for network in networks if network.enabled|default(true) and network.name in role.networks %}
|
||||||
|
- type: vlan
|
||||||
|
vlan_id:
|
||||||
|
get_param: {{network.name}}NetworkVlanID
|
||||||
|
device: bridge_name
|
||||||
|
addresses:
|
||||||
|
- ip_netmask:
|
||||||
|
get_param: {{network.name}}IpSubnet
|
||||||
|
{%- if network.name in role.default_route_networks %}
|
||||||
|
routes:
|
||||||
|
- default: true
|
||||||
|
next_hop:
|
||||||
|
get_param: {{network.name}}InterfaceDefaultRoute
|
||||||
|
{%- endif %}
|
||||||
|
{%- endfor %}
|
||||||
|
outputs:
|
||||||
|
OS::stack_id:
|
||||||
|
description: The OsNetConfigImpl resource.
|
||||||
|
value:
|
||||||
|
get_resource: OsNetConfigImpl
|
|
@ -1,154 +0,0 @@
|
||||||
heat_template_version: queens
|
|
||||||
description: >
|
|
||||||
Software Config to drive os-net-config to configure VLANs 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
|
|
||||||
ManagementIpSubnet: # Only populated when including environments/network-management.yaml
|
|
||||||
default: ''
|
|
||||||
description: IP address/subnet on the management 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
|
|
||||||
ManagementNetworkVlanID:
|
|
||||||
default: 60
|
|
||||||
description: Vlan ID for the management 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 default route of the control plane network.
|
|
||||||
type: string
|
|
||||||
ExternalInterfaceDefaultRoute: # Not used by default in this template
|
|
||||||
default: 10.0.0.1
|
|
||||||
description: The default route of the external network.
|
|
||||||
type: string
|
|
||||||
ManagementInterfaceDefaultRoute: # Commented out by default in this template
|
|
||||||
default: unset
|
|
||||||
description: The default route of the management 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: comma_delimited_list
|
|
||||||
EC2MetadataIp: # Override this via parameter_defaults
|
|
||||||
description: The IP address of the EC2 metadata server.
|
|
||||||
type: string
|
|
||||||
resources:
|
|
||||||
OsNetConfigImpl:
|
|
||||||
type: OS::Heat::SoftwareConfig
|
|
||||||
properties:
|
|
||||||
group: script
|
|
||||||
config:
|
|
||||||
str_replace:
|
|
||||||
template:
|
|
||||||
get_file: ../../scripts/run-os-net-config.sh
|
|
||||||
params:
|
|
||||||
$network_config:
|
|
||||||
network_config:
|
|
||||||
- type: linux_bridge
|
|
||||||
name: br-storage
|
|
||||||
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
|
|
||||||
- default: true
|
|
||||||
next_hop:
|
|
||||||
get_param: ControlPlaneDefaultRoute
|
|
||||||
members:
|
|
||||||
- type: interface
|
|
||||||
name: nic1
|
|
||||||
# force the MAC address of the bridge to this interface
|
|
||||||
primary: true
|
|
||||||
- type: vlan
|
|
||||||
vlan_id:
|
|
||||||
get_param: InternalApiNetworkVlanID
|
|
||||||
device: br-storage
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: InternalApiIpSubnet
|
|
||||||
- type: vlan
|
|
||||||
vlan_id:
|
|
||||||
get_param: StorageNetworkVlanID
|
|
||||||
device: br-storage
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: StorageIpSubnet
|
|
||||||
- type: vlan
|
|
||||||
vlan_id:
|
|
||||||
get_param: StorageMgmtNetworkVlanID
|
|
||||||
device: br-storage
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: StorageMgmtIpSubnet
|
|
||||||
# Uncomment when including environments/network-management.yaml
|
|
||||||
# If setting default route on the Management interface, comment
|
|
||||||
# out the default route on the Control Plane.
|
|
||||||
#-
|
|
||||||
# type: vlan
|
|
||||||
# vlan_id: {get_param: ManagementNetworkVlanID}
|
|
||||||
# device: br-storage
|
|
||||||
# addresses:
|
|
||||||
# -
|
|
||||||
# ip_netmask: {get_param: ManagementIpSubnet}
|
|
||||||
# routes:
|
|
||||||
# -
|
|
||||||
# default: true
|
|
||||||
# next_hop: {get_param: ManagementInterfaceDefaultRoute}
|
|
||||||
outputs:
|
|
||||||
OS::stack_id:
|
|
||||||
description: The OsNetConfigImpl resource.
|
|
||||||
value:
|
|
||||||
get_resource: OsNetConfigImpl
|
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
This directory contains Heat templates to help configure
|
This directory contains Heat templates to help configure
|
||||||
Vlans on a single NIC for each Overcloud role.
|
VLANs on a single NIC for each Overcloud role.
|
||||||
|
|
||||||
There are two versions of the controller role template, one with
|
There are two versions of the controller role template, one with
|
||||||
an external network interface, and another without. If the
|
an external network interface, and another without. If the
|
||||||
|
@ -33,8 +33,10 @@ Same as above except set the following value for the controller role:
|
||||||
Configuration with System Management Network
|
Configuration with System Management Network
|
||||||
--------------------------------------------
|
--------------------------------------------
|
||||||
|
|
||||||
To enable the optional System Management network, create a Heat environment
|
The Management network is included for upgrade compatibility with
|
||||||
that looks something like this:
|
previous versions, but disabled. To enable the optional System
|
||||||
|
Management network, create a Heat environment that looks something like
|
||||||
|
this:
|
||||||
|
|
||||||
resource\_registry:
|
resource\_registry:
|
||||||
OS::TripleO::Network::Management: ../network/management.yaml
|
OS::TripleO::Network::Management: ../network/management.yaml
|
||||||
|
@ -47,3 +49,8 @@ that looks something like this:
|
||||||
Or use this Heat environment file:
|
Or use this Heat environment file:
|
||||||
|
|
||||||
environments/network-management.yaml
|
environments/network-management.yaml
|
||||||
|
|
||||||
|
Or, enable the Management network in network_data.yaml, and add the network
|
||||||
|
to the list of networks used by each role in the role definition file
|
||||||
|
(e.g. roles_data.yaml). Refer to installation documentation for procedure
|
||||||
|
to generate a role file for custom roles.
|
|
@ -1,132 +0,0 @@
|
||||||
heat_template_version: queens
|
|
||||||
description: >
|
|
||||||
Software Config to drive os-net-config to configure VLANs 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
|
|
||||||
ManagementIpSubnet: # Only populated when including environments/network-management.yaml
|
|
||||||
default: ''
|
|
||||||
description: IP address/subnet on the management network
|
|
||||||
type: string
|
|
||||||
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
|
|
||||||
ManagementNetworkVlanID:
|
|
||||||
default: 60
|
|
||||||
description: Vlan ID for the management 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 default route of the control plane network.
|
|
||||||
type: string
|
|
||||||
ExternalInterfaceDefaultRoute: # Not used by default in this template
|
|
||||||
default: 10.0.0.1
|
|
||||||
description: The default route of the external network.
|
|
||||||
type: string
|
|
||||||
ManagementInterfaceDefaultRoute: # Commented out by default in this template
|
|
||||||
default: unset
|
|
||||||
description: The default route of the management 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: comma_delimited_list
|
|
||||||
EC2MetadataIp: # Override this via parameter_defaults
|
|
||||||
description: The IP address of the EC2 metadata server.
|
|
||||||
type: string
|
|
||||||
resources:
|
|
||||||
OsNetConfigImpl:
|
|
||||||
type: OS::Heat::SoftwareConfig
|
|
||||||
properties:
|
|
||||||
group: script
|
|
||||||
config:
|
|
||||||
str_replace:
|
|
||||||
template:
|
|
||||||
get_file: ../../scripts/run-os-net-config.sh
|
|
||||||
params:
|
|
||||||
$network_config:
|
|
||||||
network_config:
|
|
||||||
- type: ovs_bridge
|
|
||||||
name: br-storage
|
|
||||||
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
|
|
||||||
- default: true
|
|
||||||
next_hop:
|
|
||||||
get_param: ControlPlaneDefaultRoute
|
|
||||||
members:
|
|
||||||
- type: interface
|
|
||||||
name: nic1
|
|
||||||
# force the MAC address of the bridge to this interface
|
|
||||||
primary: true
|
|
||||||
- type: vlan
|
|
||||||
vlan_id:
|
|
||||||
get_param: StorageNetworkVlanID
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: StorageIpSubnet
|
|
||||||
- type: vlan
|
|
||||||
vlan_id:
|
|
||||||
get_param: StorageMgmtNetworkVlanID
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: StorageMgmtIpSubnet
|
|
||||||
# Uncomment when including environments/network-management.yaml
|
|
||||||
# If setting default route on the Management interface, comment
|
|
||||||
# out the default route on the Control Plane.
|
|
||||||
#-
|
|
||||||
# type: vlan
|
|
||||||
# vlan_id: {get_param: ManagementNetworkVlanID}
|
|
||||||
# addresses:
|
|
||||||
# -
|
|
||||||
# ip_netmask: {get_param: ManagementIpSubnet}
|
|
||||||
# routes:
|
|
||||||
# -
|
|
||||||
# default: true
|
|
||||||
# next_hop: {get_param: ManagementInterfaceDefaultRoute}
|
|
||||||
outputs:
|
|
||||||
OS::stack_id:
|
|
||||||
description: The OsNetConfigImpl resource.
|
|
||||||
value:
|
|
||||||
get_resource: OsNetConfigImpl
|
|
||||||
|
|
|
@ -1,142 +0,0 @@
|
||||||
heat_template_version: queens
|
|
||||||
description: >
|
|
||||||
Software Config to drive os-net-config to configure VLANs 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
|
|
||||||
ManagementIpSubnet: # Only populated when including environments/network-management.yaml
|
|
||||||
default: ''
|
|
||||||
description: IP address/subnet on the management 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
|
|
||||||
StorageMgmtNetworkVlanID:
|
|
||||||
default: 40
|
|
||||||
description: Vlan ID for the storage mgmt network traffic.
|
|
||||||
type: number
|
|
||||||
ManagementNetworkVlanID:
|
|
||||||
default: 60
|
|
||||||
description: Vlan ID for the management 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 default route of the control plane network.
|
|
||||||
type: string
|
|
||||||
ExternalInterfaceDefaultRoute: # Not used by default in this template
|
|
||||||
default: 10.0.0.1
|
|
||||||
description: The default route of the external network.
|
|
||||||
type: string
|
|
||||||
ManagementInterfaceDefaultRoute: # Commented out by default in this template
|
|
||||||
default: unset
|
|
||||||
description: The default route of the management 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: comma_delimited_list
|
|
||||||
EC2MetadataIp: # Override this via parameter_defaults
|
|
||||||
description: The IP address of the EC2 metadata server.
|
|
||||||
type: string
|
|
||||||
resources:
|
|
||||||
OsNetConfigImpl:
|
|
||||||
type: OS::Heat::SoftwareConfig
|
|
||||||
properties:
|
|
||||||
group: script
|
|
||||||
config:
|
|
||||||
str_replace:
|
|
||||||
template:
|
|
||||||
get_file: ../../scripts/run-os-net-config.sh
|
|
||||||
params:
|
|
||||||
$network_config:
|
|
||||||
network_config:
|
|
||||||
- type: ovs_bridge
|
|
||||||
name: br-storage
|
|
||||||
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
|
|
||||||
- default: true
|
|
||||||
next_hop:
|
|
||||||
get_param: ControlPlaneDefaultRoute
|
|
||||||
members:
|
|
||||||
- type: interface
|
|
||||||
name: nic1
|
|
||||||
# force the MAC address of the bridge to this interface
|
|
||||||
primary: true
|
|
||||||
- type: vlan
|
|
||||||
vlan_id:
|
|
||||||
get_param: InternalApiNetworkVlanID
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: InternalApiIpSubnet
|
|
||||||
- type: vlan
|
|
||||||
vlan_id:
|
|
||||||
get_param: StorageNetworkVlanID
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: StorageIpSubnet
|
|
||||||
- type: vlan
|
|
||||||
vlan_id:
|
|
||||||
get_param: StorageMgmtNetworkVlanID
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: StorageMgmtIpSubnet
|
|
||||||
# Uncomment when including environments/network-management.yaml
|
|
||||||
# If setting default route on the Management interface, comment
|
|
||||||
# out the default route on the Control Plane.
|
|
||||||
#-
|
|
||||||
# type: vlan
|
|
||||||
# vlan_id: {get_param: ManagementNetworkVlanID}
|
|
||||||
# addresses:
|
|
||||||
# -
|
|
||||||
# ip_netmask: {get_param: ManagementIpSubnet}
|
|
||||||
# routes:
|
|
||||||
# -
|
|
||||||
# default: true
|
|
||||||
# next_hop: {get_param: ManagementInterfaceDefaultRoute}
|
|
||||||
outputs:
|
|
||||||
OS::stack_id:
|
|
||||||
description: The OsNetConfigImpl resource.
|
|
||||||
value:
|
|
||||||
get_resource: OsNetConfigImpl
|
|
||||||
|
|
|
@ -1,148 +0,0 @@
|
||||||
heat_template_version: queens
|
|
||||||
description: >
|
|
||||||
Software Config to drive os-net-config to configure VLANs 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
|
|
||||||
ManagementIpSubnet: # Only populated when including environments/network-management.yaml
|
|
||||||
default: ''
|
|
||||||
description: IP address/subnet on the management 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
|
|
||||||
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
|
|
||||||
ManagementNetworkVlanID:
|
|
||||||
default: 60
|
|
||||||
description: Vlan ID for the management 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 default route of the control plane network.
|
|
||||||
type: string
|
|
||||||
ExternalInterfaceDefaultRoute: # Not used by default in this template
|
|
||||||
default: 10.0.0.1
|
|
||||||
description: The default route of the external network.
|
|
||||||
type: string
|
|
||||||
ManagementInterfaceDefaultRoute: # Commented out by default in this template
|
|
||||||
default: unset
|
|
||||||
description: The default route of the management 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: comma_delimited_list
|
|
||||||
EC2MetadataIp: # Override this via parameter_defaults
|
|
||||||
description: The IP address of the EC2 metadata server.
|
|
||||||
type: string
|
|
||||||
resources:
|
|
||||||
OsNetConfigImpl:
|
|
||||||
type: OS::Heat::SoftwareConfig
|
|
||||||
properties:
|
|
||||||
group: script
|
|
||||||
config:
|
|
||||||
str_replace:
|
|
||||||
template:
|
|
||||||
get_file: ../../scripts/run-os-net-config.sh
|
|
||||||
params:
|
|
||||||
$network_config:
|
|
||||||
network_config:
|
|
||||||
- type: ovs_bridge
|
|
||||||
name: bridge_name
|
|
||||||
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
|
|
||||||
- default: true
|
|
||||||
next_hop:
|
|
||||||
get_param: ControlPlaneDefaultRoute
|
|
||||||
members:
|
|
||||||
- type: interface
|
|
||||||
name: nic1
|
|
||||||
# force the MAC address of the bridge to this interface
|
|
||||||
primary: true
|
|
||||||
- type: vlan
|
|
||||||
vlan_id:
|
|
||||||
get_param: InternalApiNetworkVlanID
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: InternalApiIpSubnet
|
|
||||||
- type: vlan
|
|
||||||
vlan_id:
|
|
||||||
get_param: StorageNetworkVlanID
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: StorageIpSubnet
|
|
||||||
# Uncomment when including environments/hyperconverged-ceph.yaml
|
|
||||||
#- type: vlan
|
|
||||||
# vlan_id: {get_param: StorageMgmtNetworkVlanID}
|
|
||||||
# addresses:
|
|
||||||
# - ip_netmask: {get_param: StorageMgmtIpSubnet}
|
|
||||||
- type: vlan
|
|
||||||
vlan_id:
|
|
||||||
get_param: TenantNetworkVlanID
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: TenantIpSubnet
|
|
||||||
# Uncomment when including environments/network-management.yaml
|
|
||||||
# If setting default route on the Management interface, comment
|
|
||||||
# out the default route on the Control Plane.
|
|
||||||
#- type: vlan
|
|
||||||
# vlan_id: {get_param: ManagementNetworkVlanID}
|
|
||||||
# addresses:
|
|
||||||
# - ip_netmask: {get_param: ManagementIpSubnet}
|
|
||||||
# routes:
|
|
||||||
# - default: true
|
|
||||||
# next_hop: {get_param: ManagementInterfaceDefaultRoute}
|
|
||||||
outputs:
|
|
||||||
OS::stack_id:
|
|
||||||
description: The OsNetConfigImpl resource.
|
|
||||||
value:
|
|
||||||
get_resource: OsNetConfigImpl
|
|
||||||
|
|
|
@ -0,0 +1,100 @@
|
||||||
|
# NOTE: This template is now deprecated, and is only included for compatibility
|
||||||
|
# when upgrading a deployment where this template was originally used. For new
|
||||||
|
# deployments, remove the External network from the Controller role and set
|
||||||
|
# default_route_networks to ['ControlPlane'].
|
||||||
|
heat_template_version: queens
|
||||||
|
description: >
|
||||||
|
Software Config to drive os-net-config to configure VLANs for the controller role. No external IP is configured.
|
||||||
|
parameters:
|
||||||
|
ControlPlaneIp:
|
||||||
|
default: ''
|
||||||
|
description: IP address/subnet on the ctlplane network
|
||||||
|
type: string
|
||||||
|
{%- for network in networks %}
|
||||||
|
{{network.name}}IpSubnet:
|
||||||
|
default: ''
|
||||||
|
description: IP address/subnet on the {{network.name_lower}} network
|
||||||
|
type: string
|
||||||
|
{%- endfor %}
|
||||||
|
{%- for network in networks %}
|
||||||
|
{{network.name}}NetworkVlanID:
|
||||||
|
default: {{network.vlan}}
|
||||||
|
description: Vlan ID for the {{network.name_lower}} network traffic.
|
||||||
|
type: number
|
||||||
|
{%- endfor %}
|
||||||
|
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 default route of the control plane network.
|
||||||
|
type: string
|
||||||
|
{%- for network in networks %}
|
||||||
|
{%- if network.ipv6|default(false) and network.gateway_ipv6|default(false) %}
|
||||||
|
{{network.name}}InterfaceDefaultRoute:
|
||||||
|
default: '{{network.gateway_ipv6}}'
|
||||||
|
description: default route for the {{network.name_lower}} network
|
||||||
|
type: string
|
||||||
|
{%- elif network.gateway_ip|default(false) %}
|
||||||
|
{{network.name}}InterfaceDefaultRoute:
|
||||||
|
default: '{{network.gateway_ip}}'
|
||||||
|
description: default route for the {{network.name_lower}} network
|
||||||
|
type: string
|
||||||
|
{%- endif %}
|
||||||
|
{%- endfor %}
|
||||||
|
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: comma_delimited_list
|
||||||
|
EC2MetadataIp: # Override this via parameter_defaults
|
||||||
|
description: The IP address of the EC2 metadata server.
|
||||||
|
type: string
|
||||||
|
resources:
|
||||||
|
OsNetConfigImpl:
|
||||||
|
type: OS::Heat::SoftwareConfig
|
||||||
|
properties:
|
||||||
|
group: script
|
||||||
|
config:
|
||||||
|
str_replace:
|
||||||
|
template:
|
||||||
|
get_file: ../../scripts/run-os-net-config.sh
|
||||||
|
params:
|
||||||
|
$network_config:
|
||||||
|
network_config:
|
||||||
|
- type: ovs_bridge
|
||||||
|
name: bridge_name
|
||||||
|
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
|
||||||
|
- default: true
|
||||||
|
next_hop:
|
||||||
|
get_param: ControlPlaneDefaultRoute
|
||||||
|
members:
|
||||||
|
- type: interface
|
||||||
|
name: nic1
|
||||||
|
# force the MAC address of the bridge to this interface
|
||||||
|
primary: true
|
||||||
|
{%- for network in networks if network.enabled|default(true) and network.name != 'External' %}
|
||||||
|
- type: vlan
|
||||||
|
vlan_id:
|
||||||
|
get_param: {{network.name}}NetworkVlanID
|
||||||
|
addresses:
|
||||||
|
- ip_netmask:
|
||||||
|
get_param: {{network.name}}IpSubnet
|
||||||
|
{%- endfor %}
|
||||||
|
outputs:
|
||||||
|
OS::stack_id:
|
||||||
|
description: The OsNetConfigImpl resource.
|
||||||
|
value:
|
||||||
|
get_resource: OsNetConfigImpl
|
||||||
|
|
|
@ -1,156 +0,0 @@
|
||||||
heat_template_version: queens
|
|
||||||
description: >
|
|
||||||
Software Config to drive os-net-config to configure VLANs for the controller role. No external IP is configured.
|
|
||||||
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
|
|
||||||
ManagementIpSubnet: # Only populated when including environments/network-management.yaml
|
|
||||||
default: ''
|
|
||||||
description: IP address/subnet on the management 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
|
|
||||||
ManagementNetworkVlanID:
|
|
||||||
default: 60
|
|
||||||
description: Vlan ID for the management network traffic.
|
|
||||||
type: number
|
|
||||||
ControlPlaneDefaultRoute: # Override this via parameter_defaults
|
|
||||||
description: The default route of the control plane network.
|
|
||||||
type: string
|
|
||||||
ExternalInterfaceDefaultRoute:
|
|
||||||
default: 10.0.0.1
|
|
||||||
description: default route for the external network
|
|
||||||
type: string
|
|
||||||
ManagementInterfaceDefaultRoute: # Commented out by default in this template
|
|
||||||
default: unset
|
|
||||||
description: The default route of the management network.
|
|
||||||
type: string
|
|
||||||
ControlPlaneSubnetCidr: # Override this via parameter_defaults
|
|
||||||
default: '24'
|
|
||||||
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: comma_delimited_list
|
|
||||||
EC2MetadataIp: # Override this via parameter_defaults
|
|
||||||
description: The IP address of the EC2 metadata server.
|
|
||||||
type: string
|
|
||||||
resources:
|
|
||||||
OsNetConfigImpl:
|
|
||||||
type: OS::Heat::SoftwareConfig
|
|
||||||
properties:
|
|
||||||
group: script
|
|
||||||
config:
|
|
||||||
str_replace:
|
|
||||||
template:
|
|
||||||
get_file: ../../scripts/run-os-net-config.sh
|
|
||||||
params:
|
|
||||||
$network_config:
|
|
||||||
network_config:
|
|
||||||
- type: ovs_bridge
|
|
||||||
name: bridge_name
|
|
||||||
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
|
|
||||||
- default: true
|
|
||||||
next_hop:
|
|
||||||
get_param: ControlPlaneDefaultRoute
|
|
||||||
members:
|
|
||||||
- type: interface
|
|
||||||
name: nic1
|
|
||||||
# force the MAC address of the bridge to this interface
|
|
||||||
primary: true
|
|
||||||
- type: vlan
|
|
||||||
vlan_id:
|
|
||||||
get_param: InternalApiNetworkVlanID
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: InternalApiIpSubnet
|
|
||||||
- type: vlan
|
|
||||||
vlan_id:
|
|
||||||
get_param: StorageNetworkVlanID
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: StorageIpSubnet
|
|
||||||
- type: vlan
|
|
||||||
vlan_id:
|
|
||||||
get_param: StorageMgmtNetworkVlanID
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: StorageMgmtIpSubnet
|
|
||||||
- type: vlan
|
|
||||||
vlan_id:
|
|
||||||
get_param: TenantNetworkVlanID
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: TenantIpSubnet
|
|
||||||
# Uncomment when including environments/network-management.yaml
|
|
||||||
# If setting default route on the Management interface, comment
|
|
||||||
# out the default route on the Control Plane.
|
|
||||||
#-
|
|
||||||
# type: vlan
|
|
||||||
# vlan_id: {get_param: ManagementNetworkVlanID}
|
|
||||||
# addresses:
|
|
||||||
# -
|
|
||||||
# ip_netmask: {get_param: ManagementIpSubnet}
|
|
||||||
# routes:
|
|
||||||
# -
|
|
||||||
# default: true
|
|
||||||
# next_hop: {get_param: ManagementInterfaceDefaultRoute}
|
|
||||||
outputs:
|
|
||||||
OS::stack_id:
|
|
||||||
description: The OsNetConfigImpl resource.
|
|
||||||
value:
|
|
||||||
get_resource: OsNetConfigImpl
|
|
||||||
|
|
|
@ -7,54 +7,18 @@ parameters:
|
||||||
default: ''
|
default: ''
|
||||||
description: IP address/subnet on the ctlplane network
|
description: IP address/subnet on the ctlplane network
|
||||||
type: string
|
type: string
|
||||||
ExternalIpSubnet:
|
{%- for network in networks %}
|
||||||
|
{{network.name}}IpSubnet:
|
||||||
default: ''
|
default: ''
|
||||||
description: IP address/subnet on the external network
|
description: IP address/subnet on the {{network.name_lower}} network
|
||||||
type: string
|
type: string
|
||||||
InternalApiIpSubnet:
|
{%- endfor %}
|
||||||
default: ''
|
{%- for network in networks %}
|
||||||
description: IP address/subnet on the internal_api network
|
{{network.name}}NetworkVlanID:
|
||||||
type: string
|
default: {{network.vlan}}
|
||||||
StorageIpSubnet:
|
description: Vlan ID for the {{network.name_lower}} network traffic.
|
||||||
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
|
|
||||||
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
|
|
||||||
ManagementNetworkVlanID:
|
|
||||||
default: 60
|
|
||||||
description: Vlan ID for the management network traffic.
|
|
||||||
type: number
|
type: number
|
||||||
|
{%- endfor %}
|
||||||
ControlPlaneSubnetCidr: # Override this via parameter_defaults
|
ControlPlaneSubnetCidr: # Override this via parameter_defaults
|
||||||
default: '24'
|
default: '24'
|
||||||
description: The subnet CIDR of the control plane network.
|
description: The subnet CIDR of the control plane network.
|
||||||
|
@ -62,14 +26,19 @@ parameters:
|
||||||
ControlPlaneDefaultRoute: # Override this via parameter_defaults
|
ControlPlaneDefaultRoute: # Override this via parameter_defaults
|
||||||
description: The default route of the control plane network.
|
description: The default route of the control plane network.
|
||||||
type: string
|
type: string
|
||||||
ExternalInterfaceDefaultRoute:
|
{%- for network in networks %}
|
||||||
default: 10.0.0.1
|
{%- if network.ipv6|default(false) and network.gateway_ipv6|default(false) %}
|
||||||
description: default route for the external network
|
{{network.name}}InterfaceDefaultRoute:
|
||||||
|
default: '{{network.gateway_ipv6}}'
|
||||||
|
description: default route for the {{network.name_lower}} network
|
||||||
type: string
|
type: string
|
||||||
ManagementInterfaceDefaultRoute: # Commented out by default in this template
|
{%- elif network.gateway_ip|default(false) %}
|
||||||
default: unset
|
{{network.name}}InterfaceDefaultRoute:
|
||||||
description: The default route of the management network.
|
default: '{{network.gateway_ip}}'
|
||||||
|
description: default route for the {{network.name_lower}} network
|
||||||
type: string
|
type: string
|
||||||
|
{%- endif %}
|
||||||
|
{%- endfor %}
|
||||||
DnsServers: # Override this via parameter_defaults
|
DnsServers: # Override this via parameter_defaults
|
||||||
default: []
|
default: []
|
||||||
description: A list of DNS servers (2 max for some implementations) that will be added to resolv.conf.
|
description: A list of DNS servers (2 max for some implementations) that will be added to resolv.conf.
|
|
@ -1,164 +0,0 @@
|
||||||
heat_template_version: queens
|
|
||||||
description: >
|
|
||||||
Software Config to drive os-net-config to configure VLANs 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
|
|
||||||
ManagementIpSubnet: # Only populated when including environments/network-management.yaml
|
|
||||||
default: ''
|
|
||||||
description: IP address/subnet on the management 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
|
|
||||||
ManagementNetworkVlanID:
|
|
||||||
default: 60
|
|
||||||
description: Vlan ID for the management network traffic.
|
|
||||||
type: number
|
|
||||||
ControlPlaneDefaultRoute: # Override this via parameter_defaults
|
|
||||||
description: The default route of the control plane network.
|
|
||||||
type: string
|
|
||||||
ExternalInterfaceDefaultRoute:
|
|
||||||
default: 10.0.0.1
|
|
||||||
description: default route for the external network
|
|
||||||
type: string
|
|
||||||
ManagementInterfaceDefaultRoute: # Commented out by default in this template
|
|
||||||
default: unset
|
|
||||||
description: The default route of the management network.
|
|
||||||
type: string
|
|
||||||
ControlPlaneSubnetCidr: # Override this via parameter_defaults
|
|
||||||
default: '24'
|
|
||||||
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: comma_delimited_list
|
|
||||||
EC2MetadataIp: # Override this via parameter_defaults
|
|
||||||
description: The IP address of the EC2 metadata server.
|
|
||||||
type: string
|
|
||||||
resources:
|
|
||||||
OsNetConfigImpl:
|
|
||||||
type: OS::Heat::SoftwareConfig
|
|
||||||
properties:
|
|
||||||
group: script
|
|
||||||
config:
|
|
||||||
str_replace:
|
|
||||||
template:
|
|
||||||
get_file: ../../scripts/run-os-net-config.sh
|
|
||||||
params:
|
|
||||||
$network_config:
|
|
||||||
network_config:
|
|
||||||
- type: ovs_bridge
|
|
||||||
name: bridge_name
|
|
||||||
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
|
|
||||||
members:
|
|
||||||
- type: interface
|
|
||||||
name: nic1
|
|
||||||
# force the MAC address of the bridge to this interface
|
|
||||||
primary: true
|
|
||||||
- type: vlan
|
|
||||||
vlan_id:
|
|
||||||
get_param: ExternalNetworkVlanID
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: ExternalIpSubnet
|
|
||||||
routes:
|
|
||||||
- default: true
|
|
||||||
next_hop:
|
|
||||||
get_param: ExternalInterfaceDefaultRoute
|
|
||||||
- type: vlan
|
|
||||||
vlan_id:
|
|
||||||
get_param: InternalApiNetworkVlanID
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: InternalApiIpSubnet
|
|
||||||
- type: vlan
|
|
||||||
vlan_id:
|
|
||||||
get_param: StorageNetworkVlanID
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: StorageIpSubnet
|
|
||||||
- type: vlan
|
|
||||||
vlan_id:
|
|
||||||
get_param: StorageMgmtNetworkVlanID
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: StorageMgmtIpSubnet
|
|
||||||
- type: vlan
|
|
||||||
vlan_id:
|
|
||||||
get_param: TenantNetworkVlanID
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: TenantIpSubnet
|
|
||||||
# Uncomment when including environments/network-management.yaml
|
|
||||||
# If setting default route on the Management interface, comment
|
|
||||||
# out the default route on the External interface. This will
|
|
||||||
# make the External API unreachable from remote subnets.
|
|
||||||
#-
|
|
||||||
# type: vlan
|
|
||||||
# vlan_id: {get_param: ManagementNetworkVlanID}
|
|
||||||
# addresses:
|
|
||||||
# -
|
|
||||||
# ip_netmask: {get_param: ManagementIpSubnet}
|
|
||||||
# routes:
|
|
||||||
# -
|
|
||||||
# default: true
|
|
||||||
# next_hop: {get_param: ManagementInterfaceDefaultRoute}
|
|
||||||
outputs:
|
|
||||||
OS::stack_id:
|
|
||||||
description: The OsNetConfigImpl resource.
|
|
||||||
value:
|
|
||||||
get_resource: OsNetConfigImpl
|
|
||||||
|
|
|
@ -1,144 +0,0 @@
|
||||||
heat_template_version: queens
|
|
||||||
description: >
|
|
||||||
Software Config to drive os-net-config to configure VLANs for a dedicated Neutron networker 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
|
|
||||||
ManagementIpSubnet: # Only populated when including environments/network-management.yaml
|
|
||||||
default: ''
|
|
||||||
description: IP address/subnet on the management 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
|
|
||||||
ManagementNetworkVlanID:
|
|
||||||
default: 60
|
|
||||||
description: Vlan ID for the management network traffic.
|
|
||||||
type: number
|
|
||||||
ControlPlaneDefaultRoute: # Override this via parameter_defaults
|
|
||||||
description: The default route of the control plane network.
|
|
||||||
type: string
|
|
||||||
ExternalInterfaceDefaultRoute:
|
|
||||||
default: 10.0.0.1
|
|
||||||
description: default route for the external network
|
|
||||||
type: string
|
|
||||||
ManagementInterfaceDefaultRoute: # Commented out by default in this template
|
|
||||||
default: unset
|
|
||||||
description: The default route of the management network.
|
|
||||||
type: string
|
|
||||||
ControlPlaneSubnetCidr: # Override this via parameter_defaults
|
|
||||||
default: '24'
|
|
||||||
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: comma_delimited_list
|
|
||||||
EC2MetadataIp: # Override this via parameter_defaults
|
|
||||||
description: The IP address of the EC2 metadata server.
|
|
||||||
type: string
|
|
||||||
resources:
|
|
||||||
OsNetConfigImpl:
|
|
||||||
type: OS::Heat::SoftwareConfig
|
|
||||||
properties:
|
|
||||||
group: script
|
|
||||||
config:
|
|
||||||
str_replace:
|
|
||||||
template:
|
|
||||||
get_file: ../../scripts/run-os-net-config.sh
|
|
||||||
params:
|
|
||||||
$network_config:
|
|
||||||
network_config:
|
|
||||||
- type: ovs_bridge
|
|
||||||
name: bridge_name
|
|
||||||
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
|
|
||||||
- default: true
|
|
||||||
next_hop:
|
|
||||||
get_param: ControlPlaneDefaultRoute
|
|
||||||
members:
|
|
||||||
- type: interface
|
|
||||||
name: nic1
|
|
||||||
# force the MAC address of the bridge to this interface
|
|
||||||
primary: true
|
|
||||||
- type: vlan
|
|
||||||
vlan_id:
|
|
||||||
get_param: InternalApiNetworkVlanID
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: InternalApiIpSubnet
|
|
||||||
- type: vlan
|
|
||||||
vlan_id:
|
|
||||||
get_param: TenantNetworkVlanID
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: TenantIpSubnet
|
|
||||||
# Uncomment when including environments/network-management.yaml
|
|
||||||
# If setting default route on the Management interface, comment
|
|
||||||
# out the default route on the Control Plane interface.
|
|
||||||
#-
|
|
||||||
# type: vlan
|
|
||||||
# vlan_id: {get_param: ManagementNetworkVlanID}
|
|
||||||
# addresses:
|
|
||||||
# -
|
|
||||||
# ip_netmask: {get_param: ManagementIpSubnet}
|
|
||||||
# routes:
|
|
||||||
# -
|
|
||||||
# default: true
|
|
||||||
# next_hop: {get_param: ManagementInterfaceDefaultRoute}
|
|
||||||
outputs:
|
|
||||||
OS::stack_id:
|
|
||||||
description: The OsNetConfigImpl resource.
|
|
||||||
value:
|
|
||||||
get_resource: OsNetConfigImpl
|
|
||||||
|
|
|
@ -0,0 +1,103 @@
|
||||||
|
heat_template_version: queens
|
||||||
|
description: >
|
||||||
|
Software Config to drive os-net-config to configure VLANs for the {{role.name}} role.
|
||||||
|
parameters:
|
||||||
|
ControlPlaneIp:
|
||||||
|
default: ''
|
||||||
|
description: IP address/subnet on the ctlplane network
|
||||||
|
type: string
|
||||||
|
{%- for network in networks %}
|
||||||
|
{{network.name}}IpSubnet:
|
||||||
|
default: ''
|
||||||
|
description: IP address/subnet on the {{network.name_lower}} network
|
||||||
|
type: string
|
||||||
|
{%- endfor %}
|
||||||
|
{%- for network in networks %}
|
||||||
|
{{network.name}}NetworkVlanID:
|
||||||
|
default: {{network.vlan}}
|
||||||
|
description: Vlan ID for the {{network.name_lower}} network traffic.
|
||||||
|
type: number
|
||||||
|
{%- endfor %}
|
||||||
|
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 default route of the control plane network.
|
||||||
|
type: string
|
||||||
|
{%- for network in networks %}
|
||||||
|
{%- if network.ipv6|default(false) and network.gateway_ipv6|default(false) %}
|
||||||
|
{{network.name}}InterfaceDefaultRoute:
|
||||||
|
default: '{{network.gateway_ipv6}}'
|
||||||
|
description: default route for the {{network.name_lower}} network
|
||||||
|
type: string
|
||||||
|
{%- elif network.gateway_ip|default(false) %}
|
||||||
|
{{network.name}}InterfaceDefaultRoute:
|
||||||
|
default: '{{network.gateway_ip}}'
|
||||||
|
description: default route for the {{network.name_lower}} network
|
||||||
|
type: string
|
||||||
|
{%- endif %}
|
||||||
|
{%- endfor %}
|
||||||
|
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: comma_delimited_list
|
||||||
|
EC2MetadataIp: # Override this via parameter_defaults
|
||||||
|
description: The IP address of the EC2 metadata server.
|
||||||
|
type: string
|
||||||
|
resources:
|
||||||
|
OsNetConfigImpl:
|
||||||
|
type: OS::Heat::SoftwareConfig
|
||||||
|
properties:
|
||||||
|
group: script
|
||||||
|
config:
|
||||||
|
str_replace:
|
||||||
|
template:
|
||||||
|
get_file: ../../scripts/run-os-net-config.sh
|
||||||
|
params:
|
||||||
|
$network_config:
|
||||||
|
network_config:
|
||||||
|
- type: ovs_bridge
|
||||||
|
name: bridge_name
|
||||||
|
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
|
||||||
|
{%- if role.default_route_networks is not defined or 'ControlPlane' in role.default_route_networks %}
|
||||||
|
- default: true
|
||||||
|
next_hop:
|
||||||
|
get_param: ControlPlaneDefaultRoute
|
||||||
|
{%- endif %}
|
||||||
|
members:
|
||||||
|
- type: interface
|
||||||
|
name: nic1
|
||||||
|
# force the MAC address of the bridge to this interface
|
||||||
|
primary: true
|
||||||
|
{%- for network in networks if network.enabled|default(true) and network.name in role.networks %}
|
||||||
|
- type: vlan
|
||||||
|
vlan_id:
|
||||||
|
get_param: {{network.name}}NetworkVlanID
|
||||||
|
addresses:
|
||||||
|
- ip_netmask:
|
||||||
|
get_param: {{network.name}}IpSubnet
|
||||||
|
{%- if network.name in role.default_route_network %}
|
||||||
|
routes:
|
||||||
|
- default: true
|
||||||
|
next_hop:
|
||||||
|
get_param: {{network.name}}InterfaceDefaultRoute
|
||||||
|
{%- endif %}
|
||||||
|
{%- endfor %}
|
||||||
|
outputs:
|
||||||
|
OS::stack_id:
|
||||||
|
description: The OsNetConfigImpl resource.
|
||||||
|
value:
|
||||||
|
get_resource: OsNetConfigImpl
|
|
@ -1,142 +0,0 @@
|
||||||
heat_template_version: queens
|
|
||||||
description: >
|
|
||||||
Software Config to drive os-net-config to configure VLANs 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
|
|
||||||
ManagementIpSubnet: # Only populated when including environments/network-management.yaml
|
|
||||||
default: ''
|
|
||||||
description: IP address/subnet on the management 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
|
|
||||||
StorageMgmtNetworkVlanID:
|
|
||||||
default: 40
|
|
||||||
description: Vlan ID for the storage mgmt network traffic.
|
|
||||||
type: number
|
|
||||||
ManagementNetworkVlanID:
|
|
||||||
default: 60
|
|
||||||
description: Vlan ID for the management 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 default route of the control plane network.
|
|
||||||
type: string
|
|
||||||
ExternalInterfaceDefaultRoute: # Not used by default in this template
|
|
||||||
default: 10.0.0.1
|
|
||||||
description: The default route of the external network.
|
|
||||||
type: string
|
|
||||||
ManagementInterfaceDefaultRoute: # Commented out by default in this template
|
|
||||||
default: unset
|
|
||||||
description: The default route of the management 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: comma_delimited_list
|
|
||||||
EC2MetadataIp: # Override this via parameter_defaults
|
|
||||||
description: The IP address of the EC2 metadata server.
|
|
||||||
type: string
|
|
||||||
resources:
|
|
||||||
OsNetConfigImpl:
|
|
||||||
type: OS::Heat::SoftwareConfig
|
|
||||||
properties:
|
|
||||||
group: script
|
|
||||||
config:
|
|
||||||
str_replace:
|
|
||||||
template:
|
|
||||||
get_file: ../../scripts/run-os-net-config.sh
|
|
||||||
params:
|
|
||||||
$network_config:
|
|
||||||
network_config:
|
|
||||||
- type: ovs_bridge
|
|
||||||
name: br-storage
|
|
||||||
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
|
|
||||||
- default: true
|
|
||||||
next_hop:
|
|
||||||
get_param: ControlPlaneDefaultRoute
|
|
||||||
members:
|
|
||||||
- type: interface
|
|
||||||
name: nic1
|
|
||||||
# force the MAC address of the bridge to this interface
|
|
||||||
primary: true
|
|
||||||
- type: vlan
|
|
||||||
vlan_id:
|
|
||||||
get_param: InternalApiNetworkVlanID
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: InternalApiIpSubnet
|
|
||||||
- type: vlan
|
|
||||||
vlan_id:
|
|
||||||
get_param: StorageNetworkVlanID
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: StorageIpSubnet
|
|
||||||
- type: vlan
|
|
||||||
vlan_id:
|
|
||||||
get_param: StorageMgmtNetworkVlanID
|
|
||||||
addresses:
|
|
||||||
- ip_netmask:
|
|
||||||
get_param: StorageMgmtIpSubnet
|
|
||||||
# Uncomment when including environments/network-management.yaml
|
|
||||||
# If setting default route on the Management interface, comment
|
|
||||||
# out the default route on the Control Plane.
|
|
||||||
#-
|
|
||||||
# type: vlan
|
|
||||||
# vlan_id: {get_param: ManagementNetworkVlanID}
|
|
||||||
# addresses:
|
|
||||||
# -
|
|
||||||
# ip_netmask: {get_param: ManagementIpSubnet}
|
|
||||||
# routes:
|
|
||||||
# -
|
|
||||||
# default: true
|
|
||||||
# next_hop: {get_param: ManagementInterfaceDefaultRoute}
|
|
||||||
outputs:
|
|
||||||
OS::stack_id:
|
|
||||||
description: The OsNetConfigImpl resource.
|
|
||||||
value:
|
|
||||||
get_resource: OsNetConfigImpl
|
|
||||||
|
|
|
@ -67,8 +67,8 @@ parameters:
|
||||||
type: string
|
type: string
|
||||||
{%- if network.vlan %}
|
{%- if network.vlan %}
|
||||||
{{network.name}}NetworkVlanID:
|
{{network.name}}NetworkVlanID:
|
||||||
default: {{network.vlan}}
|
default: {{network.vlan|default('')}}
|
||||||
description: Vlan ID for the {{network.name}} network traffic.
|
description: Vlan ID for the {{network.name_lower}} network traffic.
|
||||||
type: number
|
type: number
|
||||||
{%- endif %}
|
{%- endif %}
|
||||||
|
|
||||||
|
|
|
@ -6,6 +6,7 @@
|
||||||
# name_lower: lowercase version of name used for filenames
|
# name_lower: lowercase version of name used for filenames
|
||||||
# (optional, defaults to name.lower())
|
# (optional, defaults to name.lower())
|
||||||
# enabled: Is the network enabled (optional, defaults to true)
|
# 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)
|
# vlan: vlan for the network (optional)
|
||||||
# vip: Enable creation of a virtual IP on this network
|
# 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'
|
# ip_subnet: IP/CIDR, e.g. '192.168.24.0/24' or '2001:db8:fd00:1000::/64'
|
||||||
|
@ -40,51 +41,65 @@
|
||||||
# ipv6: true, and the network/<network>.yaml file will be configured as IPv6.
|
# 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
|
# For configuring both IPv4 and IPv6 on the same interface, use two separate
|
||||||
# networks, and then assign both IPs in the custom NIC configuration templates.
|
# 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: External
|
|
||||||
vip: true
|
|
||||||
name_lower: external
|
|
||||||
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'
|
|
||||||
- name: InternalApi
|
|
||||||
name_lower: internal_api
|
|
||||||
vip: true
|
|
||||||
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'}]
|
|
||||||
- name: Storage
|
- name: Storage
|
||||||
vip: true
|
vip: true
|
||||||
|
vlan: 30
|
||||||
name_lower: storage
|
name_lower: storage
|
||||||
ip_subnet: '172.16.1.0/24'
|
ip_subnet: '172.18.0.0/24'
|
||||||
allocation_pools: [{'start': '172.16.1.4', 'end': '172.16.1.250'}]
|
allocation_pools: [{'start': '172.18.0.10', 'end': '172.18.0.250'}]
|
||||||
ipv6_subnet: 'fd00:fd00:fd00:3000::/64'
|
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'}]
|
ipv6_allocation_pools: [{'start': 'fd00:fd00:fd00:3000::10', 'end': 'fd00:fd00:fd00:3000:ffff:ffff:ffff:fffe'}]
|
||||||
- name: StorageMgmt
|
- name: StorageMgmt
|
||||||
name_lower: storage_mgmt
|
name_lower: storage_mgmt
|
||||||
vip: true
|
vip: true
|
||||||
ip_subnet: '172.16.3.0/24'
|
vlan: 40
|
||||||
allocation_pools: [{'start': '172.16.3.4', 'end': '172.16.3.250'}]
|
ip_subnet: '172.19.0.0/24'
|
||||||
|
allocation_pools: [{'start': '172.19.0.10', 'end': '172.19.0.250'}]
|
||||||
ipv6_subnet: 'fd00:fd00:fd00:4000::/64'
|
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'}]
|
ipv6_allocation_pools: [{'start': 'fd00:fd00:fd00:4000::10', 'end': 'fd00:fd00:fd00:4000:ffff:ffff:ffff:fffe'}]
|
||||||
|
- name: InternalApi
|
||||||
|
name_lower: internal_api
|
||||||
|
vip: true
|
||||||
|
vlan: 20
|
||||||
|
ip_subnet: '172.17.0.0/24'
|
||||||
|
allocation_pools: [{'start': '172.17.0.10', 'end': '172.17.0.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'}]
|
||||||
- name: Tenant
|
- name: Tenant
|
||||||
vip: false # Tenant network does not use VIPs
|
vip: false # Tenant network does not use VIPs
|
||||||
name_lower: tenant
|
name_lower: tenant
|
||||||
|
vlan: 50
|
||||||
ip_subnet: '172.16.0.0/24'
|
ip_subnet: '172.16.0.0/24'
|
||||||
allocation_pools: [{'start': '172.16.0.4', 'end': '172.16.0.250'}]
|
allocation_pools: [{'start': '172.16.0.10', '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_subnet: 'fd00:fd00:fd00:5000::/64'
|
||||||
ipv6_allocation_pools: [{'start': 'fd00:fd00:fd00:5000::10', 'end': 'fd00:fd00:fd00:5000:ffff:ffff:ffff:fffe'}]
|
ipv6_allocation_pools: [{'start': 'fd00:fd00:fd00:5000::10', 'end': 'fd00:fd00:fd00:5000:ffff:ffff:ffff:fffe'}]
|
||||||
|
- name: External
|
||||||
|
vip: true
|
||||||
|
name_lower: external
|
||||||
|
vlan: 10
|
||||||
|
ip_subnet: '10.0.0.0/24'
|
||||||
|
allocation_pools: [{'start': '10.0.0.10', 'end': '10.0.0.50'}]
|
||||||
|
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'
|
||||||
- name: Management
|
- name: Management
|
||||||
# Management network is enabled by default for backwards-compatibility, but
|
# Management network is included for backwards-compatibility, but
|
||||||
# is not included in any roles by default. Add to role definitions to use.
|
# is not enabled or included in any role definitions by default.
|
||||||
enabled: true
|
# Include environments/network-management yaml to override, or
|
||||||
|
# enable this network and add it to the roles in roles_data.yaml.
|
||||||
|
enabled: false
|
||||||
vip: false # Management network does not use VIPs
|
vip: false # Management network does not use VIPs
|
||||||
name_lower: management
|
name_lower: management
|
||||||
|
vlan: 60
|
||||||
ip_subnet: '10.0.1.0/24'
|
ip_subnet: '10.0.1.0/24'
|
||||||
allocation_pools: [{'start': '10.0.1.4', 'end': '10.0.1.250'}]
|
allocation_pools: [{'start': '10.0.1.4', 'end': '10.0.1.250'}]
|
||||||
ipv6_subnet: 'fd00:fd00:fd00:6000::/64'
|
ipv6_subnet: 'fd00:fd00:fd00:6000::/64'
|
||||||
|
|
|
@ -1,7 +1,4 @@
|
||||||
# Like network_data.yaml but adds and enables StorageNFS network,
|
# List of networks, used for j2 templating of enabled networks
|
||||||
# used by manila with ceph-NFS back end.
|
|
||||||
#
|
|
||||||
## List of networks, used for j2 templating of enabled networks
|
|
||||||
#
|
#
|
||||||
# Supported values:
|
# Supported values:
|
||||||
#
|
#
|
||||||
|
@ -9,6 +6,7 @@
|
||||||
# name_lower: lowercase version of name used for filenames
|
# name_lower: lowercase version of name used for filenames
|
||||||
# (optional, defaults to name.lower())
|
# (optional, defaults to name.lower())
|
||||||
# enabled: Is the network enabled (optional, defaults to true)
|
# 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)
|
# vlan: vlan for the network (optional)
|
||||||
# vip: Enable creation of a virtual IP on this network
|
# 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'
|
# ip_subnet: IP/CIDR, e.g. '192.168.24.0/24' or '2001:db8:fd00:1000::/64'
|
||||||
|
@ -43,51 +41,65 @@
|
||||||
# ipv6: true, and the network/<network>.yaml file will be configured as IPv6.
|
# 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
|
# For configuring both IPv4 and IPv6 on the same interface, use two separate
|
||||||
# networks, and then assign both IPs in the custom NIC configuration templates.
|
# 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: External
|
|
||||||
vip: true
|
|
||||||
name_lower: external
|
|
||||||
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'
|
|
||||||
- name: InternalApi
|
|
||||||
name_lower: internal_api
|
|
||||||
vip: true
|
|
||||||
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'}]
|
|
||||||
- name: Storage
|
- name: Storage
|
||||||
vip: true
|
vip: true
|
||||||
|
vlan: 30
|
||||||
name_lower: storage
|
name_lower: storage
|
||||||
ip_subnet: '172.16.1.0/24'
|
ip_subnet: '172.18.0.0/24'
|
||||||
allocation_pools: [{'start': '172.16.1.4', 'end': '172.16.1.250'}]
|
allocation_pools: [{'start': '172.18.0.10', 'end': '172.18.0.250'}]
|
||||||
ipv6_subnet: 'fd00:fd00:fd00:3000::/64'
|
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'}]
|
ipv6_allocation_pools: [{'start': 'fd00:fd00:fd00:3000::10', 'end': 'fd00:fd00:fd00:3000:ffff:ffff:ffff:fffe'}]
|
||||||
- name: StorageMgmt
|
- name: StorageMgmt
|
||||||
name_lower: storage_mgmt
|
name_lower: storage_mgmt
|
||||||
vip: true
|
vip: true
|
||||||
ip_subnet: '172.16.3.0/24'
|
vlan: 40
|
||||||
allocation_pools: [{'start': '172.16.3.4', 'end': '172.16.3.250'}]
|
ip_subnet: '172.19.0.0/24'
|
||||||
|
allocation_pools: [{'start': '172.19.0.10', 'end': '172.19.0.250'}]
|
||||||
ipv6_subnet: 'fd00:fd00:fd00:4000::/64'
|
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'}]
|
ipv6_allocation_pools: [{'start': 'fd00:fd00:fd00:4000::10', 'end': 'fd00:fd00:fd00:4000:ffff:ffff:ffff:fffe'}]
|
||||||
|
- name: InternalApi
|
||||||
|
name_lower: internal_api
|
||||||
|
vip: true
|
||||||
|
vlan: 20
|
||||||
|
ip_subnet: '172.17.0.0/24'
|
||||||
|
allocation_pools: [{'start': '172.17.0.10', 'end': '172.17.0.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'}]
|
||||||
- name: Tenant
|
- name: Tenant
|
||||||
vip: false # Tenant network does not use VIPs
|
vip: false # Tenant network does not use VIPs
|
||||||
name_lower: tenant
|
name_lower: tenant
|
||||||
|
vlan: 50
|
||||||
ip_subnet: '172.16.0.0/24'
|
ip_subnet: '172.16.0.0/24'
|
||||||
allocation_pools: [{'start': '172.16.0.4', 'end': '172.16.0.250'}]
|
allocation_pools: [{'start': '172.16.0.10', '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_subnet: 'fd00:fd00:fd00:5000::/64'
|
||||||
ipv6_allocation_pools: [{'start': 'fd00:fd00:fd00:5000::10', 'end': 'fd00:fd00:fd00:5000:ffff:ffff:ffff:fffe'}]
|
ipv6_allocation_pools: [{'start': 'fd00:fd00:fd00:5000::10', 'end': 'fd00:fd00:fd00:5000:ffff:ffff:ffff:fffe'}]
|
||||||
|
- name: External
|
||||||
|
vip: true
|
||||||
|
name_lower: external
|
||||||
|
vlan: 10
|
||||||
|
ip_subnet: '10.0.0.0/24'
|
||||||
|
allocation_pools: [{'start': '10.0.0.10', 'end': '10.0.0.50'}]
|
||||||
|
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'
|
||||||
- name: Management
|
- name: Management
|
||||||
# Management network is enabled by default for backwards-compatibility, but
|
# Management network is included for backwards-compatibility, but
|
||||||
# is not included in any roles by default. Add to role definitions to use.
|
# is not enabled or included in any role definitions by default.
|
||||||
enabled: true
|
# Include environments/network-management yaml to override, or
|
||||||
|
# enable this network and add it to the roles in roles_data.yaml.
|
||||||
|
enabled: false
|
||||||
vip: false # Management network does not use VIPs
|
vip: false # Management network does not use VIPs
|
||||||
name_lower: management
|
name_lower: management
|
||||||
|
vlan: 60
|
||||||
ip_subnet: '10.0.1.0/24'
|
ip_subnet: '10.0.1.0/24'
|
||||||
allocation_pools: [{'start': '10.0.1.4', 'end': '10.0.1.250'}]
|
allocation_pools: [{'start': '10.0.1.4', 'end': '10.0.1.250'}]
|
||||||
ipv6_subnet: 'fd00:fd00:fd00:6000::/64'
|
ipv6_subnet: 'fd00:fd00:fd00:6000::/64'
|
||||||
|
@ -96,6 +108,7 @@
|
||||||
enabled: true
|
enabled: true
|
||||||
vip: true
|
vip: true
|
||||||
name_lower: storage_nfs
|
name_lower: storage_nfs
|
||||||
|
vlan: 70
|
||||||
ip_subnet: '172.16.4.0/24'
|
ip_subnet: '172.16.4.0/24'
|
||||||
allocation_pools: [{'start': '172.16.4.4', 'end': '172.16.4.250'}]
|
allocation_pools: [{'start': '172.16.4.4', 'end': '172.16.4.250'}]
|
||||||
ipv6_subnet: 'fd00:fd00:fd00:7000::/64'
|
ipv6_subnet: 'fd00:fd00:fd00:7000::/64'
|
||||||
|
|
|
@ -8,6 +8,8 @@
|
||||||
- InternalApi
|
- InternalApi
|
||||||
- Storage
|
- Storage
|
||||||
- StorageMgmt
|
- StorageMgmt
|
||||||
|
uses_deprecated_params: True
|
||||||
|
deprecated_nic_config_name: 'cinder-storage.yaml'
|
||||||
ServicesDefault:
|
ServicesDefault:
|
||||||
- OS::TripleO::Services::Aide
|
- OS::TripleO::Services::Aide
|
||||||
- OS::TripleO::Services::AuditD
|
- OS::TripleO::Services::AuditD
|
||||||
|
|
|
@ -7,6 +7,8 @@
|
||||||
networks:
|
networks:
|
||||||
- Storage
|
- Storage
|
||||||
- StorageMgmt
|
- StorageMgmt
|
||||||
|
uses_deprecated_params: True
|
||||||
|
deprecated_nic_config_name: 'ceph-storage.yaml'
|
||||||
ServicesDefault:
|
ServicesDefault:
|
||||||
- OS::TripleO::Services::Aide
|
- OS::TripleO::Services::Aide
|
||||||
- OS::TripleO::Services::AuditD
|
- OS::TripleO::Services::AuditD
|
||||||
|
|
|
@ -19,6 +19,7 @@
|
||||||
deprecated_param_scheduler_hints: 'NovaComputeSchedulerHints'
|
deprecated_param_scheduler_hints: 'NovaComputeSchedulerHints'
|
||||||
deprecated_param_ips: 'NovaComputeIPs'
|
deprecated_param_ips: 'NovaComputeIPs'
|
||||||
deprecated_server_resource_name: 'NovaCompute'
|
deprecated_server_resource_name: 'NovaCompute'
|
||||||
|
deprecated_nic_config_name: 'compute.yaml'
|
||||||
disable_upgrade_deployment: True
|
disable_upgrade_deployment: True
|
||||||
ServicesDefault:
|
ServicesDefault:
|
||||||
- OS::TripleO::Services::Aide
|
- OS::TripleO::Services::Aide
|
||||||
|
|
|
@ -11,6 +11,8 @@
|
||||||
- Storage
|
- Storage
|
||||||
HostnameFormatDefault: '%stackname%-computeovsdpdk-%index%'
|
HostnameFormatDefault: '%stackname%-computeovsdpdk-%index%'
|
||||||
disable_upgrade_deployment: True
|
disable_upgrade_deployment: True
|
||||||
|
uses_deprecated_params: True
|
||||||
|
deprecated_nic_config_name: 'compute-dpdk.yaml'
|
||||||
ServicesDefault:
|
ServicesDefault:
|
||||||
- OS::TripleO::Services::Aide
|
- OS::TripleO::Services::Aide
|
||||||
- OS::TripleO::Services::AuditD
|
- OS::TripleO::Services::AuditD
|
||||||
|
|
|
@ -15,6 +15,9 @@
|
||||||
- Storage
|
- Storage
|
||||||
- StorageMgmt
|
- StorageMgmt
|
||||||
- Tenant
|
- Tenant
|
||||||
|
# For systems with both IPv4 and IPv6, you may specify a gateway network for
|
||||||
|
# each, such as ['ControlPlane', 'External']
|
||||||
|
default_route_networks: ['External']
|
||||||
HostnameFormatDefault: '%stackname%-controller-%index%'
|
HostnameFormatDefault: '%stackname%-controller-%index%'
|
||||||
# Deprecated & backward-compatible values (FIXME: Make parameters consistent)
|
# Deprecated & backward-compatible values (FIXME: Make parameters consistent)
|
||||||
# Set uses_deprecated_params to True if any deprecated params are used.
|
# Set uses_deprecated_params to True if any deprecated params are used.
|
||||||
|
@ -22,6 +25,7 @@
|
||||||
deprecated_param_extraconfig: 'controllerExtraConfig'
|
deprecated_param_extraconfig: 'controllerExtraConfig'
|
||||||
deprecated_param_flavor: 'OvercloudControlFlavor'
|
deprecated_param_flavor: 'OvercloudControlFlavor'
|
||||||
deprecated_param_image: 'controllerImage'
|
deprecated_param_image: 'controllerImage'
|
||||||
|
deprecated_nic_config_name: 'controller.yaml'
|
||||||
ServicesDefault:
|
ServicesDefault:
|
||||||
- OS::TripleO::Services::Aide
|
- OS::TripleO::Services::Aide
|
||||||
- OS::TripleO::Services::AodhApi
|
- OS::TripleO::Services::AodhApi
|
||||||
|
|
|
@ -15,6 +15,7 @@
|
||||||
- Storage
|
- Storage
|
||||||
- StorageMgmt
|
- StorageMgmt
|
||||||
- Tenant
|
- Tenant
|
||||||
|
default_route_networks: ['External']
|
||||||
HostnameFormatDefault: '%stackname%-controller-%index%'
|
HostnameFormatDefault: '%stackname%-controller-%index%'
|
||||||
ServicesDefault:
|
ServicesDefault:
|
||||||
- OS::TripleO::Services::AodhApi
|
- OS::TripleO::Services::AodhApi
|
||||||
|
|
|
@ -15,6 +15,7 @@
|
||||||
- Storage
|
- Storage
|
||||||
- StorageMgmt
|
- StorageMgmt
|
||||||
- Tenant
|
- Tenant
|
||||||
|
default_route_networks: ['External']
|
||||||
HostnameFormatDefault: '%stackname%-controller-no-ceph-%index%'
|
HostnameFormatDefault: '%stackname%-controller-no-ceph-%index%'
|
||||||
# Deprecated & backward-compatible values (FIXME: Make parameters consistent)
|
# Deprecated & backward-compatible values (FIXME: Make parameters consistent)
|
||||||
# Set uses_deprecated_params to True if any deprecated params are used.
|
# Set uses_deprecated_params to True if any deprecated params are used.
|
||||||
|
|
|
@ -14,6 +14,7 @@
|
||||||
- Storage
|
- Storage
|
||||||
- StorageMgmt
|
- StorageMgmt
|
||||||
- Tenant
|
- Tenant
|
||||||
|
default_route_networks: ['External']
|
||||||
HostnameFormatDefault: '%stackname%-controller-%index%'
|
HostnameFormatDefault: '%stackname%-controller-%index%'
|
||||||
ServicesDefault:
|
ServicesDefault:
|
||||||
- OS::TripleO::Services::AodhApi
|
- OS::TripleO::Services::AodhApi
|
||||||
|
|
|
@ -15,6 +15,7 @@
|
||||||
- Storage
|
- Storage
|
||||||
- StorageMgmt
|
- StorageMgmt
|
||||||
- Tenant
|
- Tenant
|
||||||
|
default_route_networks: ['External']
|
||||||
HostnameFormatDefault: '%stackname%-controller-%index%'
|
HostnameFormatDefault: '%stackname%-controller-%index%'
|
||||||
ServicesDefault:
|
ServicesDefault:
|
||||||
- OS::TripleO::Services::Aide
|
- OS::TripleO::Services::Aide
|
||||||
|
|
|
@ -15,6 +15,7 @@
|
||||||
deprecated_param_ips: 'SwiftStorageIPs'
|
deprecated_param_ips: 'SwiftStorageIPs'
|
||||||
deprecated_param_image: 'SwiftStorageImage'
|
deprecated_param_image: 'SwiftStorageImage'
|
||||||
deprecated_param_flavor: 'OvercloudSwiftStorageFlavor'
|
deprecated_param_flavor: 'OvercloudSwiftStorageFlavor'
|
||||||
|
deprecated_nic_config_name: 'swift-storage.yaml'
|
||||||
disable_upgrade_deployment: True
|
disable_upgrade_deployment: True
|
||||||
ServicesDefault:
|
ServicesDefault:
|
||||||
- OS::TripleO::Services::Aide
|
- OS::TripleO::Services::Aide
|
||||||
|
|
|
@ -18,6 +18,9 @@
|
||||||
- Storage
|
- Storage
|
||||||
- StorageMgmt
|
- StorageMgmt
|
||||||
- Tenant
|
- Tenant
|
||||||
|
# For systems with both IPv4 and IPv6, you may specify a gateway network for
|
||||||
|
# each, such as ['ControlPlane', 'External']
|
||||||
|
default_route_networks: ['External']
|
||||||
HostnameFormatDefault: '%stackname%-controller-%index%'
|
HostnameFormatDefault: '%stackname%-controller-%index%'
|
||||||
# Deprecated & backward-compatible values (FIXME: Make parameters consistent)
|
# Deprecated & backward-compatible values (FIXME: Make parameters consistent)
|
||||||
# Set uses_deprecated_params to True if any deprecated params are used.
|
# Set uses_deprecated_params to True if any deprecated params are used.
|
||||||
|
@ -25,6 +28,7 @@
|
||||||
deprecated_param_extraconfig: 'controllerExtraConfig'
|
deprecated_param_extraconfig: 'controllerExtraConfig'
|
||||||
deprecated_param_flavor: 'OvercloudControlFlavor'
|
deprecated_param_flavor: 'OvercloudControlFlavor'
|
||||||
deprecated_param_image: 'controllerImage'
|
deprecated_param_image: 'controllerImage'
|
||||||
|
deprecated_nic_config_name: 'controller.yaml'
|
||||||
ServicesDefault:
|
ServicesDefault:
|
||||||
- OS::TripleO::Services::Aide
|
- OS::TripleO::Services::Aide
|
||||||
- OS::TripleO::Services::AodhApi
|
- OS::TripleO::Services::AodhApi
|
||||||
|
@ -187,6 +191,7 @@
|
||||||
deprecated_param_scheduler_hints: 'NovaComputeSchedulerHints'
|
deprecated_param_scheduler_hints: 'NovaComputeSchedulerHints'
|
||||||
deprecated_param_ips: 'NovaComputeIPs'
|
deprecated_param_ips: 'NovaComputeIPs'
|
||||||
deprecated_server_resource_name: 'NovaCompute'
|
deprecated_server_resource_name: 'NovaCompute'
|
||||||
|
deprecated_nic_config_name: 'compute.yaml'
|
||||||
disable_upgrade_deployment: True
|
disable_upgrade_deployment: True
|
||||||
ServicesDefault:
|
ServicesDefault:
|
||||||
- OS::TripleO::Services::Aide
|
- OS::TripleO::Services::Aide
|
||||||
|
@ -242,6 +247,8 @@
|
||||||
- InternalApi
|
- InternalApi
|
||||||
- Storage
|
- Storage
|
||||||
- StorageMgmt
|
- StorageMgmt
|
||||||
|
uses_deprecated_params: True
|
||||||
|
deprecated_nic_config_name: 'cinder-storage.yaml'
|
||||||
ServicesDefault:
|
ServicesDefault:
|
||||||
- OS::TripleO::Services::Aide
|
- OS::TripleO::Services::Aide
|
||||||
- OS::TripleO::Services::AuditD
|
- OS::TripleO::Services::AuditD
|
||||||
|
@ -287,6 +294,7 @@
|
||||||
deprecated_param_ips: 'SwiftStorageIPs'
|
deprecated_param_ips: 'SwiftStorageIPs'
|
||||||
deprecated_param_image: 'SwiftStorageImage'
|
deprecated_param_image: 'SwiftStorageImage'
|
||||||
deprecated_param_flavor: 'OvercloudSwiftStorageFlavor'
|
deprecated_param_flavor: 'OvercloudSwiftStorageFlavor'
|
||||||
|
deprecated_nic_config_name: 'swift-storage.yaml'
|
||||||
disable_upgrade_deployment: True
|
disable_upgrade_deployment: True
|
||||||
ServicesDefault:
|
ServicesDefault:
|
||||||
- OS::TripleO::Services::Aide
|
- OS::TripleO::Services::Aide
|
||||||
|
@ -324,6 +332,8 @@
|
||||||
networks:
|
networks:
|
||||||
- Storage
|
- Storage
|
||||||
- StorageMgmt
|
- StorageMgmt
|
||||||
|
uses_deprecated_params: True
|
||||||
|
deprecated_nic_config_name: 'ceph-storage.yaml'
|
||||||
ServicesDefault:
|
ServicesDefault:
|
||||||
- OS::TripleO::Services::Aide
|
- OS::TripleO::Services::Aide
|
||||||
- OS::TripleO::Services::AuditD
|
- OS::TripleO::Services::AuditD
|
||||||
|
|
|
@ -183,6 +183,14 @@ def process_templates(template_path, role_data_path, output_dir,
|
||||||
os.path.basename(f).replace('.role.j2.yaml',
|
os.path.basename(f).replace('.role.j2.yaml',
|
||||||
'.yaml')])
|
'.yaml')])
|
||||||
out_f_path = os.path.join(out_dir, out_f)
|
out_f_path = os.path.join(out_dir, out_f)
|
||||||
|
if ('network/config' in file_path and
|
||||||
|
r_map[role].get('deprecated_nic_config_name')):
|
||||||
|
d_name = r_map[role].get(
|
||||||
|
'deprecated_nic_config_name')
|
||||||
|
out_f_path = os.path.join(out_dir, d_name)
|
||||||
|
elif ('network/config' in file_path):
|
||||||
|
d_name = "%s.yaml" % role.lower()
|
||||||
|
out_f_path = os.path.join(out_dir, d_name)
|
||||||
if not (out_f_path in excl_templates):
|
if not (out_f_path in excl_templates):
|
||||||
if '{{role.name}}' in template_data:
|
if '{{role.name}}' in template_data:
|
||||||
j2_data = {'role': r_map[role],
|
j2_data = {'role': r_map[role],
|
||||||
|
@ -201,7 +209,7 @@ def process_templates(template_path, role_data_path, output_dir,
|
||||||
False):
|
False):
|
||||||
j2_data['disable_constraints'] = True
|
j2_data['disable_constraints'] = True
|
||||||
_j2_render_to_file(
|
_j2_render_to_file(
|
||||||
template_data,j2_data,
|
template_data, j2_data,
|
||||||
out_f_path, overwrite)
|
out_f_path, overwrite)
|
||||||
|
|
||||||
else:
|
else:
|
||||||
|
|
Loading…
Reference in New Issue