477 lines
14 KiB
YAML
477 lines
14 KiB
YAML
heat_template_version: 2014-10-16
|
|
|
|
# Template which creates all networks required for full network isloation.
|
|
|
|
parameters:
|
|
|
|
overcloud_internal_router:
|
|
type: string
|
|
description: Name of storage router
|
|
default: internal_router
|
|
|
|
overcloud_internal_net:
|
|
type: string
|
|
description: Name of internal API network
|
|
default: overcloud_internal
|
|
|
|
overcloud_internal_net_cidr:
|
|
type: string
|
|
description: |
|
|
CIDR for internal API network subnet. This is typically irrelevant and
|
|
does not need to be changed.
|
|
default: 172.17.0.0/24
|
|
|
|
overcloud_internal_net_router_address:
|
|
type: string
|
|
description: Router address for the overcloud_internal_net
|
|
default: 172.17.0.254
|
|
|
|
overcloud_internal_net_ip_version:
|
|
type: number
|
|
description: IP version for the overcloud_internal_net subnet
|
|
default: 4
|
|
|
|
overcloud_internal_net2:
|
|
type: string
|
|
description: Name of internal API network
|
|
default: overcloud_internal2
|
|
|
|
overcloud_internal_net2_cidr:
|
|
type: string
|
|
description: |
|
|
CIDR for internal API network subnet. This is typically irrelevant and
|
|
does not need to be changed.
|
|
default: 172.17.1.0/24
|
|
|
|
overcloud_internal_net2_router_address:
|
|
type: string
|
|
description: Router address for the overcloud_internal_net2 subnet
|
|
default: 172.17.1.254
|
|
|
|
overcloud_internal_net2_ip_version:
|
|
type: number
|
|
description: IP version for the overcloud_internal_net2 subnet
|
|
default: 4
|
|
|
|
overcloud_storage_router:
|
|
type: string
|
|
description: Name of storage router
|
|
default: storage_router
|
|
|
|
overcloud_storage_net:
|
|
type: string
|
|
description: Name of storage network
|
|
default: overcloud_storage
|
|
|
|
overcloud_storage_net_cidr:
|
|
type: string
|
|
description: |
|
|
CIDR for storage network subnet. This is typically irrelevant and
|
|
does not need to be changed.
|
|
default: 172.18.0.0/24
|
|
|
|
overcloud_storage_net_router_address:
|
|
type: string
|
|
description: Router address for the overcloud_storage_net subnet
|
|
default: 172.18.0.254
|
|
|
|
overcloud_storage_net_ip_version:
|
|
type: number
|
|
description: IP version for the overcloud_storage_net subnet
|
|
default: 4
|
|
|
|
overcloud_storage_net2:
|
|
type: string
|
|
description: Name of storage network
|
|
default: overcloud_storage2
|
|
|
|
overcloud_storage_net2_cidr:
|
|
type: string
|
|
description: |
|
|
CIDR for storage network subnet. This is typically irrelevant and
|
|
does not need to be changed.
|
|
default: 172.18.1.0/24
|
|
|
|
overcloud_storage_net2_router_address:
|
|
type: string
|
|
description: Router address for the overcloud_storage_net2 subnet
|
|
default: 172.18.1.254
|
|
|
|
overcloud_storage_net2_ip_version:
|
|
type: number
|
|
description: IP version for the overcloud_storage_net2 subnet
|
|
default: 4
|
|
|
|
overcloud_storage_mgmt_router:
|
|
type: string
|
|
description: Name of storage_mgmt router
|
|
default: storage_mgmt_router
|
|
|
|
overcloud_storage_mgmt_net:
|
|
type: string
|
|
description: Name of storage management network
|
|
default: overcloud_storage_mgmt
|
|
|
|
overcloud_storage_mgmt_net_cidr:
|
|
type: string
|
|
description: |
|
|
CIDR for storage management network subnet. This is typically irrelevant
|
|
and does not need to be changed.
|
|
default: 172.19.0.0/24
|
|
|
|
overcloud_storage_mgmt_net_router_address:
|
|
type: string
|
|
description: Router address for the overcloud_storage_mgmt_net subnet
|
|
default: 172.19.0.254
|
|
|
|
overcloud_storage_mgmt_net_ip_version:
|
|
type: number
|
|
description: IP version for the overcloud_storage_mgmt_net subnet
|
|
default: 4
|
|
|
|
overcloud_storage_mgmt_net2:
|
|
type: string
|
|
description: Name of storage management network
|
|
default: overcloud_storage_mgmt2
|
|
|
|
overcloud_storage_mgmt_net2_cidr:
|
|
type: string
|
|
description: |
|
|
CIDR for storage management network subnet. This is typically irrelevant
|
|
and does not need to be changed.
|
|
default: 172.19.1.0/24
|
|
|
|
overcloud_storage_mgmt_net2_router_address:
|
|
type: string
|
|
description: Router address for the overcloud_storage_mgmt_net2 subnet
|
|
default: 172.19.1.254
|
|
|
|
overcloud_storage_mgmt_net2_ip_version:
|
|
type: number
|
|
description: IP version for the overcloud_storage_mgmt_net2 subnet
|
|
default: 4
|
|
|
|
overcloud_tenant_router:
|
|
type: string
|
|
description: Name of tenant router
|
|
default: tenant_router
|
|
|
|
overcloud_tenant_net:
|
|
type: string
|
|
description: Name of tenant network
|
|
default: overcloud_tenant
|
|
|
|
overcloud_tenant_net_cidr:
|
|
type: string
|
|
description: |
|
|
CIDR for tenant network subnet. This is typically irrelevant and
|
|
does not need to be changed.
|
|
default: 172.16.0.0/24
|
|
|
|
overcloud_tenant_net_router_address:
|
|
type: string
|
|
description: Router address for the overcloud_tenant_net subnet
|
|
default: 172.16.0.254
|
|
|
|
overcloud_tenant_net_ip_version:
|
|
type: number
|
|
description: IP version for the overcloud_tenant_net subnet
|
|
default: 4
|
|
|
|
overcloud_tenant_net2:
|
|
type: string
|
|
description: Name of tenant network
|
|
default: overcloud_tenant2
|
|
|
|
overcloud_tenant_net2_cidr:
|
|
type: string
|
|
description: |
|
|
CIDR for tenant network subnet. This is typically irrelevant and
|
|
does not need to be changed.
|
|
default: 172.16.1.0/24
|
|
|
|
overcloud_tenant_net2_router_address:
|
|
type: string
|
|
description: Router address for the overcloud_tenant_net2 subnet
|
|
default: 172.16.1.254
|
|
|
|
overcloud_tenant_net2_ip_version:
|
|
type: number
|
|
description: IP version for the overcloud_tenant_net2 subnet
|
|
default: 4
|
|
|
|
resources:
|
|
internal_router:
|
|
type: OS::Neutron::Router
|
|
properties:
|
|
name: {get_param: overcloud_internal_router}
|
|
|
|
internal_network:
|
|
type: OS::Neutron::Net
|
|
properties:
|
|
name: {get_param: overcloud_internal_net}
|
|
|
|
internal_subnet:
|
|
type: OS::Neutron::Subnet
|
|
properties:
|
|
network: {get_resource: internal_network}
|
|
name: {get_param: overcloud_internal_net}
|
|
cidr: {get_param: overcloud_internal_net_cidr}
|
|
gateway_ip: null
|
|
enable_dhcp: false
|
|
ip_version: {get_param: overcloud_internal_net_ip_version}
|
|
|
|
internal_subnet_port:
|
|
type: OS::Neutron::Port
|
|
properties:
|
|
network: {get_resource: internal_network}
|
|
port_security_enabled: false
|
|
fixed_ips:
|
|
- ip_address: {get_param: overcloud_internal_net_router_address}
|
|
|
|
internal_subnet_interface:
|
|
type: OS::Neutron::RouterInterface
|
|
properties:
|
|
router: {get_resource: internal_router}
|
|
port: {get_resource: internal_subnet_port}
|
|
|
|
internal_network2:
|
|
type: OS::Neutron::Net
|
|
properties:
|
|
name: {get_param: overcloud_internal_net2}
|
|
|
|
internal_subnet2:
|
|
type: OS::Neutron::Subnet
|
|
properties:
|
|
network: {get_resource: internal_network2}
|
|
name: {get_param: overcloud_internal_net2}
|
|
cidr: {get_param: overcloud_internal_net2_cidr}
|
|
gateway_ip: null
|
|
enable_dhcp: false
|
|
ip_version: {get_param: overcloud_internal_net2_ip_version}
|
|
|
|
internal_subnet2_port:
|
|
type: OS::Neutron::Port
|
|
properties:
|
|
network: {get_resource: internal_network2}
|
|
port_security_enabled: false
|
|
fixed_ips:
|
|
- ip_address: {get_param: overcloud_internal_net2_router_address}
|
|
|
|
internal_subnet2_interface:
|
|
type: OS::Neutron::RouterInterface
|
|
properties:
|
|
router: {get_resource: internal_router}
|
|
port: {get_resource: internal_subnet2_port}
|
|
|
|
storage_router:
|
|
type: OS::Neutron::Router
|
|
properties:
|
|
name: {get_param: overcloud_storage_router}
|
|
|
|
storage_network:
|
|
type: OS::Neutron::Net
|
|
properties:
|
|
name: {get_param: overcloud_storage_net}
|
|
|
|
storage_subnet:
|
|
type: OS::Neutron::Subnet
|
|
properties:
|
|
network: {get_resource: storage_network}
|
|
name: {get_param: overcloud_storage_net}
|
|
cidr: {get_param: overcloud_storage_net_cidr}
|
|
gateway_ip: null
|
|
enable_dhcp: false
|
|
ip_version: {get_param: overcloud_storage_net_ip_version}
|
|
|
|
storage_subnet_port:
|
|
type: OS::Neutron::Port
|
|
properties:
|
|
network: {get_resource: storage_network}
|
|
port_security_enabled: false
|
|
fixed_ips:
|
|
- ip_address: {get_param: overcloud_storage_net_router_address}
|
|
|
|
storage_subnet_interface:
|
|
type: OS::Neutron::RouterInterface
|
|
properties:
|
|
router: {get_resource: storage_router}
|
|
port: {get_resource: storage_subnet_port}
|
|
|
|
storage_network2:
|
|
type: OS::Neutron::Net
|
|
properties:
|
|
name: {get_param: overcloud_storage_net2}
|
|
|
|
storage_subnet2:
|
|
type: OS::Neutron::Subnet
|
|
properties:
|
|
network: {get_resource: storage_network2}
|
|
name: {get_param: overcloud_storage_net2}
|
|
cidr: {get_param: overcloud_storage_net2_cidr}
|
|
gateway_ip: null
|
|
enable_dhcp: false
|
|
ip_version: {get_param: overcloud_storage_net2_ip_version}
|
|
|
|
storage_subnet2_port:
|
|
type: OS::Neutron::Port
|
|
properties:
|
|
network: {get_resource: storage_network2}
|
|
port_security_enabled: false
|
|
fixed_ips:
|
|
- ip_address: {get_param: overcloud_storage_net2_router_address}
|
|
|
|
storage_subnet2_interface:
|
|
type: OS::Neutron::RouterInterface
|
|
properties:
|
|
router: {get_resource: storage_router}
|
|
port: {get_resource: storage_subnet2_port}
|
|
|
|
storage_mgmt_router:
|
|
type: OS::Neutron::Router
|
|
properties:
|
|
name: {get_param: overcloud_storage_mgmt_router}
|
|
|
|
storage_mgmt_network:
|
|
type: OS::Neutron::Net
|
|
properties:
|
|
name: {get_param: overcloud_storage_mgmt_net}
|
|
|
|
storage_mgmt_subnet:
|
|
type: OS::Neutron::Subnet
|
|
properties:
|
|
network: {get_resource: storage_mgmt_network}
|
|
name: {get_param: overcloud_storage_mgmt_net}
|
|
cidr: {get_param: overcloud_storage_mgmt_net_cidr}
|
|
gateway_ip: null
|
|
enable_dhcp: false
|
|
ip_version: {get_param: overcloud_storage_mgmt_net_ip_version}
|
|
|
|
storage_mgmt_subnet_port:
|
|
type: OS::Neutron::Port
|
|
properties:
|
|
network: {get_resource: storage_mgmt_network}
|
|
port_security_enabled: false
|
|
fixed_ips:
|
|
- ip_address: {get_param: overcloud_storage_mgmt_net_router_address}
|
|
|
|
storage_mgmt_subnet_interface:
|
|
type: OS::Neutron::RouterInterface
|
|
properties:
|
|
router: {get_resource: storage_mgmt_router}
|
|
port: {get_resource: storage_mgmt_subnet_port}
|
|
|
|
storage_mgmt_network2:
|
|
type: OS::Neutron::Net
|
|
properties:
|
|
name: {get_param: overcloud_storage_mgmt_net2}
|
|
|
|
storage_mgmt_subnet2:
|
|
type: OS::Neutron::Subnet
|
|
properties:
|
|
network: {get_resource: storage_mgmt_network2}
|
|
name: {get_param: overcloud_storage_mgmt_net2}
|
|
cidr: {get_param: overcloud_storage_mgmt_net2_cidr}
|
|
gateway_ip: null
|
|
enable_dhcp: false
|
|
ip_version: {get_param: overcloud_storage_mgmt_net2_ip_version}
|
|
|
|
storage_mgmt_subnet2_port:
|
|
type: OS::Neutron::Port
|
|
properties:
|
|
network: {get_resource: storage_mgmt_network2}
|
|
port_security_enabled: false
|
|
fixed_ips:
|
|
- ip_address: {get_param: overcloud_storage_mgmt_net2_router_address}
|
|
|
|
storage_mgmt_subnet2_interface:
|
|
type: OS::Neutron::RouterInterface
|
|
properties:
|
|
router: {get_resource: storage_mgmt_router}
|
|
port: {get_resource: storage_mgmt_subnet2_port}
|
|
|
|
tenant_router:
|
|
type: OS::Neutron::Router
|
|
properties:
|
|
name: {get_param: overcloud_tenant_router}
|
|
|
|
tenant_network:
|
|
type: OS::Neutron::Net
|
|
properties:
|
|
name: {get_param: overcloud_tenant_net}
|
|
|
|
tenant_subnet:
|
|
type: OS::Neutron::Subnet
|
|
properties:
|
|
network: {get_resource: tenant_network}
|
|
name: {get_param: overcloud_tenant_net}
|
|
cidr: {get_param: overcloud_tenant_net_cidr}
|
|
gateway_ip: null
|
|
enable_dhcp: false
|
|
ip_version: {get_param: overcloud_tenant_net_ip_version}
|
|
|
|
tenant_subnet_port:
|
|
type: OS::Neutron::Port
|
|
properties:
|
|
network: {get_resource: tenant_network}
|
|
port_security_enabled: false
|
|
fixed_ips:
|
|
- ip_address: {get_param: overcloud_tenant_net_router_address}
|
|
|
|
tenant_subnet_interface:
|
|
type: OS::Neutron::RouterInterface
|
|
properties:
|
|
router: {get_resource: tenant_router}
|
|
port: {get_resource: tenant_subnet_port}
|
|
|
|
tenant_network2:
|
|
type: OS::Neutron::Net
|
|
properties:
|
|
name: {get_param: overcloud_tenant_net2}
|
|
|
|
tenant_subnet2:
|
|
type: OS::Neutron::Subnet
|
|
properties:
|
|
network: {get_resource: tenant_network2}
|
|
name: {get_param: overcloud_tenant_net2}
|
|
cidr: {get_param: overcloud_tenant_net2_cidr}
|
|
gateway_ip: null
|
|
enable_dhcp: false
|
|
ip_version: {get_param: overcloud_tenant_net2_ip_version}
|
|
|
|
tenant_subnet2_port:
|
|
type: OS::Neutron::Port
|
|
properties:
|
|
network: {get_resource: tenant_network2}
|
|
port_security_enabled: false
|
|
fixed_ips:
|
|
- ip_address: {get_param: overcloud_tenant_net2_router_address}
|
|
|
|
tenant_subnet2_interface:
|
|
type: OS::Neutron::RouterInterface
|
|
properties:
|
|
router: {get_resource: tenant_router}
|
|
port: {get_resource: tenant_subnet2_port}
|
|
|
|
outputs:
|
|
networks:
|
|
value:
|
|
internal_net: {get_resource: internal_network}
|
|
internal_net2: {get_resource: internal_network2}
|
|
storage_net: {get_resource: storage_network}
|
|
storage_net2: {get_resource: storage_network2}
|
|
storage_mgmt_net: {get_resource: storage_mgmt_network}
|
|
storage_mgmt_net2: {get_resource: storage_mgmt_network2}
|
|
tenant_net: {get_resource: tenant_network}
|
|
tenant_net2: {get_resource: tenant_network2}
|
|
routers_addresses:
|
|
value:
|
|
internal_router_address: {get_attr: [internal_subnet_port, fixed_ips, 0, ip_address]}
|
|
internal2_router: {get_attr: [internal_subnet2_port, fixed_ips, 0, ip_address]}
|
|
storage_router_address: {get_attr: [storage_subnet_port, fixed_ips, 0, ip_address]}
|
|
storage2_router_address: {get_attr: [storage_subnet2_port, fixed_ips, 0, ip_address]}
|
|
storage_mgmt_router_address: {get_attr: [storage_mgmt_subnet_port, fixed_ips, 0, ip_address]}
|
|
storage_mgmt2_router_address: {get_attr: [storage_mgmt_subnet2_port, fixed_ips, 0, ip_address]}
|
|
tenant_router_address: {get_attr: [tenant_subnet_port, fixed_ips, 0, ip_address]}
|
|
tenant2_router_address: {get_attr: [tenant_subnet2_port, fixed_ips, 0, ip_address]}
|