
The route to metadata service is set up in host_routes of ctlplane subnets by extraconf post deploy:: extraconfig/post_deploy/undercloud_ctlplane_network.py Use get_attr on the server resource to resolve attribute value from the subnet(s) and pass it to the parameter 'EC2MetadatIp' used in the THT/network/config/* templates. Changes the default for 'EC2MetadatIp' to ''. Removes the comment that the value should be overriden in parameters_defaults. It also removes the parameter from network-environment templates. A conditinal is used in puppet/role.role.j2.yaml so that the parameter value is used whenever it is not '' (the default) to provide backwards compatibility in case the user set a different value for this parameter in network-environment.yaml. When deploying a routed control plane the network config templates would previously need to be updated to carry 'EC2MetadatIpLeafX' parameters for each leaf. By getting the value to pass from the server resource this change reduces the required nic-config template customisation. (Reduces the risk of user error.) Partial: blueprint tripleo-routed-networks-templates Change-Id: I9c019ec840a44ca8c5f98be55daea365bc6554ec
77 lines
2.5 KiB
YAML
77 lines
2.5 KiB
YAML
heat_template_version: rocky
|
|
description: >
|
|
Software Config to drive os-net-config for a simple bridge configured with a
|
|
static IP address for the ctlplane network.
|
|
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 %}
|
|
ControlPlaneSubnetCidr:
|
|
default: ''
|
|
description: >
|
|
The subnet CIDR of the control plane network. (The parameter is
|
|
automatically resolved from the ctlplane subnet's cidr attribute.)
|
|
type: string
|
|
ControlPlaneDefaultRoute:
|
|
default: ''
|
|
description: The default route of the control plane network. (The parameter
|
|
is automatically resolved from the ctlplane subnet's gateway_ip attribute.)
|
|
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:
|
|
default: ''
|
|
description: The IP address of the EC2 metadata server. (The parameter
|
|
is automatically resolved from the ctlplane subnet's host_routes attribute.)
|
|
type: string
|
|
resources:
|
|
OsNetConfigImpl:
|
|
type: OS::Heat::SoftwareConfig
|
|
properties:
|
|
group: script
|
|
config:
|
|
str_replace:
|
|
template:
|
|
get_file: network/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: interface_name
|
|
# force the MAC address of the bridge to this interface
|
|
primary: true
|
|
outputs:
|
|
OS::stack_id:
|
|
description: The OsNetConfigImpl resource.
|
|
value:
|
|
get_resource: OsNetConfigImpl
|
|
|