base_image_id: {get_input: nova_image}
live_update_image_id: {get_input: live_update_compute_image}
completion-signal: {get_input: deploy_signal_id}
+ NovaComputePassthrough:
+ Type: OS::Heat::StructuredConfig
+ Properties:
+ config: {get_input: passthrough_config}
Description: The password for the keystone admin account, used for monitoring, querying neutron etc.
Type: String
NoEcho: true
+ ExtraConfig:
+ Description: |
+ Additional configuration to inject into the cluster. The JSON should have
+ the following structure:
+ {"FILEKEY":
+ {"config":
+ [{"section": "SECTIONNAME",
+ "values":
+ [{"option": "OPTIONNAME",
+ "value": "VALUENAME"
+ }
+ ]
+ }
+ ]
+ }
+ }
+ For instance:
+ {"nova":
+ {"config":
+ [{"section": "default",
+ "values":
+ [{"option": "compute_manager",
+ "value": "ironic.nova.compute.manager.ClusterComputeManager"
+ }
+ ]
+ },
+ {"section": "cells",
+ "values":
+ [{"option": "driver",
+ "value": "nova.cells.rpc_driver.CellsRPCDriver"
+ }
+ ]
+ }
+ ]
+ }
+ }
+ Type: Json
KeyName:
Description: Name of an existing EC2 KeyPair to enable SSH access to the instances
Type: String
live_update_tenant_name: {Ref: LiveUpdateTenantName}
nova_image: {Ref: NovaImage}
live_update_image_id: {Ref: LiveUpdateComputeImage}
+ NovaCompute0Passthrough:
+ Type: OS::Heat::StructuredDeployment
+ Properties:
+ config: {Ref: NovaComputePassthrough}
+ server: {Ref: NovaCompute0}
+ signal_transport: NO_SIGNAL
+ input_values:
+ passthrough_config: {Ref: ExtraConfig}
Default: tgtadm
Description: The iSCSI helper to use with cinder.
Type: String
+ ExtraConfig:
+ Default: {}
+ Description: |
+ Additional configuration to inject into the cluster. The JSON should have
+ the following structure:
+ {"FILEKEY":
+ {"config":
+ [{"section": "SECTIONNAME",
+ "values":
+ [{"option": "OPTIONNAME",
+ "value": "VALUENAME"
+ }
+ ]
+ }
+ ]
+ }
+ }
+ For instance:
+ {"nova":
+ {"config":
+ [{"section": "default",
+ "values":
+ [{"option": "compute_manager",
+ "value": "ironic.nova.compute.manager.ClusterComputeManager"
+ }
+ ]
+ },
+ {"section": "cells",
+ "values":
+ [{"option": "driver",
+ "value": "nova.cells.rpc_driver.CellsRPCDriver"
+ }
+ ]
+ }
+ ]
+ }
+ }
+ Type: Json
OvercloudControlFlavor:
Default: baremetal
Description: Flavor for control nodes to request when deploying.
- {Ref: CloudName}
# If CloudName is unset, make the hosts line still valid
- unused
+ NovaCompute0Passthrough:
+ Type: OS::Heat::StructuredDeployment
+ Properties:
+ config: {Ref: NovaComputePassthrough}
+ server: {Ref: NovaCompute0}
+ signal_transport: NO_SIGNAL
+ input_values:
+ passthrough_config: {Ref: ExtraConfig}
NovaCompute0:
Type: FileInclude
Path: nova-compute-instance.yaml
ntp:
servers:
- {server: {Ref: NtpServer}, fudge: "stratum 0"}
+ controllerPassthrough:
+ Type: OS::Heat::StructuredConfig
+ Properties:
+ config: {get_input: passthrough_config}
controller0:
Type: OS::Nova::Server
Properties:
input_values:
ssl_certificate: {Ref: SSLCertificate}
ssl_key: {Ref: SSLKey}
+ controller0Passthrough:
+ Type: OS::Heat::StructuredDeployment
+ Properties:
+ config: {Ref: controllerPassthrough}
+ server: {Ref: controller0}
+ signal_transport: NO_SIGNAL
+ input_values:
+ passthrough_config: {Ref: ExtraConfig}
Outputs:
KeystoneURL:
Description: URL for the Overcloud Keystone service