6f5481816f
When deploying TripleO overcloud nodes using the ctlplane network as the default gateway need to reach the internet (ntp servers etc.). Previously this was done using the undercloud as a masquerading router, doing so when nodes are not on the same L2 network as the undercloud is not as straight forward. (I.e we would have to set up routes on the provision router in ovb with a default route via the ip-address of the undercloud.) Hooking up the router for the provision networks to the external_net and let the ovb infra router do the NAT'ing makes more sense.
234 lines
6.4 KiB
YAML
234 lines
6.4 KiB
YAML
heat_template_version: 2015-04-30
|
|
|
|
parameters:
|
|
provision_net:
|
|
type: string
|
|
default: provision
|
|
description: Name of a network that will be used for provisioning traffic
|
|
|
|
provision_net_cidr:
|
|
type: string
|
|
description: CIDR for provision network subnet
|
|
default: 192.168.24.0/24
|
|
|
|
provision_net_router_address:
|
|
type: string
|
|
description: Router address for the provision network subnet
|
|
default: 192.168.24.254
|
|
|
|
provision_net_shared:
|
|
type: boolean
|
|
description: Whether this network should be shared across all tenants
|
|
default: false
|
|
|
|
provision_net2:
|
|
type: string
|
|
default: provision2
|
|
description: Name of a second network that will be used for provisioning traffic
|
|
|
|
provision_net2_cidr:
|
|
type: string
|
|
description: CIDR for second provision network subnet
|
|
default: 192.168.25.0/24
|
|
|
|
provision_net2_router_address:
|
|
type: string
|
|
description: Router address for the provision network subnet
|
|
default: 192.168.25.254
|
|
|
|
provision_net2_shared:
|
|
type: boolean
|
|
description: Whether this network should be shared across all tenants
|
|
default: false
|
|
|
|
provision_net3:
|
|
type: string
|
|
default: provision3
|
|
description: Name of a third network that will be used for provisioning traffic
|
|
|
|
provision_net3_cidr:
|
|
type: string
|
|
description: CIDR for third provision network subnet
|
|
default: 192.168.26.0/24
|
|
|
|
provision_net3_router_address:
|
|
type: string
|
|
description: Router address for the provision network subnet
|
|
default: 192.168.26.254
|
|
|
|
provision_net3_shared:
|
|
type: boolean
|
|
description: Whether this network should be shared across all tenants
|
|
default: false
|
|
|
|
public_net:
|
|
type: string
|
|
description: Name of the overcloud external network
|
|
default: public
|
|
|
|
public_net_cidr:
|
|
type: string
|
|
description: CIDR for external network subnet
|
|
default: 10.0.0.0/24
|
|
|
|
public_net_router_address:
|
|
type: string
|
|
description: Router address for the public network subnet
|
|
default: 10.0.0.254
|
|
|
|
public_net_shared:
|
|
type: boolean
|
|
description: Whether this network should be shared across all tenants
|
|
default: false
|
|
|
|
external_net:
|
|
type: string
|
|
description: An external network for the networks to route to
|
|
|
|
resources:
|
|
provision_router:
|
|
type: OS::Neutron::Router
|
|
properties:
|
|
name: provision-router
|
|
external_gateway_info:
|
|
network: {get_param: external_net}
|
|
|
|
provision_network:
|
|
type: OS::Neutron::Net
|
|
properties:
|
|
name: {get_param: provision_net}
|
|
shared: {get_param: provision_net_shared}
|
|
|
|
provision_subnet:
|
|
type: OS::Neutron::Subnet
|
|
properties:
|
|
network: {get_resource: provision_network}
|
|
name: {get_param: provision_net}
|
|
cidr: {get_param: provision_net_cidr}
|
|
gateway_ip: null
|
|
enable_dhcp: false
|
|
|
|
provision_router_port:
|
|
type: OS::Neutron::Port
|
|
properties:
|
|
network: {get_resource: provision_network}
|
|
port_security_enabled: false
|
|
fixed_ips:
|
|
- ip_address: {get_param: provision_net_router_address}
|
|
|
|
provision_router_interface:
|
|
type: OS::Neutron::RouterInterface
|
|
properties:
|
|
router: {get_resource: provision_router}
|
|
port: {get_resource: provision_router_port}
|
|
|
|
provision_network2:
|
|
type: OS::Neutron::Net
|
|
properties:
|
|
name: {get_param: provision_net2}
|
|
shared: {get_param: provision_net2_shared}
|
|
|
|
provision_subnet2:
|
|
type: OS::Neutron::Subnet
|
|
properties:
|
|
network: {get_resource: provision_network2}
|
|
name: {get_param: provision_net2}
|
|
cidr: {get_param: provision_net2_cidr}
|
|
gateway_ip: null
|
|
enable_dhcp: false
|
|
|
|
provision_router_port2:
|
|
type: OS::Neutron::Port
|
|
properties:
|
|
network: {get_resource: provision_network2}
|
|
port_security_enabled: false
|
|
fixed_ips:
|
|
- ip_address: {get_param: provision_net2_router_address}
|
|
|
|
provision_router_interface2:
|
|
type: OS::Neutron::RouterInterface
|
|
properties:
|
|
router: {get_resource: provision_router}
|
|
port: {get_resource: provision_router_port2}
|
|
|
|
provision_network3:
|
|
type: OS::Neutron::Net
|
|
properties:
|
|
name: {get_param: provision_net3}
|
|
shared: {get_param: provision_net3_shared}
|
|
|
|
provision_subnet3:
|
|
type: OS::Neutron::Subnet
|
|
properties:
|
|
network: {get_resource: provision_network3}
|
|
name: {get_param: provision_net3}
|
|
cidr: {get_param: provision_net3_cidr}
|
|
gateway_ip: null
|
|
enable_dhcp: false
|
|
|
|
provision_router_port3:
|
|
type: OS::Neutron::Port
|
|
properties:
|
|
network: {get_resource: provision_network3}
|
|
port_security_enabled: false
|
|
fixed_ips:
|
|
- ip_address: {get_param: provision_net3_router_address}
|
|
|
|
provision_router_interface3:
|
|
type: OS::Neutron::RouterInterface
|
|
properties:
|
|
router: {get_resource: provision_router}
|
|
port: {get_resource: provision_router_port3}
|
|
|
|
public_network:
|
|
type: OS::Neutron::Net
|
|
properties:
|
|
name: {get_param: public_net}
|
|
shared: {get_param: public_net_shared}
|
|
|
|
public_subnet:
|
|
type: OS::Neutron::Subnet
|
|
properties:
|
|
network: {get_resource: public_network}
|
|
name: {get_param: public_net}
|
|
cidr: {get_param: public_net_cidr}
|
|
gateway_ip: null
|
|
enable_dhcp: false
|
|
|
|
public_router:
|
|
type: OS::Neutron::Router
|
|
properties:
|
|
name: public-router
|
|
external_gateway_info:
|
|
network: {get_param: external_net}
|
|
|
|
public_router_port:
|
|
type: OS::Neutron::Port
|
|
properties:
|
|
network: {get_resource: public_network}
|
|
port_security_enabled: false
|
|
fixed_ips:
|
|
- ip_address: {get_param: public_net_router_address}
|
|
|
|
public_router_interface:
|
|
type: OS::Neutron::RouterInterface
|
|
properties:
|
|
router: {get_resource: public_router}
|
|
port: {get_resource: public_router_port}
|
|
|
|
outputs:
|
|
networks:
|
|
value:
|
|
provision: {get_resource: provision_network}
|
|
provision2: {get_resource: provision_network2}
|
|
provision3: {get_resource: provision_network3}
|
|
public: {get_resource: public_network}
|
|
provision_network_routers:
|
|
value:
|
|
provision_router: {get_attr: [provision_router_port, fixed_ips, 0, ip_address]}
|
|
provision2_router: {get_attr: [provision_router_port2, fixed_ips, 0, ip_address]}
|
|
provision3_router: {get_attr: [provision_router_port3, fixed_ips, 0, ip_address]}
|
|
public_network_router:
|
|
value:
|
|
public_router: {get_attr: [public_router_port, fixed_ips, 0, ip_address]}
|