c3d595c49a
This patch provides a set of templates that enables tripleo-heat-templates to be used with a set of already deployed, installed, and running servers. In this method, Nova and Ironic are not used to deploy any servers. This approach is attractive for POC deployments where dedicated provisioning networks are not available, or other server install methods are dictated for various reasons. There are also assumptions that currently have to be made about the software installed on the already deployed servers. Effectively, they must match the standard TripleO overcloud-full image. Co-Authored-By: Steve Hardy <shardy@redhat.com> Change-Id: I4ab1531f69c73457653f1cca3fe30cc32a04c129
100 lines
3.2 KiB
YAML
100 lines
3.2 KiB
YAML
heat_template_version: 2015-04-30
|
|
|
|
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
|
|
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
|
|
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
|
|
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::StructuredConfig
|
|
properties:
|
|
group: os-apply-config
|
|
config:
|
|
os_net_config:
|
|
network_config:
|
|
-
|
|
type: ovs_bridge
|
|
name: {get_input: bridge_name}
|
|
use_dhcp: true
|
|
members:
|
|
-
|
|
type: interface
|
|
name: {get_input: interface_name}
|
|
# force the MAC address of the bridge to this interface
|
|
primary: true
|
|
-
|
|
type: interface
|
|
# would like to do the following, but can't b/c of:
|
|
# https://bugs.launchpad.net/heat/+bug/1344284
|
|
# name:
|
|
# list_join:
|
|
# - '/'
|
|
# - - {get_input: bridge_name}
|
|
# - ':0'
|
|
# So, just hardcode to br-ex:0 for now, br-ex is hardcoded in
|
|
# controller.yaml anyway.
|
|
name: br-ex:0
|
|
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}
|
|
|
|
outputs:
|
|
OS::stack_id:
|
|
description: The OsNetConfigImpl resource.
|
|
value: {get_resource: OsNetConfigImpl}
|