openstack-virtual-baremetal/templates/undercloud-networks.yaml
Harald Jensås caee7aeaf4 Add router on the public network to provide external access
TripleO CI currently configures an interface on the
undercloud connected to the public network and uses the
undercloud as the router for the public network. This
deviates from what a non CI deployment would.

This change adds an optional undercloud-network-public-router
template with a router on the public_net which can provide
NAT'ed external access for overcloud nodes that use External
network interface as the default route.

The undercloud-networks-routed template have the public-router
added as well.

This removes the need for undercloud to provide masqueraded
routing for the external network when these templates are
used.
2018-10-24 19:18:23 +02:00

75 lines
1.8 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_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_shared:
type: boolean
description: Whether this network should be shared across all tenants
default: false
resources:
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
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
outputs:
networks:
value:
provision: {get_resource: provision_network}
public: {get_resource: public_network}
# The provision and public network routers is here for compatibility only
provision_network_routers:
value: null
public_network_router:
value: null