+ All Categories
Home > Documents > Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format...

Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format...

Date post: 08-Jul-2020
Category:
Upload: others
View: 5 times
Download: 0 times
Share this document with a friend
212
docs.openstack.org
Transcript
Page 1: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

docs.openstack.org

Page 2: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

ii

Heat Orchestration Template referencecurrent (2015-01-13)Copyright © 2014, 2015 OpenStack Foundation Some rights reserved.

This guide documents the Heat Orchestration Template syntax.

Except where otherwise noted, this document is licensed underCreative Commons Attribution 3.0 License.http://creativecommons.org/licenses/by/3.0/legalcode

Page 3: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

iii

Table of ContentsHOT reference overview ................................................................................................. vi

Conventions ............................................................................................................ vi1. OpenStack Resource Types .......................................................................................... 1

OS::Ceilometer::Alarm ............................................................................................. 2OS::Ceilometer::CombinationAlarm .......................................................................... 6OS::Cinder::Volume ................................................................................................. 8OS::Cinder::VolumeAttachment ............................................................................. 11OS::Glance::Image ................................................................................................. 12OS::Heat::AccessPolicy ............................................................................................ 15OS::Heat::AutoScalingGroup .................................................................................. 16OS::Heat::CWLiteAlarm .......................................................................................... 18OS::Heat::CloudConfig ........................................................................................... 21OS::Heat::HARestarter ........................................................................................... 23OS::Heat::InstanceGroup ........................................................................................ 24OS::Heat::MultipartMime ....................................................................................... 25OS::Heat::RandomString ........................................................................................ 27OS::Heat::ResourceGroup ....................................................................................... 30OS::Heat::ScalingPolicy ........................................................................................... 34OS::Heat::SoftwareComponent .............................................................................. 35OS::Heat::SoftwareConfig ...................................................................................... 39OS::Heat::SoftwareDeployment ............................................................................. 43OS::Heat::SoftwareDeployments ............................................................................ 45OS::Heat::StructuredConfig .................................................................................... 48OS::Heat::StructuredDeployment ........................................................................... 51OS::Heat::StructuredDeployments .......................................................................... 53OS::Heat::SwiftSignal ............................................................................................. 55OS::Heat::SwiftSignalHandle .................................................................................. 57OS::Heat::UpdateWaitConditionHandle .................................................................. 58OS::Heat::WaitCondition ........................................................................................ 59OS::Heat::WaitConditionHandle ............................................................................. 60OS::Neutron::Firewall ............................................................................................. 61OS::Neutron::FirewallPolicy .................................................................................... 63OS::Neutron::FirewallRule ...................................................................................... 64OS::Neutron::FloatingIP ......................................................................................... 68OS::Neutron::FloatingIPAssociation ........................................................................ 69OS::Neutron::HealthMonitor .................................................................................. 71OS::Neutron::IKEPolicy ........................................................................................... 73OS::Neutron::IPsecPolicy ........................................................................................ 76OS::Neutron::IPsecSiteConnection .......................................................................... 79OS::Neutron::LoadBalancer .................................................................................... 83OS::Neutron::MeteringLabel .................................................................................. 84OS::Neutron::MeteringRule .................................................................................... 85OS::Neutron::Net ................................................................................................... 87OS::Neutron::NetworkGateway .............................................................................. 89OS::Neutron::Pool .................................................................................................. 92OS::Neutron::PoolMember ..................................................................................... 96OS::Neutron::Port .................................................................................................. 98OS::Neutron::ProviderNet .................................................................................... 102

Page 4: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

iv

OS::Neutron::Router ............................................................................................ 104OS::Neutron::RouterGateway ............................................................................... 107OS::Neutron::RouterInterface ............................................................................... 108OS::Neutron::SecurityGroup ................................................................................. 109OS::Neutron::Subnet ............................................................................................ 113OS::Neutron::VPNService ...................................................................................... 116OS::Nova::FloatingIP ............................................................................................ 118OS::Nova::FloatingIPAssociation ........................................................................... 119OS::Nova::KeyPair ................................................................................................ 120OS::Nova::Server .................................................................................................. 122OS::Nova::ServerGroup ........................................................................................ 130OS::Sahara::Cluster .............................................................................................. 131OS::Sahara::ClusterTemplate ................................................................................ 133OS::Sahara::NodeGroupTemplate ......................................................................... 136OS::Swift::Container ............................................................................................. 139OS::Trove::Instance .............................................................................................. 141

2. CloudFormation Compatible Resource Types ............................................................ 146AWS::AutoScaling::AutoScalingGroup .................................................................. 146AWS::AutoScaling::LaunchConfiguration .............................................................. 149AWS::AutoScaling::ScalingPolicy ........................................................................... 154AWS::CloudFormation::Stack ................................................................................ 155AWS::CloudFormation::WaitCondition ................................................................. 157AWS::CloudFormation::WaitConditionHandle ....................................................... 158AWS::CloudWatch::Alarm .................................................................................... 159AWS::EC2::EIP ...................................................................................................... 161AWS::EC2::EIPAssociation ..................................................................................... 162AWS::EC2::Instance .............................................................................................. 164AWS::EC2::InternetGateway ................................................................................. 171AWS::EC2::NetworkInterface ............................................................................... 172AWS::EC2::RouteTable ......................................................................................... 174AWS::EC2::SecurityGroup ..................................................................................... 175AWS::EC2::Subnet ................................................................................................ 178AWS::EC2::SubnetRouteTableAssociation ............................................................. 180AWS::EC2::VPC .................................................................................................... 181AWS::EC2::VPCGatewayAttachment ..................................................................... 182AWS::EC2::Volume ............................................................................................... 183AWS::EC2::VolumeAttachment ............................................................................. 185AWS::ElasticLoadBalancing::LoadBalancer ............................................................ 187AWS::IAM::AccessKey .......................................................................................... 190AWS::IAM::User ................................................................................................... 191AWS::RDS::DBInstance ......................................................................................... 193AWS::S3::Bucket .................................................................................................. 195

3. CloudFormation Compatible Functions ..................................................................... 198Ref ...................................................................................................................... 198Fn::Base64 ........................................................................................................... 198Fn::FindInMap ..................................................................................................... 199Fn::GetAtt ........................................................................................................... 199Fn::GetAZs ........................................................................................................... 199Fn::Join ................................................................................................................ 200Fn::Select ............................................................................................................. 200Fn::Split ............................................................................................................... 200

Page 5: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

v

Fn::Replace .......................................................................................................... 201Fn::ResourceFacade ............................................................................................. 201Fn::MemberListToMap ......................................................................................... 202

A. Community support ................................................................................................ 203Documentation ................................................................................................... 203ask.openstack.org ................................................................................................ 204OpenStack mailing lists ........................................................................................ 204The OpenStack wiki ............................................................................................. 205The Launchpad Bugs area ................................................................................... 205The OpenStack IRC channel ................................................................................. 206Documentation feedback .................................................................................... 206OpenStack distribution packages ......................................................................... 206

Page 6: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

vi

HOT reference overviewConventions .................................................................................................................... vi

Heat Orchestration Template (HOT) is a new template format meant to replace the HeatCloudFormation-compatible format (CFN) as the native format supported by the Orchestra-tion module over time.

This reference documents the syntax of:

• OpenStack native resources

• CloudFormation-compatible resources

• CloudFormation-compatible functions

ConventionsThe OpenStack documentation uses several typesetting conventions.

Notices

Notices take these forms:

Note

A handy tip or reminder.

Important

Something you must be aware of before proceeding.

Warning

Critical information about the risk of data loss or security issues.

Command prompts

$ prompt Any user, including the root user, can run commands that are prefixed withthe $ prompt.

# prompt The root user must run commands that are prefixed with the # prompt. Youcan also prefix these commands with the sudo command, if available, to runthem.

Page 7: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

1

1. OpenStack Resource TypesOS::Ceilometer::Alarm ..................................................................................................... 2OS::Ceilometer::CombinationAlarm .................................................................................. 6OS::Cinder::Volume ......................................................................................................... 8OS::Cinder::VolumeAttachment ..................................................................................... 11OS::Glance::Image ......................................................................................................... 12OS::Heat::AccessPolicy .................................................................................................... 15OS::Heat::AutoScalingGroup .......................................................................................... 16OS::Heat::CWLiteAlarm .................................................................................................. 18OS::Heat::CloudConfig ................................................................................................... 21OS::Heat::HARestarter ................................................................................................... 23OS::Heat::InstanceGroup ................................................................................................ 24OS::Heat::MultipartMime ............................................................................................... 25OS::Heat::RandomString ................................................................................................ 27OS::Heat::ResourceGroup ............................................................................................... 30OS::Heat::ScalingPolicy ................................................................................................... 34OS::Heat::SoftwareComponent ...................................................................................... 35OS::Heat::SoftwareConfig .............................................................................................. 39OS::Heat::SoftwareDeployment ..................................................................................... 43OS::Heat::SoftwareDeployments .................................................................................... 45OS::Heat::StructuredConfig ............................................................................................ 48OS::Heat::StructuredDeployment ................................................................................... 51OS::Heat::StructuredDeployments .................................................................................. 53OS::Heat::SwiftSignal ..................................................................................................... 55OS::Heat::SwiftSignalHandle .......................................................................................... 57OS::Heat::UpdateWaitConditionHandle .......................................................................... 58OS::Heat::WaitCondition ................................................................................................ 59OS::Heat::WaitConditionHandle ..................................................................................... 60OS::Neutron::Firewall ..................................................................................................... 61OS::Neutron::FirewallPolicy ............................................................................................ 63OS::Neutron::FirewallRule .............................................................................................. 64OS::Neutron::FloatingIP ................................................................................................. 68OS::Neutron::FloatingIPAssociation ................................................................................ 69OS::Neutron::HealthMonitor .......................................................................................... 71OS::Neutron::IKEPolicy ................................................................................................... 73OS::Neutron::IPsecPolicy ................................................................................................ 76OS::Neutron::IPsecSiteConnection .................................................................................. 79OS::Neutron::LoadBalancer ............................................................................................ 83OS::Neutron::MeteringLabel .......................................................................................... 84OS::Neutron::MeteringRule ............................................................................................ 85OS::Neutron::Net ........................................................................................................... 87OS::Neutron::NetworkGateway ...................................................................................... 89OS::Neutron::Pool .......................................................................................................... 92OS::Neutron::PoolMember ............................................................................................. 96OS::Neutron::Port .......................................................................................................... 98OS::Neutron::ProviderNet ............................................................................................ 102OS::Neutron::Router .................................................................................................... 104OS::Neutron::RouterGateway ....................................................................................... 107OS::Neutron::RouterInterface ....................................................................................... 108

Page 8: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

2

OS::Neutron::SecurityGroup ......................................................................................... 109OS::Neutron::Subnet .................................................................................................... 113OS::Neutron::VPNService .............................................................................................. 116OS::Nova::FloatingIP .................................................................................................... 118OS::Nova::FloatingIPAssociation ................................................................................... 119OS::Nova::KeyPair ........................................................................................................ 120OS::Nova::Server .......................................................................................................... 122OS::Nova::ServerGroup ................................................................................................ 130OS::Sahara::Cluster ...................................................................................................... 131OS::Sahara::ClusterTemplate ........................................................................................ 133OS::Sahara::NodeGroupTemplate ................................................................................. 136OS::Swift::Container ..................................................................................................... 139OS::Trove::Instance ...................................................................................................... 141

OS::Ceilometer::Alarm

Propertiesalarm_actions A list of URLs (webhooks) to invoke when state transi-

tions to alarm.

Can be updated without replacement.

Optional property.

comparison_operator Operator used to compare specified statistic withthreshold.

Can be updated without replacement.

Optional property.

Allowed values: ge, gt, eq, ne, lt, le

description Description for the alarm.

Can be updated without replacement.

Optional property.

enabled True if alarm evaluation/actioning is enabled.

Can be updated without replacement.

Optional property, defaults to "true".

evaluation_periods Number of periods to evaluate over.

Can be updated without replacement.

Optional property.

insufficient_data_actions A list of URLs (webhooks) to invoke when state transi-tions to insufficient-data.

Page 9: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

3

Can be updated without replacement.

Optional property.

matching_metadata Meter should match this resource metadata (key=value)additionally to the meter_name.

Can be updated without replacement.

Optional property, defaults to "{}".

meter_name Meter name watched by the alarm.

Updates cause replacement.

Required property.

ok_actions A list of URLs (webhooks) to invoke when state transi-tions to ok.

Can be updated without replacement.

Optional property.

period Period (seconds) to evaluate over.

Can be updated without replacement.

Optional property.

query A list of query factors, each comparing a Sampleattribute with a value. Implicitly combined withmatching_metadata, if any.

Can be updated without replacement.

Optional property.

List contents:

* Updates cause replacement.

Optional property.

Map properties:

field Name of attribute to compare. Namesof the form metadata.user_metadata.Xor metadata.metering.X are equiva-lent to what you can address throughmatching_metadata; the former for Novameters, the latter for all others. To see theattributes of your Samples, use `ceilometer--debug sample-list`.

Page 10: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

4

Updates cause replacement.

Optional property.

op Comparison operator

Updates cause replacement.

Optional property.

Allowed values: le, ge, eq, lt, gt, ne

value String value with which to compare

Updates cause replacement.

Optional property.

repeat_actions False to trigger actions when the threshold is reachedAND the alarm's state has changed. By default, actionsare called each time the threshold is reached.

Can be updated without replacement.

Optional property, defaults to "true".

statistic Meter statistic to evaluate.

Can be updated without replacement.

Optional property.

Allowed values: count, avg, sum, min, max

threshold Threshold to evaluate against.

Can be updated without replacement.

Required property.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Ceilometer::Alarm properties: alarm_actions: [Value, Value, ...] comparison_operator: String description: String enabled: Boolean evaluation_periods: Integer insufficient_data_actions: [Value, Value, ...]

Page 11: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

5

matching_metadata: {...} meter_name: String ok_actions: [Value, Value, ...] period: Integer query: [{"field": String, "value": String, "op": String}, {"field": String, "value": String, "op": String}, ...] repeat_actions: Boolean statistic: String threshold: Number

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Ceilometer::Alarm Properties: alarm_actions: [Value, Value, ...] comparison_operator: String description: String enabled: Boolean evaluation_periods: Integer insufficient_data_actions: [Value, Value, ...] matching_metadata: {...} meter_name: String ok_actions: [Value, Value, ...] period: Integer query: [{"field": String, "value": String, "op": String}, {"field": String, "value": String, "op": String}, ...] repeat_actions: Boolean statistic: String threshold: Number

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Ceilometer::Alarm", "Properties": { "alarm_actions": [Value, Value, ...], "comparison_operator": String, "description": String, "enabled": Boolean, "evaluation_periods": Integer, "insufficient_data_actions": [Value, Value, ...], "matching_metadata": {...}, "meter_name": String, "ok_actions": [Value, Value, ...], "period": Integer, "query": [{"field": String, "value": String, "op": String}, {"field": String, "value": String, "op": String}, ...], "repeat_actions": Boolean, "statistic": String, "threshold": Number

Page 12: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

6

} } }}

OS::Ceilometer::CombinationAlarmAvailable since 2014.1 (Icehouse).

Properties

alarm_actions A list of URLs (webhooks) to invoke when state transi-tions to alarm.

Can be updated without replacement.

Optional property.

alarm_ids List of alarm identifiers to combine.

Can be updated without replacement.

Required property.

The length must be at least 1.

description Description for the alarm.

Can be updated without replacement.

Optional property.

enabled True if alarm evaluation/actioning is enabled.

Can be updated without replacement.

Optional property, defaults to "true".

insufficient_data_actions A list of URLs (webhooks) to invoke when state transi-tions to insufficient-data.

Can be updated without replacement.

Optional property.

ok_actions A list of URLs (webhooks) to invoke when state transi-tions to ok.

Can be updated without replacement.

Optional property.

operator Operator used to combine the alarms.

Page 13: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

7

Can be updated without replacement.

Optional property.

Allowed values: and, or

repeat_actions False to trigger actions when the threshold is reachedAND the alarm's state has changed. By default, actionsare called each time the threshold is reached.

Can be updated without replacement.

Optional property, defaults to "true".

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Ceilometer::CombinationAlarm properties: alarm_actions: [Value, Value, ...] alarm_ids: [Value, Value, ...] description: String enabled: Boolean insufficient_data_actions: [Value, Value, ...] ok_actions: [Value, Value, ...] operator: String repeat_actions: Boolean

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Ceilometer::CombinationAlarm Properties: alarm_actions: [Value, Value, ...] alarm_ids: [Value, Value, ...] description: String enabled: Boolean insufficient_data_actions: [Value, Value, ...] ok_actions: [Value, Value, ...] operator: String repeat_actions: Boolean

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : {

Page 14: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

8

"TheResource": { "Type": "OS::Ceilometer::CombinationAlarm", "Properties": { "alarm_actions": [Value, Value, ...], "alarm_ids": [Value, Value, ...], "description": String, "enabled": Boolean, "insufficient_data_actions": [Value, Value, ...], "ok_actions": [Value, Value, ...], "operator": String, "repeat_actions": Boolean } } }}

OS::Cinder::Volume

Propertiesavailability_zone The availability zone in which the volume will be created.

Updates cause replacement.

Optional property.

backup_id If specified, the backup to create the volume from.

Updates cause replacement.

Optional property.

description A description of the volume.

Can be updated without replacement.

Optional property.

image If specified, the name or ID of the image to create the volumefrom.

Updates cause replacement.

Optional property.

Value must be of type glance.image

metadata Key/value pairs to associate with the volume.

Can be updated without replacement.

Optional property.

name A name used to distinguish the volume.

Can be updated without replacement.

Page 15: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

9

Optional property.

scheduler_hints Arbitrary key-value pairs specified by the client to help the Cinderscheduler creating a volume.

Updates cause replacement.

Optional property.

size The size of the volume in GB. On update only increase in size issupported.

Can be updated without replacement.

Optional property.

The value must be at least 1.

snapshot_id If specified, the snapshot to create the volume from.

Updates cause replacement.

Optional property.

source_volid If specified, the volume to use as source.

Updates cause replacement.

Optional property.

volume_type If specified, the type of volume to use, mapping to a specific back-end.

Updates cause replacement.

Optional property.

imageRef Note

DEPRECATED - Use property image.

The ID of the image to create the volume from.

Updates cause replacement.

Optional property.

Attributes

attachments The list of attachments of the volume.

availability_zone The availability zone in which the volume is located.

bootable Boolean indicating if the volume can be booted or not.

Page 16: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

10

created_at The timestamp indicating volume creation.

display_description Description of the volume.

display_name Name of the volume.

encrypted Boolean indicating if the volume is encrypted or not.

metadata Key/value pairs associated with the volume.

metadata_values Key/value pairs associated with the volume in raw dict form.

size The size of the volume in GB.

snapshot_id The snapshot the volume was created from, if any.

source_volid The volume used as source, if any.

status The current status of the volume.

volume_type The type of the volume mapping to a backend, if any.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Cinder::Volume properties: availability_zone: String backup_id: String description: String image: String metadata: {...} name: String scheduler_hints: {...} size: Integer snapshot_id: String source_volid: String volume_type: String

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Cinder::Volume Properties: availability_zone: String backup_id: String description: String image: String

Page 17: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

11

metadata: {...} name: String scheduler_hints: {...} size: Integer snapshot_id: String source_volid: String volume_type: String

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Cinder::Volume", "Properties": { "availability_zone": String, "backup_id": String, "description": String, "image": String, "metadata": {...}, "name": String, "scheduler_hints": {...}, "size": Integer, "snapshot_id": String, "source_volid": String, "volume_type": String } } }}

OS::Cinder::VolumeAttachment

Properties

instance_uuid The ID of the server to which the volume attaches.

Can be updated without replacement.

Required property.

mountpoint The location where the volume is exposed on the instance. This assign-ment may not be honored and it is advised that the path /dev/disk/by-id/virtio-<VolumeId> be used instead.

Can be updated without replacement.

Optional property.

volume_id The ID of the volume to be attached.

Can be updated without replacement.

Required property.

Page 18: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

12

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Cinder::VolumeAttachment properties: instance_uuid: String mountpoint: String volume_id: String

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Cinder::VolumeAttachment Properties: instance_uuid: String mountpoint: String volume_id: String

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Cinder::VolumeAttachment", "Properties": { "instance_uuid": String, "mountpoint": String, "volume_id": String } } }}

OS::Glance::ImageA resource managing for image in Glance.

Available since 2014.2 (Juno).

Propertiescontainer_format Container format of image.

Updates cause replacement.

Required property.

Page 19: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

13

Allowed values: ami, ari, aki, bare, ova, ovf

disk_format Disk format of image.

Updates cause replacement.

Required property.

Allowed values: ami, ari, aki, vhd, vmdk, raw, qcow2, vdi, iso

id The image ID. Glance will generate a UUID if not specified.

Updates cause replacement.

Optional property.

is_public Scope of image accessibility. Public or private. Default value is Falsemeans private.

Updates cause replacement.

Optional property, defaults to "False".

location URL where the data for this image already resides. For example,if the image data is stored in swift, you could specify "swift://example.com/container/obj".

Updates cause replacement.

Required property.

min_disk Amount of disk space (in GB) required to boot image. Default val-ue is 0 if not specified and means no limit on the disk size.

Updates cause replacement.

Optional property.

The value must be at least 0.

min_ram Amount of ram (in MB) required to boot image. Default value is 0if not specified and means no limit on the ram size.

Updates cause replacement.

Optional property.

The value must be at least 0.

name Name for the image. The name of an image is not unique to a Im-age Service node.

Updates cause replacement.

Optional property.

Page 20: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

14

protected Whether the image can be deleted. If the value is True, the imageis protected and cannot be deleted.

Updates cause replacement.

Optional property.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Glance::Image properties: container_format: String disk_format: String id: String is_public: Boolean location: String min_disk: Integer min_ram: Integer name: String protected: Boolean

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Glance::Image Properties: container_format: String disk_format: String id: String is_public: Boolean location: String min_disk: Integer min_ram: Integer name: String protected: Boolean

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Glance::Image", "Properties": { "container_format": String, "disk_format": String, "id": String, "is_public": Boolean,

Page 21: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

15

"location": String, "min_disk": Integer, "min_ram": Integer, "name": String, "protected": Boolean } } }}

OS::Heat::AccessPolicy

PropertiesAllowedResources Resources that users are allowed to access by the DescribeStackRe-

source API.

Updates cause replacement.

Required property.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Heat::AccessPolicy properties: AllowedResources: [Value, Value, ...]

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Heat::AccessPolicy Properties: AllowedResources: [Value, Value, ...]

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Heat::AccessPolicy", "Properties": { "AllowedResources": [Value, Value, ...] } } }}

Page 22: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

16

OS::Heat::AutoScalingGroupAn autoscaling group that can scale arbitrary resources.

Available since 2014.1 (Icehouse).

Properties

cooldown Cooldown period, in seconds.

Can be updated without replacement.

Optional property.

desired_capacity Desired initial number of resources.

Can be updated without replacement.

Optional property.

max_size Maximum number of resources in the group.

Can be updated without replacement.

Required property.

The value must be at least 0.

min_size Minimum number of resources in the group.

Can be updated without replacement.

Required property.

The value must be at least 0.

resource Resource definition for the resources in the group, in HOT format.The value of this property is the definition of a resource just as if ithad been declared in the template itself.

Can be updated without replacement.

Required property.

rolling_updates Policy for rolling updates for this scaling group.

Can be updated without replacement.

Optional property.

Map properties:

max_batch_size The maximum number of resources to re-place at once.

Page 23: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

17

Updates cause replacement.

Optional property, defaults to "1".

The value must be at least 0.

min_in_service The minimum number of resources in servicewhile rolling updates are being executed.

Updates cause replacement.

Optional property, defaults to "0".

The value must be at least 0.

pause_time The number of seconds to wait betweenbatches of updates.

Updates cause replacement.

Optional property, defaults to "0".

The value must be at least 0.

Attributes

current_size The current size of AutoscalingResourceGroup.

outputs A map of resource names to the specified attribute of each individual re-source.

outputs_list A list of the specified attribute of each individual resource.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Heat::AutoScalingGroup properties: cooldown: Integer desired_capacity: Integer max_size: Integer min_size: Integer resource: {...} rolling_updates: {"min_in_service": Number, "pause_time": Number, "max_batch_size": Number}

Page 24: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

18

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Heat::AutoScalingGroup Properties: cooldown: Integer desired_capacity: Integer max_size: Integer min_size: Integer resource: {...} rolling_updates: {"min_in_service": Number, "pause_time": Number, "max_batch_size": Number}

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Heat::AutoScalingGroup", "Properties": { "cooldown": Integer, "desired_capacity": Integer, "max_size": Integer, "min_size": Integer, "resource": {...}, "rolling_updates": {"min_in_service": Number, "pause_time": Number, "max_batch_size": Number} } } }}

OS::Heat::CWLiteAlarmNote

DEPRECATED - OS::Heat::CWLiteAlarm is deprecated, use OS::Ceilometer::Alarminstead.

Properties

AlarmActions A list of actions to execute when state transitions toalarm.

Can be updated without replacement.

Optional property.

AlarmDescription Description for the alarm.

Page 25: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

19

Can be updated without replacement.

Optional property.

ComparisonOperator Operator used to compare the specified Statistic withThreshold.

Can be updated without replacement.

Optional property.

Allowed values: GreaterThanOrEqualToThreshold,GreaterThanThreshold, LessThanThreshold, LessThanOrE-qualToThreshold

Dimensions A list of dimensions (arbitrary name/value pairs) associat-ed with the metric.

Updates cause replacement.

Optional property.

EvaluationPeriods Number of periods to evaluate over.

Can be updated without replacement.

Optional property.

InsufficientDataActions A list of actions to execute when state transitions to in-sufficient-data.

Can be updated without replacement.

Optional property.

MetricName Metric name watched by the alarm.

Updates cause replacement.

Optional property.

Namespace Namespace for the metric.

Updates cause replacement.

Optional property.

OKActions A list of actions to execute when state transitions to ok.

Can be updated without replacement.

Optional property.

Period Period (seconds) to evaluate over.

Page 26: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

20

Can be updated without replacement.

Optional property.

Statistic Metric statistic to evaluate.

Can be updated without replacement.

Optional property.

Allowed values: SampleCount, Average, Sum, Minimum,Maximum

Threshold Threshold to evaluate against.

Can be updated without replacement.

Optional property.

Units Unit for the metric.

Can be updated without replacement.

Optional property.

Allowed values: Seconds, Microseconds, Milliseconds,Bytes, Kilobytes, Megabytes, Gigabytes, Terabytes, Bits,Kilobits, Megabits, Gigabits, Terabits, Percent, Count,Bytes/Second, Kilobytes/Second, Megabytes/Second, Gi-gabytes/Second, Terabytes/Second, Bits/Second, Kilo-bits/Second, Megabits/Second, Gigabits/Second, Ter-abits/Second, Count/Second, None

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Heat::CWLiteAlarm properties: AlarmActions: [Value, Value, ...] AlarmDescription: String ComparisonOperator: String Dimensions: [Value, Value, ...] EvaluationPeriods: String InsufficientDataActions: [Value, Value, ...] MetricName: String Namespace: String OKActions: [Value, Value, ...] Period: String Statistic: String Threshold: String Units: String

Page 27: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

21

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Heat::CWLiteAlarm Properties: AlarmActions: [Value, Value, ...] AlarmDescription: String ComparisonOperator: String Dimensions: [Value, Value, ...] EvaluationPeriods: String InsufficientDataActions: [Value, Value, ...] MetricName: String Namespace: String OKActions: [Value, Value, ...] Period: String Statistic: String Threshold: String Units: String

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Heat::CWLiteAlarm", "Properties": { "AlarmActions": [Value, Value, ...], "AlarmDescription": String, "ComparisonOperator": String, "Dimensions": [Value, Value, ...], "EvaluationPeriods": String, "InsufficientDataActions": [Value, Value, ...], "MetricName": String, "Namespace": String, "OKActions": [Value, Value, ...], "Period": String, "Statistic": String, "Threshold": String, "Units": String } } }}

OS::Heat::CloudConfigA configuration resource for representing cloud-init cloud-config.

This resource allows cloud-config YAML to be defined and stored by the config API. Any in-trinsic functions called in the config will be resolved before storing the result.

Page 28: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

22

This resource will generally be referenced by OS::Nova::Server user_data, orOS::Heat::MultipartMime parts config. Since cloud-config is boot-only configuration, anychanges to the definition will result in the replacement of all servers which reference it.

Available since 2014.1 (Icehouse).

Properties

cloud_config Map representing the cloud-config data structure which will be format-ted as YAML.

Updates cause replacement.

Optional property.

Attributes

config The config value of the software config.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Heat::CloudConfig properties: cloud_config: {...}

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Heat::CloudConfig Properties: cloud_config: {...}

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Heat::CloudConfig", "Properties": { "cloud_config": {...} } } }}

Page 29: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

23

OS::Heat::HARestarter

Properties

InstanceId Instance ID to be restarted.

Updates cause replacement.

Required property.

Attributes

AlarmUrl A signed url to handle the alarm (Heat extension).

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Heat::HARestarter properties: InstanceId: String

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Heat::HARestarter Properties: InstanceId: String

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Heat::HARestarter", "Properties": { "InstanceId": String } } }}

Page 30: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

24

OS::Heat::InstanceGroup

Properties

AvailabilityZones Not Implemented.

Updates cause replacement.

Required property.

LaunchConfigurationName The reference to a LaunchConfiguration resource.

Can be updated without replacement.

Required property.

LoadBalancerNames List of LoadBalancer resources.

Updates cause replacement.

Optional property.

Size Desired number of instances.

Can be updated without replacement.

Required property.

Tags Tags to attach to this group.

Updates cause replacement.

Optional property.

List contents:

* Updates cause replacement.

Optional property.

Map properties:

Key Updates cause replacement.

Required property.

Value Updates cause replacement.

Required property.

Attributes

InstanceList A comma-delimited list of server ip addresses. (Heat extension).

Page 31: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

25

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Heat::InstanceGroup properties: AvailabilityZones: [Value, Value, ...] LaunchConfigurationName: String LoadBalancerNames: [Value, Value, ...] Size: Integer Tags: [{"Value": String, "Key": String}, {"Value": String, "Key": String}, ...]

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Heat::InstanceGroup Properties: AvailabilityZones: [Value, Value, ...] LaunchConfigurationName: String LoadBalancerNames: [Value, Value, ...] Size: Integer Tags: [{"Value": String, "Key": String}, {"Value": String, "Key": String}, ...]

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Heat::InstanceGroup", "Properties": { "AvailabilityZones": [Value, Value, ...], "LaunchConfigurationName": String, "LoadBalancerNames": [Value, Value, ...], "Size": Integer, "Tags": [{"Value": String, "Key": String}, {"Value": String, "Key": String}, ...] } } }}

OS::Heat::MultipartMimeA resource which assembles a collection of software configurations as a multi-part mimemessage.

Page 32: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

26

Parts in the message can be populated with inline configuration or references to other con-fig resources. If the referenced resource is itself a valid multi-part mime message, that willbe broken into parts and those parts appended to this message.

The resulting multi-part mime message will be stored by the configs API and can be refer-enced in properties such as OS::Nova::Server user_data.

This resource is generally used to build a list of cloud-init configuration elements includingscripts and cloud-config. Since cloud-init is boot-only configuration, any changes to the defi-nition will result in the replacement of all servers which reference it.

Available since 2014.1 (Icehouse).

Properties

parts Parts belonging to this message.

Updates cause replacement.

Optional property, defaults to "[]".

List contents:

* Updates cause replacement.

Optional property.

Map properties:

config Content of part to attach, either inline or by referencing the ID ofanother software config resource

Updates cause replacement.

Required property.

filename Optional filename to associate with part.

Updates cause replacement.

Optional property.

subtype Optional subtype to specify with the type.

Updates cause replacement.

Optional property.

type Whether the part content is text or multipart.

Updates cause replacement.

Optional property, defaults to "text".

Allowed values: text, multipart

Page 33: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

27

Attributes

config The config value of the software config.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Heat::MultipartMime properties: parts: [{"type": String, "subtype": String, "config": String, "filename": String}, {"type": String, "subtype": String, "config": String, "filename": String}, ...]

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Heat::MultipartMime Properties: parts: [{"type": String, "subtype": String, "config": String, "filename": String}, {"type": String, "subtype": String, "config": String, "filename": String}, ...]

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Heat::MultipartMime", "Properties": { "parts": [{"type": String, "subtype": String, "config": String, "filename": String}, {"type": String, "subtype": String, "config": String, "filename": String}, ...] } } }}

OS::Heat::RandomStringA resource which generates a random string.

This is useful for configuring passwords and secrets on services.

Available since 2014.1 (Icehouse).

Page 34: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

28

Propertiescharacter_classes A list of character class and their constraints to generate the

random string from.

Updates cause replacement.

Optional property.

List contents:

* Updates cause replacement.

Optional property.

Map properties:

class A character class and its corresponding min con-straint to generate the random string from.

Updates cause replacement.

Optional property, defaults to "lettersdigits".

Allowed values: lettersdigits, letters, lowercase,uppercase, digits, hexdigits, octdigits

min The minimum number of characters from thischaracter class that will be in the generated string.

Updates cause replacement.

Optional property, defaults to "1".

The value must be in the range 1 to 512.

character_sequences A list of character sequences and their constraints to generatethe random string from.

Updates cause replacement.

Optional property.

List contents:

* Updates cause replacement.

Optional property.

Map properties:

min The minimum number of characters from thissequence that will be in the generated string.

Updates cause replacement.

Page 35: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

29

Optional property, defaults to "1".

The value must be in the range 1 to 512.

sequence A character sequence and its correspondingmin constraint to generate the random stringfrom.

Updates cause replacement.

Required property.

length Length of the string to generate.

Updates cause replacement.

Optional property, defaults to "32".

The value must be in the range 1 to 512.

salt Value which can be set or changed on stack update to triggerthe resource for replacement with a new random string . Thesalt value itself is ignored by the random generator.

Updates cause replacement.

Optional property.

sequence Note

DEPRECATED - Use property character_classes.

Sequence of characters to build the random string from.

Updates cause replacement.

Optional property.

Allowed values: lettersdigits, letters, lowercase, uppercase, dig-its, hexdigits, octdigits

Attributes

value The random string generated by this resource. This value is also available by refer-encing the resource.

Page 36: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

30

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Heat::RandomString properties: character_classes: [{"class": String, "min": Integer}, {"class": String, "min": Integer}, ...] character_sequences: [{"min": Integer, "sequence": String}, {"min": Integer, "sequence": String}, ...] length: Integer salt: String

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Heat::RandomString Properties: character_classes: [{"class": String, "min": Integer}, {"class": String, "min": Integer}, ...] character_sequences: [{"min": Integer, "sequence": String}, {"min": Integer, "sequence": String}, ...] length: Integer salt: String

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Heat::RandomString", "Properties": { "character_classes": [{"class": String, "min": Integer}, {"class": String, "min": Integer}, ...], "character_sequences": [{"min": Integer, "sequence": String}, {"min": Integer, "sequence": String}, ...], "length": Integer, "salt": String } } }}

OS::Heat::ResourceGroupA resource that creates one or more identically configured nested resources.

Page 37: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

31

In addition to the refs attribute, this resource implements synthetic attributes that mirrorthose of the resources in the group. When getting an attribute from this resource, howev-er, a list of attribute values for each resource in the group is returned. To get attribute val-ues for a single resource in the group, synthetic attributes of the form resource.{resourceindex}.{attribute name} can be used. The resource ID of a particular resource in the groupcan be obtained via the synthetic attribute resource.{resource index}.

While each resource in the group will be identically configured, this resource does allow forsome index-based customization of the properties of the resources in the group. For exam-ple:

resources: my_indexed_group: type: OS::Heat::ResourceGroup properties: count: 3 resource_def: type: OS::Nova::Server properties: # create a unique name for each server # using its index in the group name: my_server_%index% image: CentOS 6.5 flavor: 4GB Performance

would result in a group of three servers having the same image and flavor, but names ofmy_server_0, my_server_1, and my_server_2. The variable used for substitution can be cus-tomized by using the index_var property.

Available since 2014.1 (Icehouse).

Properties

count The number of instances to create.

Can be updated without replacement.

Optional property, defaults to "1".

The value must be at least 0.

index_var A variable that this resource will use to replace with the current in-dex of a given resource in the group. Can be used, for example, tocustomize the name property of grouped servers in order to differ-entiate them when listed with nova client.

Updates cause replacement.

Optional property, defaults to "%index%".

The length must be at least 3.

removal_policies Policies for removal of resources on update

Can be updated without replacement.

Page 38: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

32

Optional property, defaults to "[]".

List contents:

* Policy to be processed when doing an update which requires re-moval of specific resources.

Updates cause replacement.

Optional property.

Map properties:

resource_list List of resources to be removed when do-ing an update which requires removalof specific resources. The resource maybe specified several ways: (1) The re-source name, as in the nested stack, (2)The resource reference returned fromget_resource in a template, as availablevia the 'refs' attribute Note this is destruc-tive on update when specified; even if thecount is not being reduced, and once a re-source name is removed, it's name is neverreused in subsequent updates

Updates cause replacement.

Optional property, defaults to "[]".

resource_def Resource definition for the resources in the group. The value ofthis property is the definition of a resource just as if it had been de-clared in the template itself.

Updates cause replacement.

Required property.

Map properties:

properties Property values for the resources in the group

Updates cause replacement.

Optional property.

type The type of the resources in the group

Updates cause replacement.

Required property.

Page 39: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

33

Attributes

attributes A map of resource names to the specified attribute of each individual re-source.

refs A list of resource IDs for the resources in the group

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Heat::ResourceGroup properties: count: Integer index_var: String removal_policies: [{"resource_list": [Value, Value, ...]}, {"resource_list": [Value, Value, ...]}, ...] resource_def: {"type": String, "properties": {...}}

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Heat::ResourceGroup Properties: count: Integer index_var: String removal_policies: [{"resource_list": [Value, Value, ...]}, {"resource_list": [Value, Value, ...]}, ...] resource_def: {"type": String, "properties": {...}}

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Heat::ResourceGroup", "Properties": { "count": Integer, "index_var": String, "removal_policies": [{"resource_list": [Value, Value, ...]}, {"resource_list": [Value, Value, ...]}, ...], "resource_def": {"type": String, "properties": {...}} } } }}

Page 40: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

34

OS::Heat::ScalingPolicyA resource to manage scaling of OS::Heat::AutoScalingGroup.

while it may incidentally support AWS::AutoScaling::AutoScalingGroup for now, pleasedon't use it for that purpose and use AWS::AutoScaling::ScalingPolicy instead.

Properties

adjustment_type Type of adjustment (absolute or percentage).

Can be updated without replacement.

Required property.

Allowed values: change_in_capacity, exact_capacity,percent_change_in_capacity

auto_scaling_group_id AutoScaling group ID to apply policy to.

Updates cause replacement.

Required property.

cooldown Cooldown period, in seconds.

Can be updated without replacement.

Optional property.

scaling_adjustment Size of adjustment.

Can be updated without replacement.

Required property.

Attributes

alarm_url A signed url to handle the alarm.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Heat::ScalingPolicy properties: adjustment_type: String auto_scaling_group_id: String cooldown: Number scaling_adjustment: Number

Page 41: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

35

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Heat::ScalingPolicy Properties: adjustment_type: String auto_scaling_group_id: String cooldown: Number scaling_adjustment: Number

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Heat::ScalingPolicy", "Properties": { "adjustment_type": String, "auto_scaling_group_id": String, "cooldown": Number, "scaling_adjustment": Number } } }}

OS::Heat::SoftwareComponentA resource for describing and storing a software component.

This resource is similar to OS::Heat::SoftwareConfig. In contrast to SoftwareConfig whichallows for storing only one configuration (e.g. one script), SoftwareComponent allows forstoring multiple configurations to address handling of all lifecycle hooks (CREATE, UPDATE,SUSPEND, RESUME, DELETE) for a software component in one place.

This resource is backed by the persistence layer and the API of the SoftwareConfig re-source, and only adds handling for the additional 'configs' property and attribute.

Available since 2014.2 (Juno).

Properties

configs The list of configurations for the different lifecycle actions of the representedsoftware component.

Updates cause replacement.

Required property.

Page 42: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

36

The length must be at least 1.

List contents:

* Updates cause replacement.

Optional property.

Map properties:

actions Lifecycle actions to which the configuration applies. The stringvalues provided for this property can include the standard re-source actions CREATE, DELETE, UPDATE, SUSPEND and RE-SUME supported by Heat.

Updates cause replacement.

Required property.

The length must be at least 1.

List contents:

* Updates cause replacement.

Optional property.

config Configuration script or manifest which specifies what actualconfiguration is performed.

Updates cause replacement.

Optional property.

tool The configuration tool used to actually apply the configurationon a server. This string property has to be understood by in-in-stance tools running inside deployed servers.

Updates cause replacement.

Required property.

inputs Schema representing the inputs that this software config is expecting.

Updates cause replacement.

Optional property.

List contents:

* Updates cause replacement.

Optional property.

Page 43: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

37

Map properties:

default Default value for the input if none is specified.

Updates cause replacement.

Optional property.

description Description of the input.

Updates cause replacement.

Optional property.

name Name of the input.

Updates cause replacement.

Required property.

type Type of the value of the input.

Updates cause replacement.

Optional property, defaults to "String".

Allowed values: String, Number, CommaDelimitedList,Json

options Map containing options specific to the configuration management tool used bythis resource.

Updates cause replacement.

Optional property.

outputs Schema representing the outputs that this software config will produce.

Updates cause replacement.

Optional property.

List contents:

* Updates cause replacement.

Optional property.

Map properties:

description Description of the output.

Updates cause replacement.

Optional property.

Page 44: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

38

error_output Denotes that the deployment is in an error state if thisoutput has a value.

Updates cause replacement.

Optional property, defaults to "False".

name Name of the output.

Updates cause replacement.

Required property.

type Type of the value of the output.

Updates cause replacement.

Optional property, defaults to "String".

Allowed values: String, Number, CommaDelimitedList,Json

Attributes

config The config value of the software config.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Heat::SoftwareComponent properties: configs: [{"tool": String, "config": String, "actions": [String, String, ...]}, {"tool": String, "config": String, "actions": [String, String, ...]}, ...] inputs: [{"default": String, "type": String, "name": String, "description": String}, {"default": String, "type": String, "name": String, "description": String}, ...] options: {...} outputs: [{"type": String, "name": String, "error_output": Boolean, "description": String}, {"type": String, "name": String, "error_output": Boolean, "description": String}, ...]

Page 45: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

39

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Heat::SoftwareComponent Properties: configs: [{"tool": String, "config": String, "actions": [String, String, ...]}, {"tool": String, "config": String, "actions": [String, String, ...]}, ...] inputs: [{"default": String, "type": String, "name": String, "description": String}, {"default": String, "type": String, "name": String, "description": String}, ...] options: {...} outputs: [{"type": String, "name": String, "error_output": Boolean, "description": String}, {"type": String, "name": String, "error_output": Boolean, "description": String}, ...]

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Heat::SoftwareComponent", "Properties": { "configs": [{"tool": String, "config": String, "actions": [String, String, ...]}, {"tool": String, "config": String, "actions": [String, String, ...]}, ...], "inputs": [{"default": String, "type": String, "name": String, "description": String}, {"default": String, "type": String, "name": String, "description": String}, ...], "options": {...}, "outputs": [{"type": String, "name": String, "error_output": Boolean, "description": String}, {"type": String, "name": String, "error_output": Boolean, "description": String}, ...] } } }}

OS::Heat::SoftwareConfigA resource for describing and storing software configuration.

The software_configs API which backs this resource creates immutable configs, so anychange to the template resource definition will result in a new config being created, andthe old one being deleted.

Configs can be defined in the same template which uses them, or they can be created inone stack, and passed to another stack via a parameter.

Page 46: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

40

A config resource can be referenced in other resource properties which are config-aware.This includes the properties OS::Nova::Server user_data, OS::Heat::SoftwareDeploymentconfig and OS::Heat::MultipartMime parts config.

Along with the config script itself, this resource can define schemas for inputs and outputswhich the config script is expected to consume and produce. Inputs and outputs are option-al and will map to concepts which are specific to the configuration tool being used.

Available since 2014.1 (Icehouse).

Properties

config Configuration script or manifest which specifies what actual configuration isperformed.

Updates cause replacement.

Optional property.

group Namespace to group this software config by when delivered to a server. Thismay imply what configuration tool is going to perform the configuration.

Updates cause replacement.

Optional property, defaults to "Heat::Ungrouped".

inputs Schema representing the inputs that this software config is expecting.

Updates cause replacement.

Optional property.

List contents:

* Updates cause replacement.

Optional property.

Map properties:

default Default value for the input if none is specified.

Updates cause replacement.

Optional property.

description Description of the input.

Updates cause replacement.

Optional property.

name Name of the input.

Updates cause replacement.

Page 47: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

41

Required property.

type Type of the value of the input.

Updates cause replacement.

Optional property, defaults to "String".

Allowed values: String, Number, CommaDelimitedList,Json

options Map containing options specific to the configuration management tool used bythis resource.

Updates cause replacement.

Optional property.

outputs Schema representing the outputs that this software config will produce.

Updates cause replacement.

Optional property.

List contents:

* Updates cause replacement.

Optional property.

Map properties:

description Description of the output.

Updates cause replacement.

Optional property.

error_output Denotes that the deployment is in an error state if thisoutput has a value.

Updates cause replacement.

Optional property, defaults to "False".

name Name of the output.

Updates cause replacement.

Required property.

type Type of the value of the output.

Updates cause replacement.

Page 48: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

42

Optional property, defaults to "String".

Allowed values: String, Number, CommaDelimitedList,Json

Attributes

config The config value of the software config.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Heat::SoftwareConfig properties: config: String group: String inputs: [{"default": String, "type": String, "name": String, "description": String}, {"default": String, "type": String, "name": String, "description": String}, ...] options: {...} outputs: [{"type": String, "name": String, "error_output": Boolean, "description": String}, {"type": String, "name": String, "error_output": Boolean, "description": String}, ...]

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Heat::SoftwareConfig Properties: config: String group: String inputs: [{"default": String, "type": String, "name": String, "description": String}, {"default": String, "type": String, "name": String, "description": String}, ...] options: {...} outputs: [{"type": String, "name": String, "error_output": Boolean, "description": String}, {"type": String, "name": String, "error_output": Boolean, "description": String}, ...]

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Heat::SoftwareConfig",

Page 49: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

43

"Properties": { "config": String, "group": String, "inputs": [{"default": String, "type": String, "name": String, "description": String}, {"default": String, "type": String, "name": String, "description": String}, ...], "options": {...}, "outputs": [{"type": String, "name": String, "error_output": Boolean, "description": String}, {"type": String, "name": String, "error_output": Boolean, "description": String}, ...] } } }}

OS::Heat::SoftwareDeploymentThis resource associates a server with some configuration which is to be deployed to thatserver.

A deployment allows input values to be specified which map to the inputs schema definedin the config resource. These input values are interpreted by the configuration tool in atool-specific manner.

Whenever this resource goes to an IN_PROGRESS state, it creates an ephemeral config thatincludes the inputs values plus a number of extra inputs which have names prefixed withdeploy_. The extra inputs relate to the current state of the stack, along with the informa-tion and credentials required to signal back the deployment results.

Unless signal_transport=NO_SIGNAL, this resource will remain in an IN_PROGRESS stateuntil the server signals it with the output values for that deployment. Those output valuesare then available as resource attributes, along with the default attributes deploy_stdout,deploy_stderr and deploy_status_code.

Specifying actions other than the default CREATE and UPDATE will result in the deploymentbeing triggered in those actions. For example this would allow cleanup configuration to beperformed during actions SUSPEND and DELETE. A config could be designed to only workwith some specific actions, or a config can read the value of the deploy_action input to al-low conditional logic to perform different configuration for different actions.

Available since 2014.1 (Icehouse).

Properties

actions Which stack actions will result in this deployment being triggered.

Can be updated without replacement.

Optional property, defaults to "['CREATE', 'UPDATE']".

Allowed values: CREATE, UPDATE, DELETE, SUSPEND, RESUME

config ID of software configuration resource to execute when applying tothe server.

Page 50: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

44

Can be updated without replacement.

Optional property.

input_values Input values to apply to the software configuration on this server.

Can be updated without replacement.

Optional property.

name Name of the derived config associated with this deployment. This isused to apply a sort order to the list of configurations currently de-ployed to a server.

Updates cause replacement.

Optional property.

server ID of Nova server to apply configuration to.

Updates cause replacement.

Optional property.

signal_transport How the server should signal to heat with the deployment out-put values. CFN_SIGNAL will allow an HTTP POST to a CFN key-pair signed URL. HEAT_SIGNAL will allow calls to the Heat API re-source-signal using the provided keystone credentials. NO_SIGNALwill result in the resource going to the COMPLETE state withoutwaiting for any signal.

Updates cause replacement.

Optional property, defaults to "CFN_SIGNAL".

Allowed values: CFN_SIGNAL, HEAT_SIGNAL, NO_SIGNAL

Attributes

deploy_status_code Returned status code from the configuration execution

deploy_stderr Captured stderr from the configuration execution.

deploy_stdout Captured stdout from the configuration execution.

Page 51: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

45

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Heat::SoftwareDeployment properties: actions: [Value, Value, ...] config: String input_values: {...} name: String server: String signal_transport: String

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Heat::SoftwareDeployment Properties: actions: [Value, Value, ...] config: String input_values: {...} name: String server: String signal_transport: String

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Heat::SoftwareDeployment", "Properties": { "actions": [Value, Value, ...], "config": String, "input_values": {...}, "name": String, "server": String, "signal_transport": String } } }}

OS::Heat::SoftwareDeploymentsAvailable since 2014.2 (Juno).

Page 52: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

46

Properties

actions Which stack actions will result in this deployment being triggered.

Can be updated without replacement.

Optional property, defaults to "['CREATE', 'UPDATE']".

Allowed values: CREATE, UPDATE, DELETE, SUSPEND, RESUME

config ID of software configuration resource to execute when applying tothe server.

Can be updated without replacement.

Optional property.

input_values Input values to apply to the software configuration on this server.

Can be updated without replacement.

Optional property.

name Name of the derived config associated with this deployment. This isused to apply a sort order to the list of configurations currently de-ployed to a server.

Updates cause replacement.

Optional property.

servers A map of Nova names and IDs to apply configuration to.

Updates cause replacement.

Optional property.

signal_transport How the server should signal to heat with the deployment out-put values. CFN_SIGNAL will allow an HTTP POST to a CFN key-pair signed URL. HEAT_SIGNAL will allow calls to the Heat API re-source-signal using the provided keystone credentials. NO_SIGNALwill result in the resource going to the COMPLETE state withoutwaiting for any signal.

Updates cause replacement.

Optional property, defaults to "CFN_SIGNAL".

Allowed values: CFN_SIGNAL, HEAT_SIGNAL, NO_SIGNAL

Attributes

deploy_status_codes A map of Nova names and returned status code from the con-figuration execution

Page 53: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

47

deploy_stderrs A map of Nova names and captured stderrs from the configu-ration execution to each server.

deploy_stdouts A map of Nova names and captured stdouts from the configu-ration execution to each server.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Heat::SoftwareDeployments properties: actions: [Value, Value, ...] config: String input_values: {...} name: String servers: {...} signal_transport: String

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Heat::SoftwareDeployments Properties: actions: [Value, Value, ...] config: String input_values: {...} name: String servers: {...} signal_transport: String

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Heat::SoftwareDeployments", "Properties": { "actions": [Value, Value, ...], "config": String, "input_values": {...}, "name": String, "servers": {...}, "signal_transport": String } } }}

Page 54: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

48

OS::Heat::StructuredConfigThis resource is like OS::Heat::SoftwareConfig except that the config property is represent-ed by a Map rather than a String.

This is useful for configuration tools which use YAML or JSON as their configuration syntax.The resulting configuration is transferred, stored and returned by the software_configs APIas parsed JSON.

Available since 2014.1 (Icehouse).

Properties

config Map representing the configuration data structure which will be serialized toJSON format.

Updates cause replacement.

Optional property.

group Namespace to group this software config by when delivered to a server. Thismay imply what configuration tool is going to perform the configuration.

Updates cause replacement.

Optional property, defaults to "Heat::Ungrouped".

inputs Schema representing the inputs that this software config is expecting.

Updates cause replacement.

Optional property.

List contents:

* Updates cause replacement.

Optional property.

Map properties:

default Default value for the input if none is specified.

Updates cause replacement.

Optional property.

description Description of the input.

Updates cause replacement.

Optional property.

name Name of the input.

Page 55: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

49

Updates cause replacement.

Required property.

type Type of the value of the input.

Updates cause replacement.

Optional property, defaults to "String".

Allowed values: String, Number, CommaDelimitedList,Json

options Map containing options specific to the configuration management tool used bythis resource.

Updates cause replacement.

Optional property.

outputs Schema representing the outputs that this software config will produce.

Updates cause replacement.

Optional property.

List contents:

* Updates cause replacement.

Optional property.

Map properties:

description Description of the output.

Updates cause replacement.

Optional property.

error_output Denotes that the deployment is in an error state if thisoutput has a value.

Updates cause replacement.

Optional property, defaults to "False".

name Name of the output.

Updates cause replacement.

Required property.

type Type of the value of the output.

Page 56: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

50

Updates cause replacement.

Optional property, defaults to "String".

Allowed values: String, Number, CommaDelimitedList,Json

Attributesconfig The config value of the software config.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Heat::StructuredConfig properties: config: {...} group: String inputs: [{"default": String, "type": String, "name": String, "description": String}, {"default": String, "type": String, "name": String, "description": String}, ...] options: {...} outputs: [{"type": String, "name": String, "error_output": Boolean, "description": String}, {"type": String, "name": String, "error_output": Boolean, "description": String}, ...]

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Heat::StructuredConfig Properties: config: {...} group: String inputs: [{"default": String, "type": String, "name": String, "description": String}, {"default": String, "type": String, "name": String, "description": String}, ...] options: {...} outputs: [{"type": String, "name": String, "error_output": Boolean, "description": String}, {"type": String, "name": String, "error_output": Boolean, "description": String}, ...]

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": {

Page 57: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

51

"Type": "OS::Heat::StructuredConfig", "Properties": { "config": {...}, "group": String, "inputs": [{"default": String, "type": String, "name": String, "description": String}, {"default": String, "type": String, "name": String, "description": String}, ...], "options": {...}, "outputs": [{"type": String, "name": String, "error_output": Boolean, "description": String}, {"type": String, "name": String, "error_output": Boolean, "description": String}, ...] } } }}

OS::Heat::StructuredDeploymentA deployment resource like OS::Heat::SoftwareDeployment, but which performs input val-ue substitution on the config defined by a OS::Heat::StructuredConfig resource.

Some configuration tools have no concept of inputs, so the input value substitution needsto occur in the deployment resource. An example of this is the JSON metadata consumedby the cfn-init tool.

Where the config contains {get_input: input_name} this will be substituted with the valueof input_name in this resource's input_values. If get_input needs to be passed through tothe substituted configuration then a different input_key property value can be specified.

Available since 2014.1 (Icehouse).

Properties

actions Which stack actions will result in this deployment being triggered.

Can be updated without replacement.

Optional property, defaults to "['CREATE', 'UPDATE']".

Allowed values: CREATE, UPDATE, DELETE, SUSPEND, RESUME

config ID of software configuration resource to execute when applying tothe server.

Can be updated without replacement.

Optional property.

input_key Name of key to use for substituting inputs during deployment

Updates cause replacement.

Optional property, defaults to "get_input".

input_values Input values to apply to the software configuration on this server.

Page 58: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

52

Can be updated without replacement.

Optional property.

name Name of the derived config associated with this deployment. This isused to apply a sort order to the list of configurations currently de-ployed to a server.

Updates cause replacement.

Optional property.

server ID of Nova server to apply configuration to.

Updates cause replacement.

Optional property.

signal_transport How the server should signal to heat with the deployment out-put values. CFN_SIGNAL will allow an HTTP POST to a CFN key-pair signed URL. HEAT_SIGNAL will allow calls to the Heat API re-source-signal using the provided keystone credentials. NO_SIGNALwill result in the resource going to the COMPLETE state withoutwaiting for any signal.

Updates cause replacement.

Optional property, defaults to "CFN_SIGNAL".

Allowed values: CFN_SIGNAL, HEAT_SIGNAL, NO_SIGNAL

Attributesdeploy_status_code Returned status code from the configuration execution

deploy_stderr Captured stderr from the configuration execution.

deploy_stdout Captured stdout from the configuration execution.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Heat::StructuredDeployment properties: actions: [Value, Value, ...] config: String input_key: String input_values: {...} name: String server: String signal_transport: String

Page 59: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

53

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Heat::StructuredDeployment Properties: actions: [Value, Value, ...] config: String input_key: String input_values: {...} name: String server: String signal_transport: String

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Heat::StructuredDeployment", "Properties": { "actions": [Value, Value, ...], "config": String, "input_key": String, "input_values": {...}, "name": String, "server": String, "signal_transport": String } } }}

OS::Heat::StructuredDeploymentsAvailable since 2014.2 (Juno).

Propertiesactions Which stack actions will result in this deployment being triggered.

Can be updated without replacement.

Optional property, defaults to "['CREATE', 'UPDATE']".

Allowed values: CREATE, UPDATE, DELETE, SUSPEND, RESUME

config ID of software configuration resource to execute when applying tothe server.

Can be updated without replacement.

Page 60: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

54

Optional property.

input_key Name of key to use for substituting inputs during deployment

Updates cause replacement.

Optional property, defaults to "get_input".

input_values Input values to apply to the software configuration on this server.

Can be updated without replacement.

Optional property.

name Name of the derived config associated with this deployment. This isused to apply a sort order to the list of configurations currently de-ployed to a server.

Updates cause replacement.

Optional property.

servers A map of Nova names and IDs to apply configuration to.

Updates cause replacement.

Optional property.

signal_transport How the server should signal to heat with the deployment out-put values. CFN_SIGNAL will allow an HTTP POST to a CFN key-pair signed URL. HEAT_SIGNAL will allow calls to the Heat API re-source-signal using the provided keystone credentials. NO_SIGNALwill result in the resource going to the COMPLETE state withoutwaiting for any signal.

Updates cause replacement.

Optional property, defaults to "CFN_SIGNAL".

Allowed values: CFN_SIGNAL, HEAT_SIGNAL, NO_SIGNAL

Attributes

deploy_status_codes A map of Nova names and returned status code from the con-figuration execution

deploy_stderrs A map of Nova names and captured stderrs from the configu-ration execution to each server.

deploy_stdouts A map of Nova names and captured stdouts from the configu-ration execution to each server.

Page 61: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

55

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Heat::StructuredDeployments properties: actions: [Value, Value, ...] config: String input_key: String input_values: {...} name: String servers: {...} signal_transport: String

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Heat::StructuredDeployments Properties: actions: [Value, Value, ...] config: String input_key: String input_values: {...} name: String servers: {...} signal_transport: String

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Heat::StructuredDeployments", "Properties": { "actions": [Value, Value, ...], "config": String, "input_key": String, "input_values": {...}, "name": String, "servers": {...}, "signal_transport": String } } }}

OS::Heat::SwiftSignalAvailable since 2014.2 (Juno).

Page 62: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

56

Propertiescount The number of success signals that must be received before the stack creation

process continues.

Updates cause replacement.

Optional property, defaults to "1".

The value must be in the range 1 to 1000.

handle URL of TempURL where resource will signal completion and optionally uploaddata.

Updates cause replacement.

Required property.

timeout The maximum number of seconds to wait for the resource to signal completion.Once the timeout is reached, creation of the signal resource will fail.

Updates cause replacement.

Required property.

The value must be in the range 1 to 43200.

Attributesdata JSON data that was uploaded via the SwiftSignalHandle.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Heat::SwiftSignal properties: count: Number handle: String timeout: Number

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Heat::SwiftSignal Properties: count: Number handle: String timeout: Number

Page 63: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

57

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Heat::SwiftSignal", "Properties": { "count": Number, "handle": String, "timeout": Number } } }}

OS::Heat::SwiftSignalHandleAvailable since 2014.2 (Juno).

Attributes

curl_cli Convenience attribute, provides curl CLI command prefix, which can be usedfor signalling handle completion or failure. You can signal success by adding--data-binary '{"status": "SUCCESS"}' , or signal failure by adding --data-binary'{"status": "FAILURE"}'

endpoint Endpoint/url which can be used for signalling handle

token Tokens are not needed for Swift TempURLs. This attribute is being kept forcompatibility with the OS::Heat::WaitConditionHandle resource

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Heat::SwiftSignalHandle

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Heat::SwiftSignalHandle

Page 64: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

58

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Heat::SwiftSignalHandle" } }}

OS::Heat::UpdateWaitConditionHandleThis works identically to a regular WaitConditionHandle, except that on update it clears allsignals received and changes the handle. Using this handle means that you must setup thesignal senders to send their signals again any time the update handle changes. This allowsus to roll out new configurations and be confident that they are rolled out once UPDATECOMPLETE is reached.

Available since 2014.1 (Icehouse).

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Heat::UpdateWaitConditionHandle

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Heat::UpdateWaitConditionHandle

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Heat::UpdateWaitConditionHandle" } }}

Page 65: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

59

OS::Heat::WaitCondition

Properties

count The number of success signals that must be received before the stack creationprocess continues.

Can be updated without replacement.

Optional property, defaults to "1".

The value must be at least 1.

handle A reference to the wait condition handle used to signal this wait condition.

Updates cause replacement.

Required property.

timeout The number of seconds to wait for the correct number of signals to arrive.

Updates cause replacement.

Required property.

The value must be in the range 1 to 43200.

Attributes

data JSON serialized dict containing data associated with wait condition signals sent tothe handle.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Heat::WaitCondition properties: count: Number handle: String timeout: Number

Page 66: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

60

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Heat::WaitCondition Properties: count: Number handle: String timeout: Number

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Heat::WaitCondition", "Properties": { "count": Number, "handle": String, "timeout": Number } } }}

OS::Heat::WaitConditionHandle

Attributes

curl_cli Convenience attribute, provides curl CLI command prefix, which can be usedfor signalling handle completion or failure. You can signal success by adding--data-binary '{"status": "SUCCESS"}' , or signal failure by adding --data-binary'{"status": "FAILURE"}'

endpoint Endpoint/url which can be used for signalling handle

token Token for stack-user which can be used for signalling handle

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Heat::WaitConditionHandle

Page 67: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

61

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Heat::WaitConditionHandle

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Heat::WaitConditionHandle" } }}

OS::Neutron::FirewallA resource for the Firewall resource in Neutron FWaaS.

Properties

admin_state_up Administrative state of the firewall. If false (down), firewall doesnot forward packets and will drop all traffic to/from VMs be-hind the firewall.

Can be updated without replacement.

Optional property, defaults to "True".

description Description for the firewall.

Can be updated without replacement.

Optional property.

firewall_policy_id The ID of the firewall policy that this firewall is associated with.

Can be updated without replacement.

Required property.

name Name for the firewall.

Can be updated without replacement.

Optional property.

Page 68: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

62

Attributesadmin_state_up The administrative state of the firewall.

description Description of the firewall.

firewall_policy_id Unique identifier of the firewall policy used to create the fire-wall.

name Name for the firewall.

show All attributes.

status The status of the firewall.

tenant_id Id of the tenant owning the firewall.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Neutron::Firewall properties: admin_state_up: Boolean description: String firewall_policy_id: String name: String

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Neutron::Firewall Properties: admin_state_up: Boolean description: String firewall_policy_id: String name: String

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Neutron::Firewall", "Properties": { "admin_state_up": Boolean, "description": String, "firewall_policy_id": String,

Page 69: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

63

"name": String } } }}

OS::Neutron::FirewallPolicyA resource for the FirewallPolicy resource in Neutron FWaaS.

Properties

audited Whether this policy should be audited. When set to True, each timethe firewall policy or the associated firewall rules are changed, thisattribute will be set to False and will have to be explicitly set to Truethrough an update operation.

Can be updated without replacement.

Optional property, defaults to "False".

description Description for the firewall policy.

Can be updated without replacement.

Optional property.

firewall_rules An ordered list of firewall rules to apply to the firewall.

Can be updated without replacement.

Required property.

name Name for the firewall policy.

Can be updated without replacement.

Optional property.

shared Whether this policy should be shared across all tenants.

Can be updated without replacement.

Optional property, defaults to "False".

Attributes

audited Audit status of this firewall policy.

description Description of the firewall policy.

firewall_rules List of firewall rules in this firewall policy.

name Name for the firewall policy.

Page 70: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

64

shared Shared status of this firewall policy.

tenant_id Id of the tenant owning the firewall policy.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Neutron::FirewallPolicy properties: audited: Boolean description: String firewall_rules: [Value, Value, ...] name: String shared: Boolean

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Neutron::FirewallPolicy Properties: audited: Boolean description: String firewall_rules: [Value, Value, ...] name: String shared: Boolean

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Neutron::FirewallPolicy", "Properties": { "audited": Boolean, "description": String, "firewall_rules": [Value, Value, ...], "name": String, "shared": Boolean } } }}

OS::Neutron::FirewallRuleA resource for the FirewallRule resource in Neutron FWaaS.

Page 71: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

65

Properties

action Action to be performed on the traffic matching the rule.

Can be updated without replacement.

Optional property, defaults to "deny".

Allowed values: allow, deny

description Description for the firewall rule.

Can be updated without replacement.

Optional property.

destination_ip_address Destination IP address or CIDR.

Can be updated without replacement.

Optional property.

destination_port Destination port number or a range.

Can be updated without replacement.

Optional property.

enabled Whether this rule should be enabled.

Can be updated without replacement.

Optional property, defaults to "True".

ip_version Internet protocol version.

Can be updated without replacement.

Optional property, defaults to "4".

Allowed values: 4, 6

name Name for the firewall rule.

Can be updated without replacement.

Optional property.

protocol Protocol for the firewall rule.

Can be updated without replacement.

Optional property.

Allowed values: tcp, udp, icmp, None

Page 72: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

66

shared Whether this rule should be shared across all tenants.

Can be updated without replacement.

Optional property, defaults to "False".

source_ip_address Source IP address or CIDR.

Can be updated without replacement.

Optional property.

source_port Source port number or a range.

Can be updated without replacement.

Optional property.

Attributes

action Allow or deny action for this firewall rule.

description Description of the firewall rule.

destination_ip_address Destination ip_address for this firewall rule.

destination_port Destination port range for this firewall rule.

enabled Indicates whether this firewall rule is enabled or not.

firewall_policy_id Unique identifier of the firewall policy to which this fire-wall rule belongs.

ip_version Ip_version for this firewall rule.

name Name for the firewall rule.

position Position of the rule within the firewall policy.

protocol Protocol value for this firewall rule.

shared Shared status of this firewall rule.

source_ip_address Source ip_address for this firewall rule.

source_port Source port range for this firewall rule.

tenant_id Id of the tenant owning the firewall.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource:

Page 73: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

67

type: OS::Neutron::FirewallRule properties: action: String description: String destination_ip_address: String destination_port: String enabled: Boolean ip_version: String name: String protocol: String shared: Boolean source_ip_address: String source_port: String

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Neutron::FirewallRule Properties: action: String description: String destination_ip_address: String destination_port: String enabled: Boolean ip_version: String name: String protocol: String shared: Boolean source_ip_address: String source_port: String

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Neutron::FirewallRule", "Properties": { "action": String, "description": String, "destination_ip_address": String, "destination_port": String, "enabled": Boolean, "ip_version": String, "name": String, "protocol": String, "shared": Boolean, "source_ip_address": String, "source_port": String } } }}

Page 74: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

68

OS::Neutron::FloatingIP

Properties

fixed_ip_address IP address to use if the port has multiple addresses.

Can be updated without replacement.

Optional property.

floating_network Network to allocate floating IP from.

Updates cause replacement.

Optional property.

port_id ID of an existing port with at least one IP address to associatewith this floating IP.

Can be updated without replacement.

Optional property.

value_specs Extra parameters to include in the "floatingip" object in the cre-ation request. Parameters are often specific to installed hard-ware or extensions.

Updates cause replacement.

Optional property, defaults to "{}".

floating_network_id Note

DEPRECATED - Use property floating_network.

Updates cause replacement.

Optional property.

Attributes

fixed_ip_address IP address of the associated port, if specified.

floating_ip_address The allocated address of this IP.

floating_network_id ID of the network in which this IP is allocated.

port_id ID of the port associated with this IP.

router_id ID of the router used as gateway, set when associated with aport.

show All attributes.

Page 75: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

69

tenant_id The tenant owning this floating IP.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Neutron::FloatingIP properties: fixed_ip_address: String floating_network: String port_id: String value_specs: {...}

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Neutron::FloatingIP Properties: fixed_ip_address: String floating_network: String port_id: String value_specs: {...}

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Neutron::FloatingIP", "Properties": { "fixed_ip_address": String, "floating_network": String, "port_id": String, "value_specs": {...} } } }}

OS::Neutron::FloatingIPAssociation

Properties

fixed_ip_address IP address to use if the port has multiple addresses.

Can be updated without replacement.

Page 76: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

70

Optional property.

floatingip_id ID of the floating IP to associate.

Can be updated without replacement.

Required property.

port_id ID of an existing port with at least one IP address to associate withthis floating IP.

Can be updated without replacement.

Required property.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Neutron::FloatingIPAssociation properties: fixed_ip_address: String floatingip_id: String port_id: String

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Neutron::FloatingIPAssociation Properties: fixed_ip_address: String floatingip_id: String port_id: String

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Neutron::FloatingIPAssociation", "Properties": { "fixed_ip_address": String, "floatingip_id": String, "port_id": String } } }}

Page 77: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

71

OS::Neutron::HealthMonitorA resource for managing health monitors for load balancers in Neutron.

Properties

admin_state_up The administrative state of the health monitor.

Can be updated without replacement.

Optional property, defaults to "True".

delay The minimum time in seconds between regular connections of themember.

Can be updated without replacement.

Required property.

expected_codes The list of HTTP status codes expected in response from the memberto declare it healthy.

Can be updated without replacement.

Optional property.

http_method The HTTP method used for requests by the monitor of type HTTP.

Can be updated without replacement.

Optional property.

max_retries Number of permissible connection failures before changing the mem-ber status to INACTIVE.

Can be updated without replacement.

Required property.

timeout Maximum number of seconds for a monitor to wait for a connectionto be established before it times out.

Can be updated without replacement.

Required property.

type One of predefined health monitor types.

Updates cause replacement.

Required property.

Allowed values: PING, TCP, HTTP, HTTPS

Page 78: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

72

url_path The HTTP path used in the HTTP request used by the monitor to test amember health.

Can be updated without replacement.

Optional property.

Attributes

admin_state_up The administrative state of this health monitor.

delay The minimum time in seconds between regular connections of themember.

expected_codes The list of HTTP status codes expected in response from the memberto declare it healthy.

http_method The HTTP method used for requests by the monitor of type HTTP.

max_retries Number of permissible connection failures before changing the mem-ber status to INACTIVE.

show All attributes.

tenant_id Tenant owning the health monitor.

timeout Maximum number of seconds for a monitor to wait for a connectionto be established before it times out.

type One of predefined health monitor types.

url_path The HTTP path used in the HTTP request used by the monitor to test amember health.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Neutron::HealthMonitor properties: admin_state_up: Boolean delay: Integer expected_codes: String http_method: String max_retries: Integer timeout: Integer type: String url_path: String

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'

Page 79: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

73

...Resources: ... TheResource: Type: OS::Neutron::HealthMonitor Properties: admin_state_up: Boolean delay: Integer expected_codes: String http_method: String max_retries: Integer timeout: Integer type: String url_path: String

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Neutron::HealthMonitor", "Properties": { "admin_state_up": Boolean, "delay": Integer, "expected_codes": String, "http_method": String, "max_retries": Integer, "timeout": Integer, "type": String, "url_path": String } } }}

OS::Neutron::IKEPolicyA resource for IKE policy in Neutron.

Properties

auth_algorithm Authentication hash algorithm for the ike policy.

Updates cause replacement.

Optional property, defaults to "sha1".

Allowed values: sha1

description Description for the ike policy.

Can be updated without replacement.

Optional property.

Page 80: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

74

encryption_algorithm Encryption algorithm for the ike policy.

Updates cause replacement.

Optional property, defaults to "aes-128".

Allowed values: 3des, aes-128, aes-192, aes-256

ike_version Version for the ike policy.

Updates cause replacement.

Optional property, defaults to "v1".

Allowed values: v1, v2

lifetime Safety assessment lifetime configuration for the ike poli-cy.

Updates cause replacement.

Optional property.

Map properties:

units Safety assessment lifetime units.

Updates cause replacement.

Optional property, defaults to "seconds".

Allowed values: seconds, kilobytes

value Safety assessment lifetime value in specifiedunits.

Updates cause replacement.

Optional property, defaults to "3600".

name Name for the ike policy.

Can be updated without replacement.

Optional property.

pfs Perfect forward secrecy in lowercase for the ike policy.

Updates cause replacement.

Optional property, defaults to "group5".

Allowed values: group2, group5, group14

phase1_negotiation_mode Negotiation mode for the ike policy.

Page 81: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

75

Updates cause replacement.

Optional property, defaults to "main".

Allowed values: main

Attributes

auth_algorithm The authentication hash algorithm used by the ike policy.

description The description of the ike policy.

encryption_algorithm The encryption algorithm used by the ike policy.

ike_version The version of the ike policy.

lifetime The safety assessment lifetime configuration for the ikepolicy.

name The name of the ike policy.

pfs The perfect forward secrecy of the ike policy.

phase1_negotiation_mode The negotiation mode of the ike policy.

tenant_id The unique identifier of the tenant owning the ike policy.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Neutron::IKEPolicy properties: auth_algorithm: String description: String encryption_algorithm: String ike_version: String lifetime: {"units": String, "value": Integer} name: String pfs: String phase1_negotiation_mode: String

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Neutron::IKEPolicy

Page 82: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

76

Properties: auth_algorithm: String description: String encryption_algorithm: String ike_version: String lifetime: {"units": String, "value": Integer} name: String pfs: String phase1_negotiation_mode: String

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Neutron::IKEPolicy", "Properties": { "auth_algorithm": String, "description": String, "encryption_algorithm": String, "ike_version": String, "lifetime": {"units": String, "value": Integer}, "name": String, "pfs": String, "phase1_negotiation_mode": String } } }}

OS::Neutron::IPsecPolicyA resource for IPsec policy in Neutron.

Properties

auth_algorithm Authentication hash algorithm for the ipsec policy.

Updates cause replacement.

Optional property, defaults to "sha1".

Allowed values: sha1

description Description for the ipsec policy.

Can be updated without replacement.

Optional property.

encapsulation_mode Encapsulation mode for the ipsec policy.

Updates cause replacement.

Page 83: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

77

Optional property, defaults to "tunnel".

Allowed values: tunnel, transport

encryption_algorithm Encryption algorithm for the ipsec policy.

Updates cause replacement.

Optional property, defaults to "aes-128".

Allowed values: 3des, aes-128, aes-192, aes-256

lifetime Safety assessment lifetime configuration for the ipsec policy.

Updates cause replacement.

Optional property.

Map properties:

units Safety assessment lifetime units.

Updates cause replacement.

Optional property, defaults to "seconds".

Allowed values: seconds, kilobytes

value Safety assessment lifetime value in specified units.

Updates cause replacement.

Optional property, defaults to "3600".

name Name for the ipsec policy.

Can be updated without replacement.

Optional property.

pfs Perfect forward secrecy for the ipsec policy.

Updates cause replacement.

Optional property, defaults to "group5".

Allowed values: group2, group5, group14

transform_protocol Transform protocol for the ipsec policy.

Updates cause replacement.

Optional property, defaults to "esp".

Allowed values: esp, ah, ah-esp

Page 84: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

78

Attributes

auth_algorithm The authentication hash algorithm of the ipsec policy.

description The description of the ipsec policy.

encapsulation_mode The encapsulation mode of the ipsec policy.

encryption_algorithm The encryption algorithm of the ipsec policy.

lifetime The safety assessment lifetime configuration of the ipsec poli-cy.

name The name of the ipsec policy.

pfs The perfect forward secrecy of the ipsec policy.

tenant_id The unique identifier of the tenant owning the ipsec policy.

transform_protocol The transform protocol of the ipsec policy.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Neutron::IPsecPolicy properties: auth_algorithm: String description: String encapsulation_mode: String encryption_algorithm: String lifetime: {"units": String, "value": Integer} name: String pfs: String transform_protocol: String

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Neutron::IPsecPolicy Properties: auth_algorithm: String description: String encapsulation_mode: String encryption_algorithm: String lifetime: {"units": String, "value": Integer} name: String pfs: String

Page 85: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

79

transform_protocol: String

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Neutron::IPsecPolicy", "Properties": { "auth_algorithm": String, "description": String, "encapsulation_mode": String, "encryption_algorithm": String, "lifetime": {"units": String, "value": Integer}, "name": String, "pfs": String, "transform_protocol": String } } }}

OS::Neutron::IPsecSiteConnectionA resource for IPsec site connection in Neutron.

Properties

admin_state_up Administrative state for the ipsec site connection.

Can be updated without replacement.

Optional property, defaults to "True".

description Description for the ipsec site connection.

Can be updated without replacement.

Optional property.

dpd Dead Peer Detection protocol configuration for the ipsec site connec-tion.

Updates cause replacement.

Optional property.

Map properties:

actions Controls DPD protocol mode.

Updates cause replacement.

Page 86: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

80

Optional property, defaults to "hold".

Allowed values: clear, disabled, hold, restart, restart-by-peer

interval Number of seconds for the DPD delay.

Updates cause replacement.

Optional property, defaults to "30".

timeout Number of seconds for the DPD timeout.

Updates cause replacement.

Optional property, defaults to "120".

ikepolicy_id Unique identifier for the ike policy associated with the ipsec site con-nection.

Updates cause replacement.

Required property.

initiator Initiator state in lowercase for the ipsec site connection.

Updates cause replacement.

Optional property, defaults to "bi-directional".

Allowed values: bi-directional, response-only

ipsecpolicy_id Unique identifier for the ipsec policy associated with the ipsec siteconnection.

Updates cause replacement.

Required property.

mtu Maximum transmission unit size (in bytes) for the ipsec site connec-tion.

Updates cause replacement.

Optional property, defaults to "1500".

name Name for the ipsec site connection.

Can be updated without replacement.

Optional property.

peer_address Remote branch router public IPv4 address or IPv6 address or FQDN.

Updates cause replacement.

Page 87: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

81

Required property.

peer_cidrs Remote subnet(s) in CIDR format.

Updates cause replacement.

Required property.

peer_id Remote branch router identity.

Updates cause replacement.

Required property.

psk Pre-shared key string for the ipsec site connection.

Updates cause replacement.

Required property.

vpnservice_id Unique identifier for the vpn service associated with the ipsec site con-nection.

Updates cause replacement.

Required property.

Attributes

admin_state_up The administrative state of the ipsec site connection.

auth_mode The authentication mode of the ipsec site connection.

description The description of the ipsec site connection.

dpd The dead peer detection protocol configuration of the ipsec site con-nection.

ikepolicy_id The unique identifier of ike policy associated with the ipsec site con-nection.

initiator The initiator of the ipsec site connection.

ipsecpolicy_id The unique identifier of ipsec policy associated with the ipsec site con-nection.

mtu The maximum transmission unit size (in bytes) of the ipsec site con-nection.

name The name of the ipsec site connection.

peer_address The remote branch router public IPv4 address or IPv6 address orFQDN.

Page 88: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

82

peer_cidrs The remote subnet(s) in CIDR format of the ipsec site connection.

peer_id The remote branch router identity of the ipsec site connection.

psk The pre-shared key string of the ipsec site connection.

route_mode The route mode of the ipsec site connection.

status The status of the ipsec site connection.

tenant_id The unique identifier of the tenant owning the ipsec site connection.

vpnservice_id The unique identifier of vpn service associated with the ipsec site con-nection.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Neutron::IPsecSiteConnection properties: admin_state_up: Boolean description: String dpd: {"interval": Integer, "timeout": Integer, "actions": String} ikepolicy_id: String initiator: String ipsecpolicy_id: String mtu: Integer name: String peer_address: String peer_cidrs: [Value, Value, ...] peer_id: String psk: String vpnservice_id: String

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Neutron::IPsecSiteConnection Properties: admin_state_up: Boolean description: String dpd: {"interval": Integer, "timeout": Integer, "actions": String} ikepolicy_id: String initiator: String ipsecpolicy_id: String mtu: Integer name: String peer_address: String

Page 89: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

83

peer_cidrs: [Value, Value, ...] peer_id: String psk: String vpnservice_id: String

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Neutron::IPsecSiteConnection", "Properties": { "admin_state_up": Boolean, "description": String, "dpd": {"interval": Integer, "timeout": Integer, "actions": String}, "ikepolicy_id": String, "initiator": String, "ipsecpolicy_id": String, "mtu": Integer, "name": String, "peer_address": String, "peer_cidrs": [Value, Value, ...], "peer_id": String, "psk": String, "vpnservice_id": String } } }}

OS::Neutron::LoadBalancerA resource to link a neutron pool with servers.

Properties

members The list of Nova server IDs load balanced.

Can be updated without replacement.

Optional property.

pool_id The ID of the load balancing pool.

Can be updated without replacement.

Required property.

protocol_port Port number on which the servers are running on the members.

Updates cause replacement.

Required property.

Page 90: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

84

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Neutron::LoadBalancer properties: members: [Value, Value, ...] pool_id: String protocol_port: Integer

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Neutron::LoadBalancer Properties: members: [Value, Value, ...] pool_id: String protocol_port: Integer

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Neutron::LoadBalancer", "Properties": { "members": [Value, Value, ...], "pool_id": String, "protocol_port": Integer } } }}

OS::Neutron::MeteringLabelA resource for creating neutron metering label.

Available since 2014.1 (Icehouse).

Propertiesdescription Description of the metering label.

Updates cause replacement.

Optional property.

Page 91: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

85

name Name of the metering label.

Updates cause replacement.

Optional property.

Attributesdescription Description of the metering label.

name Name of the metering label.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Neutron::MeteringLabel properties: description: String name: String

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Neutron::MeteringLabel Properties: description: String name: String

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Neutron::MeteringLabel", "Properties": { "description": String, "name": String } } }}

OS::Neutron::MeteringRuleA resource to create rule for some label.

Available since 2014.1 (Icehouse).

Page 92: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

86

Properties

direction The direction in which metering rule is applied, either ingress oregress.

Updates cause replacement.

Optional property, defaults to "ingress".

Allowed values: ingress, egress

excluded Specify whether the remote_ip_prefix will be excluded or notfrom traffic counters of the metering label. For example to notcount the traffic of a specific IP address of a range.

Updates cause replacement.

Optional property, defaults to "False".

metering_label_id The metering label ID to associate with this metering rule.

Updates cause replacement.

Required property.

remote_ip_prefix Indicates remote IP prefix to be associated with this meteringrule.

Updates cause replacement.

Required property.

Attributes

direction The direction in which metering rule is applied.

excluded Exclude state for cidr.

metering_label_id The metering label ID to associate with this metering rule.

remote_ip_prefix CIDR to be associated with this metering rule.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Neutron::MeteringRule properties: direction: String excluded: Boolean metering_label_id: String remote_ip_prefix: String

Page 93: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

87

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Neutron::MeteringRule Properties: direction: String excluded: Boolean metering_label_id: String remote_ip_prefix: String

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Neutron::MeteringRule", "Properties": { "direction": String, "excluded": Boolean, "metering_label_id": String, "remote_ip_prefix": String } } }}

OS::Neutron::Net

Properties

admin_state_up A boolean value specifying the administrative status of the network.

Can be updated without replacement.

Optional property, defaults to "True".

dhcp_agent_ids The IDs of the DHCP agent to schedule the network. Note that thedefault policy setting in Neutron restricts usage of this property to ad-ministrative users only.

Can be updated without replacement.

Optional property.

name A string specifying a symbolic name for the network, which is not re-quired to be unique.

Can be updated without replacement.

Page 94: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

88

Optional property.

shared Whether this network should be shared across all tenants. Note thatthe default policy setting restricts usage of this attribute to adminis-trative users only.

Can be updated without replacement.

Optional property, defaults to "False".

tenant_id The ID of the tenant which will own the network. Only administrativeusers can set the tenant identifier; this cannot be changed using au-thorization policies.

Updates cause replacement.

Optional property.

value_specs Extra parameters to include in the "network" object in the creation re-quest. Parameters are often specific to installed hardware or exten-sions.

Can be updated without replacement.

Optional property, defaults to "{}".

Attributesadmin_state_up The administrative status of the network.

name The name of the network.

show All attributes.

status The status of the network.

subnets Subnets of this network.

tenant_id The tenant owning this network.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Neutron::Net properties: admin_state_up: Boolean dhcp_agent_ids: [Value, Value, ...] name: String shared: Boolean tenant_id: String value_specs: {...}

Page 95: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

89

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Neutron::Net Properties: admin_state_up: Boolean dhcp_agent_ids: [Value, Value, ...] name: String shared: Boolean tenant_id: String value_specs: {...}

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Neutron::Net", "Properties": { "admin_state_up": Boolean, "dhcp_agent_ids": [Value, Value, ...], "name": String, "shared": Boolean, "tenant_id": String, "value_specs": {...} } } }}

OS::Neutron::NetworkGatewayA resource for the Network Gateway resource in Neutron Network Gateway.

Available since 2014.1 (Icehouse).

Properties

connections Connection info for this network gateway.

Can be updated without replacement.

Optional property, defaults to "{}".

List contents:

* Updates cause replacement.

Optional property.

Page 96: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

90

Map properties:

network The internal network to connect on the net-work gateway.

Updates cause replacement.

Optional property.

segmentation_id The id for L2 segment on the external sideof the network gateway. Must be specifiedwhen using vlan.

Updates cause replacement.

Optional property.

The value must be in the range 0 to 4094.

segmentation_type L2 segmentation strategy on the externalside of the network gateway.

Updates cause replacement.

Optional property, defaults to "flat".

Allowed values: flat, vlan

network_id Note

DEPRECATED - Use property net-work.

Updates cause replacement.

Optional property.

devices Device info for this network gateway.

Can be updated without replacement.

Required property.

The length must be at least 1.

List contents:

* Updates cause replacement.

Optional property.

Map properties:

id The device id for the network gateway.

Page 97: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

91

Updates cause replacement.

Required property.

interface_name The interface name for the network gateway.

Updates cause replacement.

Required property.

name The name of the network gateway.

Can be updated without replacement.

Optional property.

Attributes

default A boolean value of default flag.

show All attributes.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Neutron::NetworkGateway properties: connections: [{"network_id": String, "segmentation_id": Integer, "segmentation_type": String, "network": String}, {"network_id": String, "segmentation_id": Integer, "segmentation_type": String, "network": String}, ...] devices: [{"interface_name": String, "id": String}, {"interface_name": String, "id": String}, ...] name: String

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Neutron::NetworkGateway Properties: connections: [{"network_id": String, "segmentation_id": Integer, "segmentation_type": String, "network": String}, {"network_id": String, "segmentation_id": Integer, "segmentation_type": String, "network": String}, ...] devices: [{"interface_name": String, "id": String}, {"interface_name": String, "id": String}, ...] name: String

Page 98: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

92

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Neutron::NetworkGateway", "Properties": { "connections": [{"network_id": String, "segmentation_id": Integer, "segmentation_type": String, "network": String}, {"network_id": String, "segmentation_id": Integer, "segmentation_type": String, "network": String}, ...], "devices": [{"interface_name": String, "id": String}, {"interface_name": String, "id": String}, ...], "name": String } } }}

OS::Neutron::PoolA resource for managing load balancer pools in Neutron.

Properties

admin_state_up The administrative state of this pool.

Can be updated without replacement.

Optional property, defaults to "True".

description Description of the pool.

Can be updated without replacement.

Optional property.

lb_method The algorithm used to distribute load between the members of thepool.

Can be updated without replacement.

Required property.

Allowed values: ROUND_ROBIN, LEAST_CONNECTIONS, SOURCE_IP

monitors List of health monitors associated with the pool.

Can be updated without replacement.

Optional property, defaults to "[]".

name Name of the pool.

Page 99: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

93

Updates cause replacement.

Optional property.

protocol Protocol for balancing.

Updates cause replacement.

Required property.

Allowed values: TCP, HTTP, HTTPS

subnet The subnet for the port on which the members of the pool will beconnected.

Updates cause replacement.

Optional property.

vip IP address and port of the pool.

Updates cause replacement.

Required property.

Map properties:

address IP address of the vip.

Updates cause replacement.

Optional property.

admin_state_up The administrative state of this vip.

Updates cause replacement.

Optional property, defaults to "True".

connection_limit The maximum number of connectionsper second allowed for the vip.

Updates cause replacement.

Optional property.

description Description of the vip.

Updates cause replacement.

Optional property.

name Name of the vip.

Updates cause replacement.

Page 100: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

94

Optional property.

protocol_port TCP port on which to listen for client traf-fic that is associated with the vip address.

Updates cause replacement.

Required property.

session_persistence Configuration of session persistence.

Updates cause replacement.

Optional property.

Map properties:

cookie_name Name of the cook-ie, required if type isAPP_COOKIE.

Updates cause replace-ment.

Optional property.

type Method of implemen-tation of session persis-tence feature.

Updates cause replace-ment.

Required property.

Allowed val-ues: SOURCE_IP,HTTP_COOKIE,APP_COOKIE

subnet Subnet of the vip.

Updates cause replacement.

Optional property.

subnet_id Note

DEPRECATED - Use property subnet.

Updates cause replacement.

Optional property.

Page 101: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

95

Attributes

admin_state_up The administrative state of this pool.

description Description of the pool.

lb_method The algorithm used to distribute load between the members of thepool.

name Name of the pool.

protocol Protocol to balance.

subnet_id The subnet for the port on which the members of the pool will beconnected.

tenant_id Tenant owning the pool.

vip Vip associated with the pool.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Neutron::Pool properties: admin_state_up: Boolean description: String lb_method: String monitors: [Value, Value, ...] name: String protocol: String subnet: String vip: {"session_persistence": {"cookie_name": String, "type": String}, "subnet": String, "name": String, "address": String, "protocol_port": Integer, "connection_limit": Integer, "admin_state_up": Boolean, "description": String}

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Neutron::Pool Properties: admin_state_up: Boolean description: String lb_method: String monitors: [Value, Value, ...] name: String

Page 102: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

96

protocol: String subnet: String vip: {"session_persistence": {"cookie_name": String, "type": String}, "subnet": String, "name": String, "address": String, "protocol_port": Integer, "connection_limit": Integer, "admin_state_up": Boolean, "description": String}

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Neutron::Pool", "Properties": { "admin_state_up": Boolean, "description": String, "lb_method": String, "monitors": [Value, Value, ...], "name": String, "protocol": String, "subnet": String, "vip": {"session_persistence": {"cookie_name": String, "type": String}, "subnet": String, "name": String, "address": String, "protocol_port": Integer, "connection_limit": Integer, "admin_state_up": Boolean, "description": String} } } }}

OS::Neutron::PoolMemberA resource to handle load balancer members.

Available since 2014.1 (Icehouse).

Properties

address IP address of the pool member on the pool network.

Updates cause replacement.

Required property.

admin_state_up The administrative state of the pool member.

Updates cause replacement.

Optional property, defaults to "True".

pool_id The ID of the load balancing pool.

Can be updated without replacement.

Page 103: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

97

Required property.

protocol_port TCP port on which the pool member listens for requests or connec-tions.

Updates cause replacement.

Required property.

The value must be in the range 0 to 65535.

weight Weight of pool member in the pool (default to 1).

Can be updated without replacement.

Optional property.

The value must be in the range 0 to 256.

Attributes

address IP address of the pool member.

admin_state_up The administrative state of this pool member.

pool_id The ID of the load balancing pool.

protocol_port TCP port on which the pool member listens for requests or connec-tions.

show All attributes.

tenant_id Tenant owning the pool member.

weight Weight of the pool member in the pool.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Neutron::PoolMember properties: address: String admin_state_up: Boolean pool_id: String protocol_port: Integer weight: Integer

Page 104: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

98

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Neutron::PoolMember Properties: address: String admin_state_up: Boolean pool_id: String protocol_port: Integer weight: Integer

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Neutron::PoolMember", "Properties": { "address": String, "admin_state_up": Boolean, "pool_id": String, "protocol_port": Integer, "weight": Integer } } }}

OS::Neutron::Port

Propertiesadmin_state_up The administrative state of this port.

Can be updated without replacement.

Optional property, defaults to "True".

allowed_address_pairs Additional MAC/IP address pairs allowed to pass throughthe port.

Updates cause replacement.

Optional property.

List contents:

* Updates cause replacement.

Optional property.

Page 105: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

99

Map properties:

ip_address IP address to allow through this port.

Updates cause replacement.

Required property.

mac_address MAC address to allow through thisport.

Updates cause replacement.

Optional property.

device_id Device ID of this port.

Can be updated without replacement.

Optional property.

device_owner Name of the network owning the port. The value is typ-ically network:floatingip or network:router_interface ornetwork:dhcp

Can be updated without replacement.

Optional property.

fixed_ips Desired IPs for this port.

Can be updated without replacement.

Optional property, defaults to "[]".

List contents:

* Updates cause replacement.

Optional property.

Map properties:

ip_address IP address desired in the subnet for thisport.

Updates cause replacement.

Optional property.

subnet Subnet in which to allocate the IP ad-dress for this port.

Updates cause replacement.

Page 106: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

100

Optional property.

subnet_id Note

DEPRECATED - Use propertysubnet.

Updates cause replacement.

Optional property.

mac_address MAC address to give to this port.

Updates cause replacement.

Optional property.

name A symbolic name for this port.

Can be updated without replacement.

Optional property.

network Network this port belongs to.

Updates cause replacement.

Optional property.

replacement_policy Policy on how to respond to a stack-update for this re-source. REPLACE_ALWAYS will replace the port regardlessof any property changes. AUTO will update the existing portfor any changed update-allowed property.

Can be updated without replacement.

Optional property, defaults to "REPLACE_ALWAYS".

Allowed values: REPLACE_ALWAYS, AUTO

security_groups Security group IDs to associate with this port.

Can be updated without replacement.

Optional property.

value_specs Extra parameters to include in the "port" object in the cre-ation request.

Updates cause replacement.

Optional property, defaults to "{}".

Page 107: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

101

network_id Note

DEPRECATED - Use property network.

Updates cause replacement.

Optional property.

Attributesadmin_state_up The administrative state of this port.

allowed_address_pairs Additional MAC/IP address pairs allowed to pass through aport.

device_id Unique identifier for the device.

device_owner Name of the network owning the port.

fixed_ips Fixed IP addresses.

mac_address MAC address of the port.

name Friendly name of the port.

network_id Unique identifier for the network owning the port.

security_groups A list of security groups for the port.

show All attributes.

status The status of the port.

subnets A list of all subnet attributes for the port.

tenant_id Tenant owning the port.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Neutron::Port properties: admin_state_up: Boolean allowed_address_pairs: [{"ip_address": String, "mac_address": String}, {"ip_address": String, "mac_address": String}, ...] device_id: String device_owner: String fixed_ips: [{"subnet_id": String, "subnet": String, "ip_address": String}, {"subnet_id": String, "subnet": String, "ip_address": String}, ...] mac_address: String name: String network: String replacement_policy: String

Page 108: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

102

security_groups: [Value, Value, ...] value_specs: {...}

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Neutron::Port Properties: admin_state_up: Boolean allowed_address_pairs: [{"ip_address": String, "mac_address": String}, {"ip_address": String, "mac_address": String}, ...] device_id: String device_owner: String fixed_ips: [{"subnet_id": String, "subnet": String, "ip_address": String}, {"subnet_id": String, "subnet": String, "ip_address": String}, ...] mac_address: String name: String network: String replacement_policy: String security_groups: [Value, Value, ...] value_specs: {...}

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Neutron::Port", "Properties": { "admin_state_up": Boolean, "allowed_address_pairs": [{"ip_address": String, "mac_address": String}, {"ip_address": String, "mac_address": String}, ...], "device_id": String, "device_owner": String, "fixed_ips": [{"subnet_id": String, "subnet": String, "ip_address": String}, {"subnet_id": String, "subnet": String, "ip_address": String}, ...], "mac_address": String, "name": String, "network": String, "replacement_policy": String, "security_groups": [Value, Value, ...], "value_specs": {...} } } }}

OS::Neutron::ProviderNetAvailable since 2014.1 (Icehouse).

Page 109: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

103

Properties

admin_state_up A boolean value specifying the administrative status of the net-work.

Can be updated without replacement.

Optional property, defaults to "True".

name A string specifying a symbolic name for the network, which is notrequired to be unique.

Can be updated without replacement.

Optional property.

network_type A string specifying the provider network type for the network.

Can be updated without replacement.

Required property.

Allowed values: vlan, flat

physical_network A string specifying physical network mapping for the network.

Can be updated without replacement.

Required property.

segmentation_id A string specifying the segmentation id for the network.

Can be updated without replacement.

Optional property.

shared Whether this network should be shared across all tenants.

Can be updated without replacement.

Optional property, defaults to "True".

Attributes

show All attributes.

status The status of the network.

subnets Subnets of this network.

Page 110: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

104

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Neutron::ProviderNet properties: admin_state_up: Boolean name: String network_type: String physical_network: String segmentation_id: String shared: Boolean

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Neutron::ProviderNet Properties: admin_state_up: Boolean name: String network_type: String physical_network: String segmentation_id: String shared: Boolean

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Neutron::ProviderNet", "Properties": { "admin_state_up": Boolean, "name": String, "network_type": String, "physical_network": String, "segmentation_id": String, "shared": Boolean } } }}

OS::Neutron::Router

Propertiesadmin_state_up The administrative state of the router.

Page 111: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

105

Can be updated without replacement.

Optional property, defaults to "True".

external_gateway_info External network gateway configuration for a router.

Can be updated without replacement.

Optional property.

Map properties:

enable_snat Enables Source NAT on the router gate-way. NOTE: The default policy setting inNeutron restricts usage of this property toadministrative users only.

Can be updated without replacement.

Optional property.

network ID or name of the external network for thegateway.

Can be updated without replacement.

Required property.

l3_agent_id ID of the L3 agent. NOTE: The default policy setting in Neu-tron restricts usage of this property to administrative usersonly.

Can be updated without replacement.

Optional property.

name The name of the router.

Can be updated without replacement.

Optional property.

value_specs Extra parameters to include in the creation request.

Can be updated without replacement.

Optional property, defaults to "{}".

Attributes

admin_state_up Administrative state of the router.

external_gateway_info Gateway network for the router.

Page 112: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

106

name Friendly name of the router.

show All attributes.

status The status of the router.

tenant_id Tenant owning the router.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Neutron::Router properties: admin_state_up: Boolean external_gateway_info: {"enable_snat": Boolean, "network": String} l3_agent_id: String name: String value_specs: {...}

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Neutron::Router Properties: admin_state_up: Boolean external_gateway_info: {"enable_snat": Boolean, "network": String} l3_agent_id: String name: String value_specs: {...}

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Neutron::Router", "Properties": { "admin_state_up": Boolean, "external_gateway_info": {"enable_snat": Boolean, "network": String}, "l3_agent_id": String, "name": String, "value_specs": {...} } } }}

Page 113: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

107

OS::Neutron::RouterGateway

Note

DEPRECATED - RouterGateway resource is deprecated and should not be used.Instead use the `external_gateway_info` property in the router resource to setup the gateway.

Properties

network external network for the gateway.

Updates cause replacement.

Optional property.

router_id ID of the router.

Updates cause replacement.

Required property.

network_id Note

DEPRECATED - Use property network.

Updates cause replacement.

Optional property.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Neutron::RouterGateway properties: network: String router_id: String

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Neutron::RouterGateway Properties: network: String router_id: String

Page 114: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

108

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Neutron::RouterGateway", "Properties": { "network": String, "router_id": String } } }}

OS::Neutron::RouterInterface

Properties

port_id The port id, either subnet or port_id should be specified.

Updates cause replacement.

Optional property.

router_id The router id.

Updates cause replacement.

Required property.

subnet The subnet, either subnet or port_id should be specified.

Updates cause replacement.

Optional property.

subnet_id Note

DEPRECATED - Use property subnet.

Updates cause replacement.

Optional property.

Page 115: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

109

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Neutron::RouterInterface properties: port_id: String router_id: String subnet: String

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Neutron::RouterInterface Properties: port_id: String router_id: String subnet: String

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Neutron::RouterInterface", "Properties": { "port_id": String, "router_id": String, "subnet": String } } }}

OS::Neutron::SecurityGroupAvailable since 2014.1 (Icehouse).

Properties

description Description of the security group.

Can be updated without replacement.

Optional property.

Page 116: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

110

name A string specifying a symbolic name for the security group, which is not re-quired to be unique.

Can be updated without replacement.

Optional property.

rules List of security group rules.

Can be updated without replacement.

Optional property, defaults to "[]".

List contents:

* Updates cause replacement.

Optional property.

Map properties:

direction The direction in which the security group ruleis applied. For a compute instance, an ingresssecurity group rule matches traffic that is in-coming (ingress) for that instance. An egressrule is applied to traffic leaving the instance.

Updates cause replacement.

Optional property, defaults to "ingress".

Allowed values: ingress, egress

ethertype Ethertype of the traffic.

Updates cause replacement.

Optional property, defaults to "IPv4".

Allowed values: IPv4, IPv6

port_range_max The maximum port number in the rangethat is matched by the security group rule.The port_range_min attribute constrains theport_range_max attribute. If the protocol isICMP, this value must be an ICMP type.

Updates cause replacement.

Optional property.

port_range_min The minimum port number in the rangethat is matched by the security group rule. Ifthe protocol is TCP or UDP, this value mustbe less than or equal to the value of the

Page 117: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

111

port_range_max attribute. If the protocol isICMP, this value must be an ICMP type.

Updates cause replacement.

Optional property.

protocol The protocol that is matched by the securitygroup rule. Valid values include tcp, udp, andicmp.

Updates cause replacement.

Optional property.

remote_group_id The remote group ID to be associated withthis security group rule. If no value is specifiedthen this rule will use this security group forthe remote_group_id.

Updates cause replacement.

Optional property.

remote_ip_prefix The remote IP prefix (CIDR) to be associatedwith this security group rule.

Updates cause replacement.

Optional property.

remote_mode Whether to specify a remote group or a re-mote IP prefix.

Updates cause replacement.

Optional property, defaults to"remote_ip_prefix".

Allowed values: remote_ip_prefix,remote_group_id

Page 118: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

112

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Neutron::SecurityGroup properties: description: String name: String rules: [{"remote_group_id": String, "direction": String, "remote_ip_prefix": String, "port_range_min": Integer, "remote_mode": String, "ethertype": String, "port_range_max": Integer, "protocol": String}, {"remote_group_id": String, "direction": String, "remote_ip_prefix": String, "port_range_min": Integer, "remote_mode": String, "ethertype": String, "port_range_max": Integer, "protocol": String}, ...]

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Neutron::SecurityGroup Properties: description: String name: String rules: [{"remote_group_id": String, "direction": String, "remote_ip_prefix": String, "port_range_min": Integer, "remote_mode": String, "ethertype": String, "port_range_max": Integer, "protocol": String}, {"remote_group_id": String, "direction": String, "remote_ip_prefix": String, "port_range_min": Integer, "remote_mode": String, "ethertype": String, "port_range_max": Integer, "protocol": String}, ...]

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Neutron::SecurityGroup", "Properties": { "description": String, "name": String, "rules": [{"remote_group_id": String, "direction": String, "remote_ip_prefix": String, "port_range_min": Integer, "remote_mode": String, "ethertype": String, "port_range_max": Integer, "protocol": String}, {"remote_group_id": String, "direction": String, "remote_ip_prefix": String, "port_range_min": Integer, "remote_mode": String, "ethertype": String, "port_range_max": Integer, "protocol": String}, ...] } } }}

Page 119: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

113

OS::Neutron::Subnet

Properties

allocation_pools The start and end addresses for the allocation pools.

Updates cause replacement.

Optional property.

List contents:

* Updates cause replacement.

Optional property.

Map properties:

end Updates cause replacement.

Required property.

start Updates cause replacement.

Required property.

cidr The CIDR.

Updates cause replacement.

Required property.

dns_nameservers A specified set of DNS name servers to be used.

Can be updated without replacement.

Optional property, defaults to "[]".

enable_dhcp Set to true if DHCP is enabled and false if DHCP is disabled.

Can be updated without replacement.

Optional property, defaults to "True".

gateway_ip The gateway IP address.

Can be updated without replacement.

Optional property.

host_routes Updates cause replacement.

Optional property.

Page 120: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

114

List contents:

* Updates cause replacement.

Optional property.

Map properties:

destination Updates cause replacement.

Required property.

nexthop Updates cause replacement.

Required property.

ip_version The IP version, which is 4 or 6.

Updates cause replacement.

Optional property, defaults to "4".

Allowed values: 4, 6

name The name of the subnet.

Can be updated without replacement.

Optional property.

network The ID of the attached network.

Updates cause replacement.

Optional property.

tenant_id The ID of the tenant who owns the network. Only administrativeusers can specify a tenant ID other than their own.

Updates cause replacement.

Optional property.

value_specs Extra parameters to include in the creation request.

Can be updated without replacement.

Optional property, defaults to "{}".

network_id Note

DEPRECATED - Use property network.

Updates cause replacement.

Page 121: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

115

Optional property.

Attributes

allocation_pools Ip allocation pools and their ranges.

cidr CIDR block notation for this subnet.

dns_nameservers List of dns nameservers.

enable_dhcp 'true' if DHCP is enabled for this subnet; 'false' otherwise.

gateway_ip Ip of the subnet's gateway.

host_routes Additional routes for this subnet.

ip_version Ip version for the subnet.

name Friendly name of the subnet.

network_id Parent network of the subnet.

show All attributes.

tenant_id Tenant owning the subnet.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Neutron::Subnet properties: allocation_pools: [{"start": String, "end": String}, {"start": String, "end": String}, ...] cidr: String dns_nameservers: [Value, Value, ...] enable_dhcp: Boolean gateway_ip: String host_routes: [{"nexthop": String, "destination": String}, {"nexthop": String, "destination": String}, ...] ip_version: Integer name: String network: String tenant_id: String value_specs: {...}

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...

Page 122: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

116

Resources: ... TheResource: Type: OS::Neutron::Subnet Properties: allocation_pools: [{"start": String, "end": String}, {"start": String, "end": String}, ...] cidr: String dns_nameservers: [Value, Value, ...] enable_dhcp: Boolean gateway_ip: String host_routes: [{"nexthop": String, "destination": String}, {"nexthop": String, "destination": String}, ...] ip_version: Integer name: String network: String tenant_id: String value_specs: {...}

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Neutron::Subnet", "Properties": { "allocation_pools": [{"start": String, "end": String}, {"start": String, "end": String}, ...], "cidr": String, "dns_nameservers": [Value, Value, ...], "enable_dhcp": Boolean, "gateway_ip": String, "host_routes": [{"nexthop": String, "destination": String}, {"nexthop": String, "destination": String}, ...], "ip_version": Integer, "name": String, "network": String, "tenant_id": String, "value_specs": {...} } } }}

OS::Neutron::VPNServiceA resource for VPN service in Neutron.

Properties

admin_state_up Administrative state for the vpn service.

Can be updated without replacement.

Optional property, defaults to "True".

Page 123: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

117

description Description for the vpn service.

Can be updated without replacement.

Optional property.

name Name for the vpn service.

Can be updated without replacement.

Optional property.

router_id Unique identifier for the router to which the vpn service will be insert-ed.

Updates cause replacement.

Required property.

subnet Subnet in which the vpn service will be created.

Updates cause replacement.

Optional property.

subnet_id Note

DEPRECATED - Use property subnet.

Updates cause replacement.

Optional property.

Attributes

admin_state_up The administrative state of the vpn service.

description The description of the vpn service.

name The name of the vpn service.

router_id The unique identifier of the router to which the vpn service was in-serted.

show All attributes.

status The status of the vpn service.

subnet_id The unique identifier of the subnet in which the vpn service was creat-ed.

tenant_id The unique identifier of the tenant owning the vpn service.

Page 124: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

118

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Neutron::VPNService properties: admin_state_up: Boolean description: String name: String router_id: String subnet: String

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Neutron::VPNService Properties: admin_state_up: Boolean description: String name: String router_id: String subnet: String

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Neutron::VPNService", "Properties": { "admin_state_up": Boolean, "description": String, "name": String, "router_id": String, "subnet": String } } }}

OS::Nova::FloatingIPAvailable since 2014.1 (Icehouse).

Properties

pool Allocate a floating IP from a given floating IP pool.

Page 125: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

119

Updates cause replacement.

Optional property.

Attributesip Allocated floating IP address.

pool Pool from which floating IP is allocated.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Nova::FloatingIP properties: pool: String

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Nova::FloatingIP Properties: pool: String

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Nova::FloatingIP", "Properties": { "pool": String } } }}

OS::Nova::FloatingIPAssociationAvailable since 2014.1 (Icehouse).

Propertiesfloating_ip ID of the floating IP to assign to the server.

Page 126: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

120

Can be updated without replacement.

Required property.

server_id Server to assign floating IP to.

Can be updated without replacement.

Required property.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Nova::FloatingIPAssociation properties: floating_ip: String server_id: String

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Nova::FloatingIPAssociation Properties: floating_ip: String server_id: String

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Nova::FloatingIPAssociation", "Properties": { "floating_ip": String, "server_id": String } } }}

OS::Nova::KeyPairA resource for creating Nova key pairs.

that if a new key is generated setting save_private_key to True results in the system savingthe private key which can then be retrieved via the private_key attribute of this resource.

Page 127: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

121

Setting the public_key property means that the private_key attribute of this resource will al-ways return an empty string regardless of the save_private_key setting since there will beno private key data to save.

Available since 2014.1 (Icehouse).

Properties

name The name of the key pair.

Updates cause replacement.

Required property.

The length must be in the range 1 to 255.

public_key The optional public key. This allows users to supply the public keyfrom a pre-existing key pair. If not supplied, a new key pair will begenerated.

Updates cause replacement.

Optional property.

save_private_key True if the system should remember a generated private key; Falseotherwise.

Updates cause replacement.

Optional property, defaults to "False".

Attributes

private_key The private key if it has been saved.

public_key The public key.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Nova::KeyPair properties: name: String public_key: String save_private_key: Boolean

Page 128: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

122

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Nova::KeyPair Properties: name: String public_key: String save_private_key: Boolean

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Nova::KeyPair", "Properties": { "name": String, "public_key": String, "save_private_key": Boolean } } }}

OS::Nova::Server

Properties

admin_pass The administrator password for the server.

Can be updated without replacement.

Optional property.

availability_zone Name of the availability zone for server placement.

Updates cause replacement.

Optional property.

block_device_mapping Block device mappings for this server.

Updates cause replacement.

Optional property.

List contents:

* Updates cause replacement.

Page 129: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

123

Optional property.

Map properties:

delete_on_termination Indicate whether thevolume should bedeleted when theserver is terminated.

Updates cause re-placement.

Optional property.

device_name A device namewhere the volumewill be attached inthe system at /dev/device_name. Thisvalue is typically vda.

Updates cause re-placement.

Required property.

snapshot_id The ID of the snap-shot to create a vol-ume from.

Updates cause re-placement.

Optional property.

volume_id The ID of the volumeto boot from. Onlyone of volume_id orsnapshot_id shouldbe provided.

Updates cause re-placement.

Optional property.

volume_size The size of the vol-ume, in GB. It is safeto leave this blankand have the Com-pute service infer thesize.

Page 130: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

124

Updates cause re-placement.

Optional property.

config_drive If True, enable config drive on the server.

Updates cause replacement.

Optional property.

diskConfig Control how the disk is partitioned when the server iscreated.

Updates cause replacement.

Optional property.

Allowed values: AUTO, MANUAL

flavor The ID or name of the flavor to boot onto.

Can be updated without replacement.

Required property.

flavor_update_policy Policy on how to apply a flavor update; either by re-questing a server resize or by replacing the entire server.

Can be updated without replacement.

Optional property, defaults to "RESIZE".

Allowed values: RESIZE, REPLACE

image The ID or name of the image to boot with.

Can be updated without replacement.

Optional property.

Value must be of type glance.image

image_update_policy Policy on how to apply an image-id update; either by re-questing a server rebuild or by replacing the entire serv-er

Can be updated without replacement.

Optional property, defaults to "REPLACE".

Allowed values: REBUILD, REPLACE,REBUILD_PRESERVE_EPHEMERAL

key_name Name of keypair to inject into the server.

Page 131: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

125

Updates cause replacement.

Optional property.

Value must be of type nova.keypair

metadata Arbitrary key/value metadata to store for this server.Both keys and values must be 255 characters or less.Non-string values will be serialized to JSON (and the se-rialized string must be 255 characters or less).

Can be updated without replacement.

Optional property.

name Server name.

Can be updated without replacement.

Optional property.

networks An ordered list of nics to be added to this server, withinformation about connected networks, fixed ips, portetc.

Can be updated without replacement.

Optional property.

List contents:

* Updates cause replacement.

Optional property.

Map properties:

fixed_ip Fixed IP address to specify for the portcreated on the requested network.

Updates cause replacement.

Optional property.

network Name or ID of network to create aport on.

Updates cause replacement.

Optional property.

port ID of an existing port to associate withthis server.

Page 132: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

126

Updates cause replacement.

Optional property.

uuid Note

DEPRECATED - Use proper-ty network.

ID of network to create a port on.

Updates cause replacement.

Optional property.

personality A map of files to create/overwrite on the server uponboot. Keys are file names and values are the file con-tents.

Updates cause replacement.

Optional property, defaults to "{}".

reservation_id A UUID for the set of servers being requested.

Updates cause replacement.

Optional property.

scheduler_hints Arbitrary key-value pairs specified by the client to helpboot a server.

Updates cause replacement.

Optional property.

security_groups List of security group names or IDs. Cannot be used ifneutron ports are associated with this server; assign se-curity groups to the ports instead.

Updates cause replacement.

Optional property, defaults to "[]".

software_config_transport How the server should receive the metadata requiredfor software configuration. POLL_SERVER_CFN willallow calls to the cfn API action DescribeStackRe-source authenticated with the provided keypair.POLL_SERVER_HEAT will allow calls to the Heat API re-source-show using the provided keystone credentials.POLL_TEMP_URL will create and populate a Swift Tem-pURL with metadata for polling.

Updates cause replacement.

Page 133: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

127

Optional property, defaults to "POLL_SERVER_CFN".

Allowed values: POLL_SERVER_CFN,POLL_SERVER_HEAT, POLL_TEMP_URL

user_data User data script to be executed by cloud-init.

Updates cause replacement.

Optional property, defaults to "".

user_data_format How the user_data should be formatted for the server.For HEAT_CFNTOOLS, the user_data is bundled as partof the heat-cfntools cloud-init boot configuration data.For RAW the user_data is passed to Nova unmodified.For SOFTWARE_CONFIG user_data is bundled as part ofthe software config data, and metadata is derived fromany associated SoftwareDeployment resources.

Updates cause replacement.

Optional property, defaults to "HEAT_CFNTOOLS".

Allowed values: HEAT_CFNTOOLS, RAW,SOFTWARE_CONFIG

admin_user Note

DEPRECATED

Name of the administrative user to use on the server.This property will be removed from Juno in favor ofthe default cloud-init user set up for each image (e.g."ubuntu" for Ubuntu 12.04+, "fedora" for Fedora 19+and "cloud-user" for CentOS/RHEL 6.5).

Updates cause replacement.

Optional property.

AttributesaccessIPv4 The manually assigned alternative public IPv4 address of the server.

accessIPv6 The manually assigned alternative public IPv6 address of the server.

addresses A dict of all network addresses with corresponding port_id.

first_address Note

DEPRECATED - Use the networks attribute instead offirst_address. For example: "{get_attr: [<server name>, net-works, <network name>, 0]}"

Page 134: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

128

Convenience attribute to fetch the first assigned network address, oran empty string if nothing has been assigned at this time. Result maynot be predictable if the server has addresses from more than one net-work.

instance_name AWS compatible instance name.

name Name of the server.

networks A dict of assigned network addresses of the form: {"public": [ip1,ip2...], "private": [ip3, ip4]}.

show A dict of all server details as returned by the API.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Nova::Server properties: admin_pass: String availability_zone: String block_device_mapping: [{"volume_size": Integer, "volume_id": String, "snapshot_id": String, "delete_on_termination": Boolean, "device_name": String}, {"volume_size": Integer, "volume_id": String, "snapshot_id": String, "delete_on_termination": Boolean, "device_name": String}, ...] config_drive: Boolean diskConfig: String flavor: String flavor_update_policy: String image: String image_update_policy: String key_name: String metadata: {...} name: String networks: [{"port": String, "fixed_ip": String, "uuid": String, "network": String}, {"port": String, "fixed_ip": String, "uuid": String, "network": String}, ...] personality: {...} reservation_id: String scheduler_hints: {...} security_groups: [Value, Value, ...] software_config_transport: String user_data: String user_data_format: String

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Nova::Server Properties:

Page 135: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

129

admin_pass: String availability_zone: String block_device_mapping: [{"volume_size": Integer, "volume_id": String, "snapshot_id": String, "delete_on_termination": Boolean, "device_name": String}, {"volume_size": Integer, "volume_id": String, "snapshot_id": String, "delete_on_termination": Boolean, "device_name": String}, ...] config_drive: Boolean diskConfig: String flavor: String flavor_update_policy: String image: String image_update_policy: String key_name: String metadata: {...} name: String networks: [{"port": String, "fixed_ip": String, "uuid": String, "network": String}, {"port": String, "fixed_ip": String, "uuid": String, "network": String}, ...] personality: {...} reservation_id: String scheduler_hints: {...} security_groups: [Value, Value, ...] software_config_transport: String user_data: String user_data_format: String

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Nova::Server", "Properties": { "admin_pass": String, "availability_zone": String, "block_device_mapping": [{"volume_size": Integer, "volume_id": String, "snapshot_id": String, "delete_on_termination": Boolean, "device_name": String}, {"volume_size": Integer, "volume_id": String, "snapshot_id": String, "delete_on_termination": Boolean, "device_name": String}, ...], "config_drive": Boolean, "diskConfig": String, "flavor": String, "flavor_update_policy": String, "image": String, "image_update_policy": String, "key_name": String, "metadata": {...}, "name": String, "networks": [{"port": String, "fixed_ip": String, "uuid": String, "network": String}, {"port": String, "fixed_ip": String, "uuid": String, "network": String}, ...], "personality": {...}, "reservation_id": String, "scheduler_hints": {...}, "security_groups": [Value, Value, ...], "software_config_transport": String, "user_data": String, "user_data_format": String

Page 136: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

130

} } }}

OS::Nova::ServerGroupA resource for managing a Nova server group.

Available since 2014.2 (Juno).

Propertiesname Server Group name.

Updates cause replacement.

Optional property.

policies A list of string policies to apply. Defaults to anti-affinity.

Updates cause replacement.

Optional property, defaults to "['anti-affinity']".

Allowed values: anti-affinity, affinity

List contents:

* Updates cause replacement.

Optional property.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Nova::ServerGroup properties: name: String policies: [String, String, ...]

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Nova::ServerGroup Properties: name: String policies: [String, String, ...]

Page 137: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

131

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Nova::ServerGroup", "Properties": { "name": String, "policies": [String, String, ...] } } }}

OS::Sahara::Cluster

Properties

cluster_template_id ID of the Cluster Template used for Node Groups andconfigurations.

Updates cause replacement.

Required property.

hadoop_version Version of Hadoop running on instances.

Updates cause replacement.

Required property.

image Name or UUID of the image used to boot Hadoopnodes.

Updates cause replacement.

Optional property.

Value must be of type glance.image

key_name Keypair added to instances to make them accessible foruser.

Updates cause replacement.

Optional property.

Value must be of type nova.keypair

name Hadoop cluster name.

Updates cause replacement.

Page 138: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

132

Optional property.

neutron_management_network Name or UUID of Neutron network.

Updates cause replacement.

Optional property.

Value must be of type neutron.network

plugin_name Plugin name.

Updates cause replacement.

Required property.

Attributes

info Cluster information.

status Cluster status.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Sahara::Cluster properties: cluster_template_id: String hadoop_version: String image: String key_name: String name: String neutron_management_network: String plugin_name: String

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Sahara::Cluster Properties: cluster_template_id: String hadoop_version: String image: String key_name: String name: String neutron_management_network: String plugin_name: String

Page 139: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

133

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Sahara::Cluster", "Properties": { "cluster_template_id": String, "hadoop_version": String, "image": String, "key_name": String, "name": String, "neutron_management_network": String, "plugin_name": String } } }}

OS::Sahara::ClusterTemplateAvailable since 2014.2 (Juno).

Properties

anti_affinity List of processes to enable anti-affinity for.

Updates cause replacement.

Optional property.

List contents:

* Updates cause replacement.

Optional property.

cluster_configs Cluster configs dictionary.

Updates cause replacement.

Optional property.

default_image_id ID of the default image to use for the template.

Updates cause replacement.

Optional property.

Value must be of type glance.image

description Description of the Sahara Group Template.

Page 140: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

134

Updates cause replacement.

Optional property, defaults to "".

hadoop_version Version of Hadoop running on instances.

Updates cause replacement.

Required property.

name Name for the Sahara Cluster Template.

Updates cause replacement.

Optional property.

The length must be in the range 1 to 50.

Value must match pattern: ^(([a-zA-Z]|[a-zA-Z][a-zA-Z0-9\-]*[a-zA-Z0-9])\.)*([A-Za-z]|[A-Za-z][A-Za-z0-9\-]*[A-Za-z0-9])$

neutron_management_network Name or UUID of Neutron network.

Updates cause replacement.

Optional property.

Value must be of type neutron.network

node_groups Node groups.

Updates cause replacement.

Optional property.

List contents:

* Updates cause replacement.

Optional property.

Map properties:

count Number of in-stances in the Nodegroup.

Updates cause re-placement.

Required property.

The value must beat least 1.

Page 141: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

135

name Name of the Nodegroup.

Updates cause re-placement.

Required property.

node_group_template_id ID of the NodeGroup Template.

Updates cause re-placement.

Required property.

plugin_name Plugin name.

Updates cause replacement.

Required property.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Sahara::ClusterTemplate properties: anti_affinity: [String, String, ...] cluster_configs: {...} default_image_id: String description: String hadoop_version: String name: String neutron_management_network: String node_groups: [{"count": Integer, "name": String, "node_group_template_id": String}, {"count": Integer, "name": String, "node_group_template_id": String}, ...] plugin_name: String

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Sahara::ClusterTemplate Properties: anti_affinity: [String, String, ...] cluster_configs: {...} default_image_id: String description: String

Page 142: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

136

hadoop_version: String name: String neutron_management_network: String node_groups: [{"count": Integer, "name": String, "node_group_template_id": String}, {"count": Integer, "name": String, "node_group_template_id": String}, ...] plugin_name: String

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Sahara::ClusterTemplate", "Properties": { "anti_affinity": [String, String, ...], "cluster_configs": {...}, "default_image_id": String, "description": String, "hadoop_version": String, "name": String, "neutron_management_network": String, "node_groups": [{"count": Integer, "name": String, "node_group_template_id": String}, {"count": Integer, "name": String, "node_group_template_id": String}, ...], "plugin_name": String } } }}

OS::Sahara::NodeGroupTemplateAvailable since 2014.2 (Juno).

Properties

description Description of the Node Group Template.

Updates cause replacement.

Optional property, defaults to "".

flavor Name or ID Nova flavor for the nodes.

Updates cause replacement.

Required property.

floating_ip_pool Name or UUID of the Neutron floating IP network to use.

Updates cause replacement.

Optional property.

Page 143: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

137

Value must be of type neutron.network

hadoop_version Version of Hadoop running on instances.

Updates cause replacement.

Required property.

name Name for the Sahara Node Group Template.

Updates cause replacement.

Optional property.

The length must be in the range 1 to 50.

Value must match pattern: ^(([a-zA-Z]|[a-zA-Z][a-zA-Z0-9\-]*[a-zA-Z0-9])\.)*([A-Za-z]|[A-Za-z][A-Za-z0-9\-]*[A-Za-z0-9])$

node_configs Dictionary of node configurations.

Updates cause replacement.

Optional property.

node_processes List of processes to run on every node.

Updates cause replacement.

Required property.

The length must be at least 1.

List contents:

* Updates cause replacement.

Optional property.

plugin_name Plugin name.

Updates cause replacement.

Required property.

volumes_per_node Volumes per node.

Updates cause replacement.

Optional property.

The value must be at least 0.

volumes_size Size of the volumes, in GB.

Updates cause replacement.

Page 144: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

138

Optional property.

The value must be at least 1.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Sahara::NodeGroupTemplate properties: description: String flavor: String floating_ip_pool: String hadoop_version: String name: String node_configs: {...} node_processes: [String, String, ...] plugin_name: String volumes_per_node: Integer volumes_size: Integer

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Sahara::NodeGroupTemplate Properties: description: String flavor: String floating_ip_pool: String hadoop_version: String name: String node_configs: {...} node_processes: [String, String, ...] plugin_name: String volumes_per_node: Integer volumes_size: Integer

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Sahara::NodeGroupTemplate", "Properties": { "description": String, "flavor": String, "floating_ip_pool": String, "hadoop_version": String,

Page 145: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

139

"name": String, "node_configs": {...}, "node_processes": [String, String, ...], "plugin_name": String, "volumes_per_node": Integer, "volumes_size": Integer } } }}

OS::Swift::Container

PropertiesX-Account-Meta A map of user-defined meta data to associate with the account.

Each key in the map will set the header X-Account-Meta-{key}with the corresponding value.

Updates cause replacement.

Optional property, defaults to "{}".

X-Container-Meta A map of user-defined meta data to associate with the container.Each key in the map will set the header X-Container-Meta-{key}with the corresponding value.

Updates cause replacement.

Optional property, defaults to "{}".

X-Container-Read Specify the ACL permissions on who can read objects in the con-tainer.

Updates cause replacement.

Optional property.

X-Container-Write Specify the ACL permissions on who can write objects to the con-tainer.

Updates cause replacement.

Optional property.

name Name for the container. If not specified, a unique name will begenerated.

Updates cause replacement.

Optional property.

AttributesBytesUsed The number of bytes stored in the container.

Page 146: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

140

DomainName The host from the container URL.

HeadContainer A map containing all headers for the container.

ObjectCount The number of objects stored in the container.

RootURL The parent URL of the container.

WebsiteURL The URL of the container.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Swift::Container properties: X-Account-Meta: {...} X-Container-Meta: {...} X-Container-Read: String X-Container-Write: String name: String

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Swift::Container Properties: X-Account-Meta: {...} X-Container-Meta: {...} X-Container-Read: String X-Container-Write: String name: String

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Swift::Container", "Properties": { "X-Account-Meta": {...}, "X-Container-Meta": {...}, "X-Container-Read": String, "X-Container-Write": String, "name": String } } }

Page 147: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

141

}

OS::Trove::InstanceOpenStack cloud database instance resource.

Available since 2014.1 (Icehouse).

Propertiesavailability_zone Name of the availability zone for DB instance.

Updates cause replacement.

Optional property.

databases List of databases to be created on DB instance creation.

Updates cause replacement.

Optional property, defaults to "[]".

List contents:

* Updates cause replacement.

Optional property.

Map properties:

character_set Set of symbols and encodings.

Updates cause replacement.

Optional property, defaults to "utf8".

collate Set of rules for comparing characters in acharacter set.

Updates cause replacement.

Optional property, defaults to"utf8_general_ci".

name Specifies database names for creatingdatabases on instance creation.

Updates cause replacement.

Required property.

The length must be no greater than 64.

Value must match pattern: [a-zA-Z0-9_]+[a-zA-Z0-9_@?#\s]*[a-zA-Z0-9_]+

Page 148: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

142

datastore_type Name of registered datastore type.

Updates cause replacement.

Optional property.

The length must be no greater than 255.

datastore_version Name of the registered datastore version. It must exist for provid-ed datastore type. Defaults to using single active version. If sever-al active versions exist for provided datastore type, explicit valuefor this parameter must be specified.

Updates cause replacement.

Optional property.

The length must be no greater than 255.

flavor Reference to a flavor for creating DB instance.

Updates cause replacement.

Required property.

name Name of the DB instance to create.

Updates cause replacement.

Optional property.

The length must be no greater than 255.

networks List of network interfaces to create on instance.

Updates cause replacement.

Optional property, defaults to "[]".

List contents:

* Updates cause replacement.

Optional property.

Map properties:

fixed_ip Fixed IPv4 address for this NIC.

Updates cause replacement.

Optional property.

network Name or UUID of the network to attach this NICto. Either port or network must be specified.

Page 149: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

143

Updates cause replacement.

Optional property.

port Name or UUID of Neutron port to attach thisNIC to. Either port or network must be specified.

Updates cause replacement.

Optional property.

restore_point DB instance restore point.

Updates cause replacement.

Optional property.

size Database volume size in GB.

Updates cause replacement.

Required property.

The value must be in the range 1 to 150.

users List of users to be created on DB instance creation.

Updates cause replacement.

Optional property, defaults to "[]".

List contents:

* Updates cause replacement.

Optional property.

Map properties:

databases Names of databases that those users can accesson instance creation.

Updates cause replacement.

Required property.

The length must be at least 1.

List contents:

* Updates cause replacement.

Optional property.

Page 150: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

144

host The host from which a user is allowed to con-nect to the database.

Updates cause replacement.

Optional property, defaults to "%".

name User name to create a user on instance cre-ation.

Updates cause replacement.

Required property.

The length must be no greater than 16.

Value must match pattern: [a-zA-Z0-9_]+[a-zA-Z0-9_@?#\s]*[a-zA-Z0-9_]+

password Password for those users on instance creation.

Updates cause replacement.

Required property.

Value must match pattern: [a-zA-Z0-9_]+[a-zA-Z0-9_@?#\s]*[a-zA-Z0-9_]+

Attributes

hostname Hostname of the instance.

href Api endpoint reference of the instance.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: OS::Trove::Instance properties: availability_zone: String databases: [{"character_set": String, "name": String, "collate": String}, {"character_set": String, "name": String, "collate": String}, ...] datastore_type: String datastore_version: String flavor: String name: String networks: [{"fixed_ip": String, "network": String, "port": String}, {"fixed_ip": String, "network": String, "port": String}, ...] restore_point: String size: Integer

Page 151: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

145

users: [{"host": String, "password": String, "name": String, "databases": [String, String, ...]}, {"host": String, "password": String, "name": String, "databases": [String, String, ...]}, ...]

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: OS::Trove::Instance Properties: availability_zone: String databases: [{"character_set": String, "name": String, "collate": String}, {"character_set": String, "name": String, "collate": String}, ...] datastore_type: String datastore_version: String flavor: String name: String networks: [{"fixed_ip": String, "network": String, "port": String}, {"fixed_ip": String, "network": String, "port": String}, ...] restore_point: String size: Integer users: [{"host": String, "password": String, "name": String, "databases": [String, String, ...]}, {"host": String, "password": String, "name": String, "databases": [String, String, ...]}, ...]

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "OS::Trove::Instance", "Properties": { "availability_zone": String, "databases": [{"character_set": String, "name": String, "collate": String}, {"character_set": String, "name": String, "collate": String}, ...], "datastore_type": String, "datastore_version": String, "flavor": String, "name": String, "networks": [{"fixed_ip": String, "network": String, "port": String}, {"fixed_ip": String, "network": String, "port": String}, ...], "restore_point": String, "size": Integer, "users": [{"host": String, "password": String, "name": String, "databases": [String, String, ...]}, {"host": String, "password": String, "name": String, "databases": [String, String, ...]}, ...] } } }}

Page 152: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

146

2. CloudFormation Compatible ResourceTypes

AWS::AutoScaling::AutoScalingGroup .......................................................................... 146AWS::AutoScaling::LaunchConfiguration ...................................................................... 149AWS::AutoScaling::ScalingPolicy ................................................................................... 154AWS::CloudFormation::Stack ........................................................................................ 155AWS::CloudFormation::WaitCondition ......................................................................... 157AWS::CloudFormation::WaitConditionHandle ............................................................... 158AWS::CloudWatch::Alarm ............................................................................................ 159AWS::EC2::EIP .............................................................................................................. 161AWS::EC2::EIPAssociation ............................................................................................. 162AWS::EC2::Instance ...................................................................................................... 164AWS::EC2::InternetGateway ......................................................................................... 171AWS::EC2::NetworkInterface ....................................................................................... 172AWS::EC2::RouteTable ................................................................................................. 174AWS::EC2::SecurityGroup ............................................................................................. 175AWS::EC2::Subnet ........................................................................................................ 178AWS::EC2::SubnetRouteTableAssociation ..................................................................... 180AWS::EC2::VPC ............................................................................................................ 181AWS::EC2::VPCGatewayAttachment ............................................................................. 182AWS::EC2::Volume ....................................................................................................... 183AWS::EC2::VolumeAttachment ..................................................................................... 185AWS::ElasticLoadBalancing::LoadBalancer .................................................................... 187AWS::IAM::AccessKey .................................................................................................. 190AWS::IAM::User ........................................................................................................... 191AWS::RDS::DBInstance ................................................................................................. 193AWS::S3::Bucket .......................................................................................................... 195

AWS::AutoScaling::AutoScalingGroupAvailable since 2014.1 (Icehouse).

PropertiesAvailabilityZones Not Implemented.

Updates cause replacement.

Required property.

Cooldown Cooldown period, in seconds.

Can be updated without replacement.

Optional property.

DesiredCapacity Desired initial number of instances.

Can be updated without replacement.

Page 153: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

147

Optional property.

HealthCheckGracePeriod Note

Not implemented.

HealthCheckType Note

Not implemented.

LaunchConfigurationName The reference to a LaunchConfiguration resource.

Can be updated without replacement.

Required property.

LoadBalancerNames List of LoadBalancer resources.

Updates cause replacement.

Optional property.

MaxSize Maximum number of instances in the group.

Can be updated without replacement.

Required property.

MinSize Minimum number of instances in the group.

Can be updated without replacement.

Required property.

Tags Tags to attach to this group.

Updates cause replacement.

Optional property.

List contents:

* Updates cause replacement.

Optional property.

Map properties:

Key Updates cause replacement.

Required property.

Value Updates cause replacement.

Required property.

Page 154: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

148

VPCZoneIdentifier Use only with Neutron, to list the internal subnet towhich the instance will be attached; needed only if multi-ple exist; list length must be exactly 1.

Updates cause replacement.

Optional property.

List contents:

* UUID of the internal subnet to which the instance willbe attached.

Updates cause replacement.

Optional property.

Attributes

InstanceList A comma-delimited list of server ip addresses. (Heat extension).

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: AWS::AutoScaling::AutoScalingGroup properties: AvailabilityZones: [Value, Value, ...] Cooldown: Number DesiredCapacity: Integer LaunchConfigurationName: String LoadBalancerNames: [Value, Value, ...] MaxSize: Integer MinSize: Integer Tags: [{"Value": String, "Key": String}, {"Value": String, "Key": String}, ...] VPCZoneIdentifier: [String, String, ...]

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: AWS::AutoScaling::AutoScalingGroup Properties: AvailabilityZones: [Value, Value, ...] Cooldown: Number DesiredCapacity: Integer LaunchConfigurationName: String LoadBalancerNames: [Value, Value, ...] MaxSize: Integer

Page 155: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

149

MinSize: Integer Tags: [{"Value": String, "Key": String}, {"Value": String, "Key": String}, ...] VPCZoneIdentifier: [String, String, ...]

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "AWS::AutoScaling::AutoScalingGroup", "Properties": { "AvailabilityZones": [Value, Value, ...], "Cooldown": Number, "DesiredCapacity": Integer, "LaunchConfigurationName": String, "LoadBalancerNames": [Value, Value, ...], "MaxSize": Integer, "MinSize": Integer, "Tags": [{"Value": String, "Key": String}, {"Value": String, "Key": String}, ...], "VPCZoneIdentifier": [String, String, ...] } } }}

AWS::AutoScaling::LaunchConfiguration

PropertiesBlockDeviceMappings Block device mappings to attach to instance.

Updates cause replacement.

Optional property.

List contents:

* Updates cause replacement.

Optional property.

Map properties:

DeviceName A device name where the volume willbe attached in the system at /dev/device_name.e.g. vdb

Updates cause replacement.

Required property.

Ebs The ebs volume to attach to the instance.

Page 156: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

150

Updates cause replacement.

Optional property.

Map properties:

DeleteOnTermination Indicatewhetherthe volumeshould bedeletedwhen the in-stance is ter-minated.

Updatescause re-placement.

Optionalproperty,defaults to"True".

Iops Note

Notim-ple-ment-ed.

SnapshotId The ID of thesnapshot tocreate a vol-ume from.

Updatescause re-placement.

Optionalproperty.

VolumeSize The size ofthe volume,in GB. Mustbe equal orgreater thanthe size ofthe snap-shot. It is

Page 157: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

151

safe to leavethis blankand have theCompute ser-vice infer thesize.

Updatescause re-placement.

Optionalproperty.

VolumeType Note

Notim-ple-ment-ed.

NoDevice Note

Not implemented.

VirtualName Note

Not implemented.

ImageId Glance image ID or name.

Updates cause replacement.

Required property.

Value must be of type glance.image

InstanceType Nova instance type (flavor).

Updates cause replacement.

Required property.

KernelId Note

Not implemented.

KeyName Optional Nova keypair name.

Updates cause replacement.

Optional property.

Page 158: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

152

Value must be of type nova.keypair

NovaSchedulerHints Scheduler hints to pass to Nova (Heat extension).

Updates cause replacement.

Optional property.

List contents:

* Updates cause replacement.

Optional property.

Map properties:

Key Updates cause replacement.

Required property.

Value Updates cause replacement.

Required property.

RamDiskId Note

Not implemented.

SecurityGroups Security group names to assign.

Updates cause replacement.

Optional property.

UserData User data to pass to instance.

Updates cause replacement.

Optional property.

Page 159: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

153

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: AWS::AutoScaling::LaunchConfiguration properties: BlockDeviceMappings: [{"DeviceName": String, "Ebs": {"DeleteOnTermination": Boolean, "VolumeSize": String, "SnapshotId": String}}, {"DeviceName": String, "Ebs": {"DeleteOnTermination": Boolean, "VolumeSize": String, "SnapshotId": String}}, ...] ImageId: String InstanceType: String KeyName: String NovaSchedulerHints: [{"Value": String, "Key": String}, {"Value": String, "Key": String}, ...] SecurityGroups: [Value, Value, ...] UserData: String

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: AWS::AutoScaling::LaunchConfiguration Properties: BlockDeviceMappings: [{"DeviceName": String, "Ebs": {"DeleteOnTermination": Boolean, "VolumeSize": String, "SnapshotId": String}}, {"DeviceName": String, "Ebs": {"DeleteOnTermination": Boolean, "VolumeSize": String, "SnapshotId": String}}, ...] ImageId: String InstanceType: String KeyName: String NovaSchedulerHints: [{"Value": String, "Key": String}, {"Value": String, "Key": String}, ...] SecurityGroups: [Value, Value, ...] UserData: String

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "AWS::AutoScaling::LaunchConfiguration", "Properties": { "BlockDeviceMappings": [{"DeviceName": String, "Ebs": {"DeleteOnTermination": Boolean, "VolumeSize": String, "SnapshotId": String}}, {"DeviceName": String, "Ebs": {"DeleteOnTermination": Boolean, "VolumeSize": String, "SnapshotId": String}}, ...], "ImageId": String, "InstanceType": String, "KeyName": String,

Page 160: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

154

"NovaSchedulerHints": [{"Value": String, "Key": String}, {"Value": String, "Key": String}, ...], "SecurityGroups": [Value, Value, ...], "UserData": String } } }}

AWS::AutoScaling::ScalingPolicy

Properties

AdjustmentType Type of adjustment (absolute or percentage).

Can be updated without replacement.

Required property.

Allowed values: ChangeInCapacity, ExactCapacity, Per-centChangeInCapacity

AutoScalingGroupName AutoScaling group name to apply policy to.

Updates cause replacement.

Required property.

Cooldown Cooldown period, in seconds.

Can be updated without replacement.

Optional property.

ScalingAdjustment Size of adjustment.

Can be updated without replacement.

Required property.

Attributes

AlarmUrl A signed url to handle the alarm. (Heat extension).

Page 161: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

155

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: AWS::AutoScaling::ScalingPolicy properties: AdjustmentType: String AutoScalingGroupName: String Cooldown: Number ScalingAdjustment: Number

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: AWS::AutoScaling::ScalingPolicy Properties: AdjustmentType: String AutoScalingGroupName: String Cooldown: Number ScalingAdjustment: Number

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "AWS::AutoScaling::ScalingPolicy", "Properties": { "AdjustmentType": String, "AutoScalingGroupName": String, "Cooldown": Number, "ScalingAdjustment": Number } } }}

AWS::CloudFormation::StackA Resource representing a child stack to allow composition of templates.

PropertiesParameters The set of parameters passed to this nested stack.

Can be updated without replacement.

Optional property.

Page 162: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

156

TemplateURL The URL of a template that specifies the stack to be created as a re-source.

Can be updated without replacement.

Required property.

TimeoutInMinutes The length of time, in minutes, to wait for the nested stack cre-ation.

Can be updated without replacement.

Optional property.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: AWS::CloudFormation::Stack properties: Parameters: {...} TemplateURL: String TimeoutInMinutes: Number

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: AWS::CloudFormation::Stack Properties: Parameters: {...} TemplateURL: String TimeoutInMinutes: Number

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "AWS::CloudFormation::Stack", "Properties": { "Parameters": {...}, "TemplateURL": String, "TimeoutInMinutes": Number } } }}

Page 163: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

157

AWS::CloudFormation::WaitConditionAvailable since 2014.2 (Juno).

Properties

Count The number of success signals that must be received before the stack creationprocess continues.

Can be updated without replacement.

Optional property, defaults to "1".

The value must be at least 1.

Handle A reference to the wait condition handle used to signal this wait condition.

Updates cause replacement.

Required property.

Timeout The number of seconds to wait for the correct number of signals to arrive.

Updates cause replacement.

Required property.

The value must be in the range 1 to 43200.

Attributes

Data JSON serialized dict containing data associated with wait condition signals sent tothe handle.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: AWS::CloudFormation::WaitCondition properties: Count: Number Handle: String Timeout: Number

Page 164: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

158

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: AWS::CloudFormation::WaitCondition Properties: Count: Number Handle: String Timeout: Number

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "AWS::CloudFormation::WaitCondition", "Properties": { "Count": Number, "Handle": String, "Timeout": Number } } }}

AWS::CloudFormation::WaitConditionHandlethe main point of this class is to : have no dependencies (so the instance can reference it)generate a unique url (to be returned in the reference) then the cfn-signal will use this urlto post to and WaitCondition will poll it to see if has been written to.

Available since 2014.2 (Juno).

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: AWS::CloudFormation::WaitConditionHandle

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: AWS::CloudFormation::WaitConditionHandle

Page 165: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

159

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "AWS::CloudFormation::WaitConditionHandle" } }}

AWS::CloudWatch::Alarm

PropertiesAlarmActions Can be updated without replacement.

Optional property.

AlarmDescription Can be updated without replacement.

Optional property.

ComparisonOperator Can be updated without replacement.

Required property.

Allowed values: GreaterThanOrEqualToThreshold,GreaterThanThreshold, LessThanThreshold, LessThanOrE-qualToThreshold

Dimensions Can be updated without replacement.

Required property.

EvaluationPeriods Can be updated without replacement.

Required property.

InsufficientDataActions Can be updated without replacement.

Optional property.

MetricName Can be updated without replacement.

Required property.

Namespace Can be updated without replacement.

Optional property.

OKActions Can be updated without replacement.

Optional property.

Page 166: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

160

Period Can be updated without replacement.

Required property.

Statistic Can be updated without replacement.

Required property.

Allowed values: SampleCount, Average, Sum, Minimum,Maximum

Threshold Can be updated without replacement.

Required property.

Units Can be updated without replacement.

Optional property.

Allowed values: Seconds, Microseconds, Milliseconds,Bytes, Kilobytes, Megabytes, Gigabytes, Terabytes, Bits,Kilobits, Megabits, Gigabits, Terabits, Percent, Count,Bytes/Second, Kilobytes/Second, Megabytes/Second, Gi-gabytes/Second, Terabytes/Second, Bits/Second, Kilo-bits/Second, Megabits/Second, Gigabits/Second, Ter-abits/Second, Count/Second, None

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: AWS::CloudWatch::Alarm properties: AlarmActions: [Value, Value, ...] AlarmDescription: String ComparisonOperator: String Dimensions: [Value, Value, ...] EvaluationPeriods: String InsufficientDataActions: [Value, Value, ...] MetricName: String Namespace: String OKActions: [Value, Value, ...] Period: String Statistic: String Threshold: String Units: String

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ...

Page 167: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

161

TheResource: Type: AWS::CloudWatch::Alarm Properties: AlarmActions: [Value, Value, ...] AlarmDescription: String ComparisonOperator: String Dimensions: [Value, Value, ...] EvaluationPeriods: String InsufficientDataActions: [Value, Value, ...] MetricName: String Namespace: String OKActions: [Value, Value, ...] Period: String Statistic: String Threshold: String Units: String

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "AWS::CloudWatch::Alarm", "Properties": { "AlarmActions": [Value, Value, ...], "AlarmDescription": String, "ComparisonOperator": String, "Dimensions": [Value, Value, ...], "EvaluationPeriods": String, "InsufficientDataActions": [Value, Value, ...], "MetricName": String, "Namespace": String, "OKActions": [Value, Value, ...], "Period": String, "Statistic": String, "Threshold": String, "Units": String } } }}

AWS::EC2::EIP

Properties

Domain Set to "vpc" to have IP address allocation associated to your VPC.

Updates cause replacement.

Optional property.

Allowed values: vpc

InstanceId Instance ID to associate with EIP.

Page 168: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

162

Can be updated without replacement.

Optional property.

AttributesAllocationId ID that AWS assigns to represent the allocation of the address for use

with Amazon VPC. Returned only for VPC elastic IP addresses.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: AWS::EC2::EIP properties: Domain: String InstanceId: String

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: AWS::EC2::EIP Properties: Domain: String InstanceId: String

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "AWS::EC2::EIP", "Properties": { "Domain": String, "InstanceId": String } } }}

AWS::EC2::EIPAssociation

PropertiesAllocationId Allocation ID for VPC EIP address.

Page 169: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

163

Can be updated without replacement.

Optional property.

EIP EIP address to associate with instance.

Can be updated without replacement.

Optional property.

InstanceId Instance ID to associate with EIP specified by EIP property.

Can be updated without replacement.

Optional property.

NetworkInterfaceId Network interface ID to associate with EIP.

Can be updated without replacement.

Optional property.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: AWS::EC2::EIPAssociation properties: AllocationId: String EIP: String InstanceId: String NetworkInterfaceId: String

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: AWS::EC2::EIPAssociation Properties: AllocationId: String EIP: String InstanceId: String NetworkInterfaceId: String

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": {

Page 170: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

164

"Type": "AWS::EC2::EIPAssociation", "Properties": { "AllocationId": String, "EIP": String, "InstanceId": String, "NetworkInterfaceId": String } } }}

AWS::EC2::Instance

PropertiesAvailabilityZone Availability zone to launch the instance in.

Updates cause replacement.

Optional property.

BlockDeviceMappings Block device mappings to attach to instance.

Updates cause replacement.

Optional property.

List contents:

* Updates cause replacement.

Optional property.

Map properties:

DeviceName A device name where the volume willbe attached in the system at /dev/device_name.e.g. vdb

Updates cause replacement.

Required property.

Ebs The ebs volume to attach to the in-stance.

Updates cause replacement.

Optional property.

Map properties:

DeleteOnTermination Indicatewhetherthe vol-

Page 171: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

165

umeshould bedeletedwhen theinstance isterminat-ed.

Updatescause re-place-ment.

Optionalproperty,defaults to"True".

Iops Note

Notim-ple-ment-ed.

SnapshotId The ID ofthe snap-shot tocreate avolumefrom.

Updatescause re-place-ment.

Optionalproperty.

VolumeSize The sizeof the vol-ume, inGB. Mustbe equalor greaterthan thesize of thesnapshot.It is safeto leave

Page 172: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

166

this blankand havethe Com-pute ser-vice inferthe size.

Updatescause re-place-ment.

Optionalproperty.

VolumeType Note

Notim-ple-ment-ed.

NoDevice Note

Not implemented.

VirtualName Note

Not implemented.

DisableApiTermination Note

Not implemented.

ImageId Glance image ID or name.

Updates cause replacement.

Required property.

Value must be of type glance.image

InstanceType Nova instance type (flavor).

Can be updated without replacement.

Required property.

KernelId Note

Not implemented.

Page 173: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

167

KeyName Optional Nova keypair name.

Updates cause replacement.

Optional property.

Value must be of type nova.keypair

Monitoring Note

Not implemented.

NetworkInterfaces Network interfaces to associate with instance.

Can be updated without replacement.

Optional property.

NovaSchedulerHints Scheduler hints to pass to Nova (Heat extension).

Updates cause replacement.

Optional property.

List contents:

* Updates cause replacement.

Optional property.

Map properties:

Key Updates cause replacement.

Required property.

Value Updates cause replacement.

Required property.

PlacementGroupName Note

Not implemented.

PrivateIpAddress Note

Not implemented.

RamDiskId Note

Not implemented.

SecurityGroupIds Security group IDs to assign.

Updates cause replacement.

Page 174: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

168

Optional property.

SecurityGroups Security group names to assign.

Updates cause replacement.

Optional property.

SourceDestCheck Note

Not implemented.

SubnetId Subnet ID to launch instance in.

Can be updated without replacement.

Optional property.

Tags Tags to attach to instance.

Can be updated without replacement.

Optional property.

List contents:

* Updates cause replacement.

Optional property.

Map properties:

Key Updates cause replacement.

Required property.

Value Updates cause replacement.

Required property.

Tenancy Note

Not implemented.

UserData User data to pass to instance.

Updates cause replacement.

Optional property.

Volumes Volumes to attach to instance.

Updates cause replacement.

Optional property, defaults to "[]".

Page 175: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

169

List contents:

* Updates cause replacement.

Optional property.

Map properties:

Device The device where the volume is exposed onthe instance. This assignment may not behonored and it is advised that the path /dev/disk/by-id/virtio-<VolumeId> be usedinstead.

Updates cause replacement.

Required property.

VolumeId The ID of the volume to be attached.

Updates cause replacement.

Required property.

AttributesAvailabilityZone The Availability Zone where the specified instance is launched.

PrivateDnsName Private DNS name of the specified instance.

PrivateIp Private IP address of the specified instance.

PublicDnsName Public DNS name of the specified instance.

PublicIp Public IP address of the specified instance.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: AWS::EC2::Instance properties: AvailabilityZone: String BlockDeviceMappings: [{"DeviceName": String, "Ebs": {"DeleteOnTermination": Boolean, "VolumeSize": String, "SnapshotId": String}}, {"DeviceName": String, "Ebs": {"DeleteOnTermination": Boolean, "VolumeSize": String, "SnapshotId": String}}, ...] ImageId: String InstanceType: String KeyName: String NetworkInterfaces: [Value, Value, ...] NovaSchedulerHints: [{"Value": String, "Key": String}, {"Value": String, "Key": String}, ...]

Page 176: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

170

SecurityGroupIds: [Value, Value, ...] SecurityGroups: [Value, Value, ...] SubnetId: String Tags: [{"Value": String, "Key": String}, {"Value": String, "Key": String}, ...] UserData: String Volumes: [{"Device": String, "VolumeId": String}, {"Device": String, "VolumeId": String}, ...]

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: AWS::EC2::Instance Properties: AvailabilityZone: String BlockDeviceMappings: [{"DeviceName": String, "Ebs": {"DeleteOnTermination": Boolean, "VolumeSize": String, "SnapshotId": String}}, {"DeviceName": String, "Ebs": {"DeleteOnTermination": Boolean, "VolumeSize": String, "SnapshotId": String}}, ...] ImageId: String InstanceType: String KeyName: String NetworkInterfaces: [Value, Value, ...] NovaSchedulerHints: [{"Value": String, "Key": String}, {"Value": String, "Key": String}, ...] SecurityGroupIds: [Value, Value, ...] SecurityGroups: [Value, Value, ...] SubnetId: String Tags: [{"Value": String, "Key": String}, {"Value": String, "Key": String}, ...] UserData: String Volumes: [{"Device": String, "VolumeId": String}, {"Device": String, "VolumeId": String}, ...]

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "AWS::EC2::Instance", "Properties": { "AvailabilityZone": String, "BlockDeviceMappings": [{"DeviceName": String, "Ebs": {"DeleteOnTermination": Boolean, "VolumeSize": String, "SnapshotId": String}}, {"DeviceName": String, "Ebs": {"DeleteOnTermination": Boolean, "VolumeSize": String, "SnapshotId": String}}, ...], "ImageId": String, "InstanceType": String, "KeyName": String, "NetworkInterfaces": [Value, Value, ...], "NovaSchedulerHints": [{"Value": String, "Key": String}, {"Value": String, "Key": String}, ...], "SecurityGroupIds": [Value, Value, ...],

Page 177: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

171

"SecurityGroups": [Value, Value, ...], "SubnetId": String, "Tags": [{"Value": String, "Key": String}, {"Value": String, "Key": String}, ...], "UserData": String, "Volumes": [{"Device": String, "VolumeId": String}, {"Device": String, "VolumeId": String}, ...] } } }}

AWS::EC2::InternetGateway

Properties

Tags Updates cause replacement.

Optional property.

List contents:

* Note

Not implemented.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: AWS::EC2::InternetGateway properties: Tags: [{"Value": String, "Key": String}, {"Value": String, "Key": String}, ...]

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: AWS::EC2::InternetGateway Properties: Tags: [{"Value": String, "Key": String}, {"Value": String, "Key": String}, ...]

Page 178: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

172

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "AWS::EC2::InternetGateway", "Properties": { "Tags": [{"Value": String, "Key": String}, {"Value": String, "Key": String}, ...] } } }}

AWS::EC2::NetworkInterface

PropertiesDescription Description for this interface.

Updates cause replacement.

Optional property.

GroupSet List of security group IDs associated with this interface.

Can be updated without replacement.

Optional property.

PrivateIpAddress Updates cause replacement.

Optional property.

SourceDestCheck Note

Not implemented.

SubnetId Subnet ID to associate with this interface.

Updates cause replacement.

Required property.

Tags Updates cause replacement.

Optional property.

List contents:

* Note

Not implemented.

Page 179: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

173

Attributes

PrivateIpAddress Private IP address of the network interface.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: AWS::EC2::NetworkInterface properties: Description: String GroupSet: [Value, Value, ...] PrivateIpAddress: String SubnetId: String Tags: [{"Value": String, "Key": String}, {"Value": String, "Key": String}, ...]

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: AWS::EC2::NetworkInterface Properties: Description: String GroupSet: [Value, Value, ...] PrivateIpAddress: String SubnetId: String Tags: [{"Value": String, "Key": String}, {"Value": String, "Key": String}, ...]

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "AWS::EC2::NetworkInterface", "Properties": { "Description": String, "GroupSet": [Value, Value, ...], "PrivateIpAddress": String, "SubnetId": String, "Tags": [{"Value": String, "Key": String}, {"Value": String, "Key": String}, ...] } } }}

Page 180: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

174

AWS::EC2::RouteTableAvailable since 2014.1 (Icehouse).

Properties

Tags Updates cause replacement.

Optional property.

List contents:

* Note

Not implemented.

VpcId VPC ID for where the route table is created.

Updates cause replacement.

Required property.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: AWS::EC2::RouteTable properties: Tags: [{"Value": String, "Key": String}, {"Value": String, "Key": String}, ...] VpcId: String

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: AWS::EC2::RouteTable Properties: Tags: [{"Value": String, "Key": String}, {"Value": String, "Key": String}, ...] VpcId: String

Page 181: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

175

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "AWS::EC2::RouteTable", "Properties": { "Tags": [{"Value": String, "Key": String}, {"Value": String, "Key": String}, ...], "VpcId": String } } }}

AWS::EC2::SecurityGroup

PropertiesGroupDescription Description of the security group.

Updates cause replacement.

Required property.

SecurityGroupEgress Updates cause replacement.

Optional property.

List contents:

* List of security group egress rules.

Updates cause replacement.

Optional property.

Map properties:

CidrIp Updates cause replace-ment.

Optional property.

FromPort Updates cause replace-ment.

Optional property.

IpProtocol Updates cause replace-ment.

Optional property.

Page 182: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

176

SourceSecurityGroupId Updates cause replace-ment.

Optional property.

SourceSecurityGroupName Updates cause replace-ment.

Optional property.

SourceSecurityGroupOwnerId Note

Not imple-mented.

ToPort Updates cause replace-ment.

Optional property.

SecurityGroupIngress Updates cause replacement.

Optional property.

List contents:

* List of security group ingress rules.

Updates cause replacement.

Optional property.

Map properties:

CidrIp Updates cause replace-ment.

Optional property.

FromPort Updates cause replace-ment.

Optional property.

IpProtocol Updates cause replace-ment.

Optional property.

SourceSecurityGroupId Updates cause replace-ment.

Optional property.

Page 183: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

177

SourceSecurityGroupName Updates cause replace-ment.

Optional property.

SourceSecurityGroupOwnerId Note

Not imple-mented.

ToPort Updates cause replace-ment.

Optional property.

VpcId Physical ID of the VPC. Not implemented.

Updates cause replacement.

Optional property.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: AWS::EC2::SecurityGroup properties: GroupDescription: String SecurityGroupEgress: [{"CidrIp": String, "SourceSecurityGroupId": String, "FromPort": String, "SourceSecurityGroupName": String, "ToPort": String, "IpProtocol": String}, {"CidrIp": String, "SourceSecurityGroupId": String, "FromPort": String, "SourceSecurityGroupName": String, "ToPort": String, "IpProtocol": String}, ...] SecurityGroupIngress: [{"CidrIp": String, "SourceSecurityGroupId": String, "FromPort": String, "SourceSecurityGroupName": String, "ToPort": String, "IpProtocol": String}, {"CidrIp": String, "SourceSecurityGroupId": String, "FromPort": String, "SourceSecurityGroupName": String, "ToPort": String, "IpProtocol": String}, ...] VpcId: String

Page 184: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

178

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: AWS::EC2::SecurityGroup Properties: GroupDescription: String SecurityGroupEgress: [{"CidrIp": String, "SourceSecurityGroupId": String, "FromPort": String, "SourceSecurityGroupName": String, "ToPort": String, "IpProtocol": String}, {"CidrIp": String, "SourceSecurityGroupId": String, "FromPort": String, "SourceSecurityGroupName": String, "ToPort": String, "IpProtocol": String}, ...] SecurityGroupIngress: [{"CidrIp": String, "SourceSecurityGroupId": String, "FromPort": String, "SourceSecurityGroupName": String, "ToPort": String, "IpProtocol": String}, {"CidrIp": String, "SourceSecurityGroupId": String, "FromPort": String, "SourceSecurityGroupName": String, "ToPort": String, "IpProtocol": String}, ...] VpcId: String

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "AWS::EC2::SecurityGroup", "Properties": { "GroupDescription": String, "SecurityGroupEgress": [{"CidrIp": String, "SourceSecurityGroupId": String, "FromPort": String, "SourceSecurityGroupName": String, "ToPort": String, "IpProtocol": String}, {"CidrIp": String, "SourceSecurityGroupId": String, "FromPort": String, "SourceSecurityGroupName": String, "ToPort": String, "IpProtocol": String}, ...], "SecurityGroupIngress": [{"CidrIp": String, "SourceSecurityGroupId": String, "FromPort": String, "SourceSecurityGroupName": String, "ToPort": String, "IpProtocol": String}, {"CidrIp": String, "SourceSecurityGroupId": String, "FromPort": String, "SourceSecurityGroupName": String, "ToPort": String, "IpProtocol": String}, ...], "VpcId": String } } }}

AWS::EC2::Subnet

PropertiesAvailabilityZone Availability zone in which you want the subnet.

Updates cause replacement.

Optional property.

Page 185: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

179

CidrBlock CIDR block to apply to subnet.

Updates cause replacement.

Required property.

Tags Updates cause replacement.

Optional property.

List contents:

* Note

Not implemented.

VpcId Ref structure that contains the ID of the VPC on which you want tocreate the subnet.

Updates cause replacement.

Required property.

AttributesAvailabilityZone Availability Zone of the subnet.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: AWS::EC2::Subnet properties: AvailabilityZone: String CidrBlock: String Tags: [{"Value": String, "Key": String}, {"Value": String, "Key": String}, ...] VpcId: String

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: AWS::EC2::Subnet Properties: AvailabilityZone: String CidrBlock: String Tags: [{"Value": String, "Key": String}, {"Value": String, "Key": String}, ...] VpcId: String

Page 186: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

180

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "AWS::EC2::Subnet", "Properties": { "AvailabilityZone": String, "CidrBlock": String, "Tags": [{"Value": String, "Key": String}, {"Value": String, "Key": String}, ...], "VpcId": String } } }}

AWS::EC2::SubnetRouteTableAssociation

Properties

RouteTableId Route table ID.

Updates cause replacement.

Required property.

SubnetId Subnet ID.

Updates cause replacement.

Required property.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: AWS::EC2::SubnetRouteTableAssociation properties: RouteTableId: String SubnetId: String

Page 187: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

181

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: AWS::EC2::SubnetRouteTableAssociation Properties: RouteTableId: String SubnetId: String

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "AWS::EC2::SubnetRouteTableAssociation", "Properties": { "RouteTableId": String, "SubnetId": String } } }}

AWS::EC2::VPC

Properties

CidrBlock CIDR block to apply to the VPC.

Updates cause replacement.

Optional property.

InstanceTenancy Note

Not implemented.

Tags Updates cause replacement.

Optional property.

List contents:

* Note

Not implemented.

Page 188: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

182

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: AWS::EC2::VPC properties: CidrBlock: String Tags: [{"Value": String, "Key": String}, {"Value": String, "Key": String}, ...]

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: AWS::EC2::VPC Properties: CidrBlock: String Tags: [{"Value": String, "Key": String}, {"Value": String, "Key": String}, ...]

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "AWS::EC2::VPC", "Properties": { "CidrBlock": String, "Tags": [{"Value": String, "Key": String}, {"Value": String, "Key": String}, ...] } } }}

AWS::EC2::VPCGatewayAttachment

PropertiesInternetGatewayId ID of the InternetGateway.

Updates cause replacement.

Optional property.

VpcId VPC ID for this gateway association.

Updates cause replacement.

Page 189: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

183

Required property.

VpnGatewayId Note

Not implemented.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: AWS::EC2::VPCGatewayAttachment properties: InternetGatewayId: String VpcId: String

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: AWS::EC2::VPCGatewayAttachment Properties: InternetGatewayId: String VpcId: String

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "AWS::EC2::VPCGatewayAttachment", "Properties": { "InternetGatewayId": String, "VpcId": String } } }}

AWS::EC2::Volume

Properties

AvailabilityZone The availability zone in which the volume will be created.

Updates are not supported. Resource update will fail on any at-tempt to update this property.

Page 190: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

184

Required property.

Size The size of the volume in GB.

Updates are not supported. Resource update will fail on any at-tempt to update this property.

Optional property.

The value must be at least 1.

SnapshotId If specified, the backup used as the source to create the volume.

Updates are not supported. Resource update will fail on any at-tempt to update this property.

Optional property.

Tags The list of tags to associate with the volume.

Updates are not supported. Resource update will fail on any at-tempt to update this property.

Optional property.

List contents:

* Updates cause replacement.

Optional property.

Map properties:

Key Updates cause replacement.

Required property.

Value Updates cause replacement.

Required property.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: AWS::EC2::Volume properties: AvailabilityZone: String Size: Integer SnapshotId: String Tags: [{"Value": String, "Key": String}, {"Value": String, "Key": String}, ...]

Page 191: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

185

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: AWS::EC2::Volume Properties: AvailabilityZone: String Size: Integer SnapshotId: String Tags: [{"Value": String, "Key": String}, {"Value": String, "Key": String}, ...]

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "AWS::EC2::Volume", "Properties": { "AvailabilityZone": String, "Size": Integer, "SnapshotId": String, "Tags": [{"Value": String, "Key": String}, {"Value": String, "Key": String}, ...] } } }}

AWS::EC2::VolumeAttachment

Properties

Device The device where the volume is exposed on the instance. This assignmentmay not be honored and it is advised that the path /dev/disk/by-id/vir-tio-<VolumeId> be used instead.

Updates are not supported. Resource update will fail on any attempt to up-date this property.

Required property.

Value must match pattern: /dev/vd[b-z]

InstanceId The ID of the instance to which the volume attaches.

Updates are not supported. Resource update will fail on any attempt to up-date this property.

Required property.

Page 192: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

186

VolumeId The ID of the volume to be attached.

Updates are not supported. Resource update will fail on any attempt to up-date this property.

Required property.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: AWS::EC2::VolumeAttachment properties: Device: String InstanceId: String VolumeId: String

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: AWS::EC2::VolumeAttachment Properties: Device: String InstanceId: String VolumeId: String

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "AWS::EC2::VolumeAttachment", "Properties": { "Device": String, "InstanceId": String, "VolumeId": String } } }}

Page 193: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

187

AWS::ElasticLoadBalancing::LoadBalancer

Properties

AppCookieStickinessPolicy Note

Not implemented.

AvailabilityZones The Availability Zones in which to create the load bal-ancer.

Updates cause replacement.

Required property.

HealthCheck An application health check for the instances.

Updates cause replacement.

Optional property.

Map properties:

HealthyThreshold The number of consecutivehealth probe successes re-quired before moving the in-stance to the healthy state.

Updates cause replacement.

Required property.

Interval The approximate interval,in seconds, between healthchecks of an individual in-stance.

Updates cause replacement.

Required property.

Target The port being checked.

Updates cause replacement.

Required property.

Timeout Health probe timeout, in sec-onds.

Updates cause replacement.

Required property.

Page 194: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

188

UnhealthyThreshold The number of consecu-tive health probe failures re-quired before moving the in-stance to the unhealthy state

Updates cause replacement.

Required property.

Instances The list of instance IDs load balanced.

Can be updated without replacement.

Optional property.

LBCookieStickinessPolicy Note

Not implemented.

Listeners One or more listeners for this load balancer.

Updates cause replacement.

Required property.

List contents:

* Updates cause replacement.

Optional property.

Map properties:

InstancePort TCP port on which the in-stance server is listening.

Updates cause replacement.

Required property.

LoadBalancerPort The external load balancerport number.

Updates cause replacement.

Required property.

PolicyNames Note

Not implement-ed.

Protocol The load balancer transportprotocol to use.

Page 195: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

189

Updates cause replacement.

Required property.

Allowed values: TCP, HTTP

SSLCertificateId Note

Not implement-ed.

SecurityGroups Note

Not implemented.

Subnets Note

Not implemented.

Attributes

CanonicalHostedZoneName The name of the hosted zone that is associated with theLoadBalancer.

CanonicalHostedZoneNameID The ID of the hosted zone name that is associated withthe LoadBalancer.

DNSName The DNS name for the LoadBalancer.

SourceSecurityGroup.GroupName The security group that you can use as part of your in-bound rules for your LoadBalancer's back-end instances.

SourceSecurityGroup.OwnerAlias Owner of the source security group.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: AWS::ElasticLoadBalancing::LoadBalancer properties: AvailabilityZones: [Value, Value, ...] HealthCheck: {"HealthyThreshold": Number, "Interval": Number, "Target": String, "Timeout": Number, "UnhealthyThreshold": Number} Instances: [Value, Value, ...] Listeners: [{"InstancePort": Number, "LoadBalancerPort": Number, "Protocol": String}, {"InstancePort": Number, "LoadBalancerPort": Number, "Protocol": String}, ...]

Page 196: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

190

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: AWS::ElasticLoadBalancing::LoadBalancer Properties: AvailabilityZones: [Value, Value, ...] HealthCheck: {"HealthyThreshold": Number, "Interval": Number, "Target": String, "Timeout": Number, "UnhealthyThreshold": Number} Instances: [Value, Value, ...] Listeners: [{"InstancePort": Number, "LoadBalancerPort": Number, "Protocol": String}, {"InstancePort": Number, "LoadBalancerPort": Number, "Protocol": String}, ...]

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "AWS::ElasticLoadBalancing::LoadBalancer", "Properties": { "AvailabilityZones": [Value, Value, ...], "HealthCheck": {"HealthyThreshold": Number, "Interval": Number, "Target": String, "Timeout": Number, "UnhealthyThreshold": Number}, "Instances": [Value, Value, ...], "Listeners": [{"InstancePort": Number, "LoadBalancerPort": Number, "Protocol": String}, {"InstancePort": Number, "LoadBalancerPort": Number, "Protocol": String}, ...] } } }}

AWS::IAM::AccessKey

Properties

Serial Note

Not implemented.

Status Note

Not implemented.

UserName The name of the user that the new key will belong to.

Updates cause replacement.

Required property.

Page 197: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

191

AttributesSecretAccessKey Keypair secret key.

UserName Username associated with the AccessKey.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: AWS::IAM::AccessKey properties: UserName: String

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: AWS::IAM::AccessKey Properties: UserName: String

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "AWS::IAM::AccessKey", "Properties": { "UserName": String } } }}

AWS::IAM::User

PropertiesGroups Not Implemented.

Updates cause replacement.

Optional property.

LoginProfile A login profile for the user.

Updates cause replacement.

Page 198: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

192

Optional property.

Map properties:

Password Updates cause replacement.

Optional property.

Path Not Implemented.

Updates cause replacement.

Optional property.

Policies Access policies to apply to the user.

Updates cause replacement.

Optional property.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: AWS::IAM::User properties: Groups: [Value, Value, ...] LoginProfile: {"Password": String} Path: String Policies: [Value, Value, ...]

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: AWS::IAM::User Properties: Groups: [Value, Value, ...] LoginProfile: {"Password": String} Path: String Policies: [Value, Value, ...]

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "AWS::IAM::User", "Properties": {

Page 199: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

193

"Groups": [Value, Value, ...], "LoginProfile": {"Password": String}, "Path": String, "Policies": [Value, Value, ...] } } }}

AWS::RDS::DBInstance

PropertiesAllocatedStorage Can be updated without replacement.

Required property.

DBInstanceClass Can be updated without replacement.

Required property.

DBName Can be updated without replacement.

Required property.

DBSecurityGroups Can be updated without replacement.

Optional property.

Engine Can be updated without replacement.

Required property.

Allowed values: MySQL

KeyName Can be updated without replacement.

Optional property.

MasterUserPassword Can be updated without replacement.

Required property.

MasterUsername Can be updated without replacement.

Required property.

Port Can be updated without replacement.

Optional property.

AttributesEndpoint.Address ???

Endpoint.Port ???

Page 200: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

194

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: AWS::RDS::DBInstance properties: AllocatedStorage: String DBInstanceClass: String DBName: String DBSecurityGroups: [Value, Value, ...] Engine: String KeyName: String MasterUserPassword: String MasterUsername: String Port: String

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: AWS::RDS::DBInstance Properties: AllocatedStorage: String DBInstanceClass: String DBName: String DBSecurityGroups: [Value, Value, ...] Engine: String KeyName: String MasterUserPassword: String MasterUsername: String Port: String

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "AWS::RDS::DBInstance", "Properties": { "AllocatedStorage": String, "DBInstanceClass": String, "DBName": String, "DBSecurityGroups": [Value, Value, ...], "Engine": String, "KeyName": String, "MasterUserPassword": String, "MasterUsername": String, "Port": String } } }

Page 201: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

195

}

AWS::S3::Bucket

Properties

AccessControl A predefined access control list (ACL) that grants permissionson the bucket.

Updates cause replacement.

Optional property.

Allowed values: Private, PublicRead, PublicReadWrite, Au-thenticatedRead, BucketOwnerRead, BucketOwnerFullCon-trol

Tags Tags to attach to the bucket.

Updates cause replacement.

Optional property.

List contents:

* Updates cause replacement.

Optional property.

Map properties:

Key The tag key name.

Updates cause replacement.

Required property.

Value The tag value.

Updates cause replacement.

Required property.

WebsiteConfiguration Information used to configure the bucket as a static website.

Updates cause replacement.

Optional property.

Map properties:

ErrorDocument The name of the error document.

Updates cause replacement.

Page 202: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

196

Optional property.

IndexDocument The name of the index document.

Updates cause replacement.

Optional property.

Attributes

Domain-Name

The DNS name of the specified bucket.

WebsiteURL The website endpoint for the specified bucket.

HOT Syntaxheat_template_version: 2013-05-23...resources: ... the_resource: type: AWS::S3::Bucket properties: AccessControl: String Tags: [{"Value": String, "Key": String}, {"Value": String, "Key": String}, ...] WebsiteConfiguration: {"IndexDocument": String, "ErrorDocument": String}

YAML SyntaxHeatTemplateFormatVersion: '2012-12-12'...Resources: ... TheResource: Type: AWS::S3::Bucket Properties: AccessControl: String Tags: [{"Value": String, "Key": String}, {"Value": String, "Key": String}, ...] WebsiteConfiguration: {"IndexDocument": String, "ErrorDocument": String}

Page 203: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

197

JSON Syntax{ "AWSTemplateFormatVersion" : "2010-09-09", ... "Resources" : { "TheResource": { "Type": "AWS::S3::Bucket", "Properties": { "AccessControl": String, "Tags": [{"Value": String, "Key": String}, {"Value": String, "Key": String}, ...], "WebsiteConfiguration": {"IndexDocument": String, "ErrorDocument": String} } } }}

Page 204: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

198

3. CloudFormation Compatible FunctionsRef .............................................................................................................................. 198Fn::Base64 ................................................................................................................... 198Fn::FindInMap ............................................................................................................. 199Fn::GetAtt ................................................................................................................... 199Fn::GetAZs ................................................................................................................... 199Fn::Join ........................................................................................................................ 200Fn::Select ..................................................................................................................... 200Fn::Split ....................................................................................................................... 200Fn::Replace .................................................................................................................. 201Fn::ResourceFacade ..................................................................................................... 201Fn::MemberListToMap ................................................................................................. 202

There are a number of functions that you can use to help you write CloudFormation com-patible templates. While most CloudFormation functions are supported in HOT version'2013-05-23', Fn::Select is the only CloudFormation function supported in HOT templatessince version '2014-10-16' which is introduced in Juno.

All of these functions (except Ref) start with Fn::.

RefReturns the value of the named parameter or resource.

Parameters

name The name of the resource or parameter.

Usage{Ref: my_server}

Returns the nova instance ID. For example, d8093de0-850f-4513-b202-7979de6c0d55.

Fn::Base64This returns the Base64 representation of the input string.

Parameters

value The string to convert.

Usage{Base64: "convert this string please."}

Returns the Base64 of the input string.

Page 205: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

199

Fn::FindInMapReturns the value corresponding to keys into a two-level map declared in the Mappings sec-tion.

Parametersmap_name The logical name of a mapping declared in the Mappings section

that contains the keys and values.

top_level_key The top-level key name. It's value is a list of key-value pairs.

second_level_key The second-level key name, which is set to one of the keys from thelist assigned to top_level_key.

UsageMapping: MyContacts: jone: {phone: 337, email: [email protected]} jim: {phone: 908, email: [email protected]}

{"Fn::FindInMap": ["MyContacts", "jim", "phone" ] }

Returns 908.

Fn::GetAttReturns an attribute of a resource within the template.

Parametersresource The name of the resource.

attribute The name of the attribute.

Usage{Fn::GetAtt: [my_server, PublicIp]}

Returns an IP address such as 10.0.0.2.

Fn::GetAZsReturns the Availability Zones within the given region.

Note: AZ's and regions are not fully implemented in Heat.

Parametersregion The name of the region.

Page 206: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

200

Usage{Fn::GetAZs: ""}

Returns the list provided by nova availability-zone-list.

Fn::JoinLike python join, it joins a list of strings with the given delimiter.

Parameters

delimiter The string to join the list with.

list The list to join.

Usage{Fn::Join: [",", ["beer", "wine", "more beer"]]}

Returns beer, wine, more beer.

Fn::SelectSelect an item from a list.

Heat extension: Select an item from a map

Parameters

selector The number of item in the list or the name of the item in the map.

collection The collection to select the item from.

Usage

For a list lookup:

{ "Fn::Select" : [ "2", [ "apples", "grapes", "mangoes" ] ] }

Returns mangoes.

For a map lookup:

{ "Fn::Select" : [ "red", {"red": "a", "flu": "b"} ] }

Returns a.

Fn::SplitThis is the reverse of Join. Convert a string into a list based on the delimiter.

Page 207: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

201

Parametersdelimiter Matching string to split on.

string The string to split.

Usage{ "Fn::Split" : [ ",", "str1,str2,str3,str4"]}

Returns {["str1", "str2", "str3", "str4"]}.

Fn::ReplaceFind and replace one string with another.

Parameterssubstitutions A map of substitutions.

string: String The string to do the substitutions in.

Usage{"Fn::Replace": [ {'$var1': 'foo', '%var2%': 'bar'}, '$var1 is %var2%']}

Returns "foo is bar".

Fn::ResourceFacadeWhen writing a Template Re-source:

• user writes a template that will fill in for a resource(the resource is the facade).

• when they are writing their template they need to ac-cess the metadata from the facade.

Parametersattribute_name One of Metadata, DeletionPolicy or UpdatePolicy.

Usage{'Fn::ResourceFacade': 'Metadata'}{'Fn::ResourceFacade': 'DeletionPolicy'}{'Fn::ResourceFacade': 'UpdatePolicy'}

ExampleHere is a top level template top.yaml

Page 208: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

202

resources: my_server: type: OS::Nova::Server metadata: key: value some: more stuff

Here is a resource template my_actual_server.yaml

resources: _actual_server_: type: OS::Nova::Server metadata: {'Fn::ResourceFacade': Metadata}

The environment file env.yaml

resource_registry: resources: my_server: "OS::Nova::Server": my_actual_server.yaml

To use it

$ heat stack-create -f top.yaml -e env.yaml

What happened is the metadata in top.yaml (key: value, some: more stuff) gets passedinto the resource template via the Fn::ResourceFacade function.

Fn::MemberListToMapConvert an AWS style member list into a map.

Parameters

key name: string The name of the key (normally "Name" or "Key").

value name: string The name of the value (normally "Value").

list: A list of strings The string to convert.

Usage{'Fn::MemberListToMap': ['Name', 'Value', ['.member.0.Name=key', '.member.0.Value=door', '.member.1.Name=colour', '.member.1.Value=green']]}

Returns {'key': 'door', 'colour': 'green'}.

Page 209: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

203

Appendix A. Community support

Table of ContentsDocumentation ........................................................................................................... 203ask.openstack.org ........................................................................................................ 204OpenStack mailing lists ................................................................................................ 204The OpenStack wiki ..................................................................................................... 205The Launchpad Bugs area ........................................................................................... 205The OpenStack IRC channel ......................................................................................... 206Documentation feedback ............................................................................................ 206OpenStack distribution packages ................................................................................. 206

The following resources are available to help you run and use OpenStack. The OpenStackcommunity constantly improves and adds to the main features of OpenStack, but if youhave any questions, do not hesitate to ask. Use the following resources to get OpenStacksupport, and troubleshoot your installations.

DocumentationFor the available OpenStack documentation, see docs.openstack.org.

To provide feedback on documentation, join and use the<[email protected]> mailing list at OpenStack DocumentationMailing List, or report a bug.

The following books explain how to install an OpenStack cloud and its associated compo-nents:

• Installation Guide for Debian 7

• Installation Guide for openSUSE 13.1 and SUSE Linux Enterprise Server 11 SP3

• Installation Guide for Red Hat Enterprise Linux 7, CentOS 7, and Fedora 20

• Installation Guide for Ubuntu 14.04

The following books explain how to configure and run an OpenStack cloud:

• Architecture Design Guide

• Cloud Administrator Guide

• Configuration Reference

• Operations Guide

• High Availability Guide

• Security Guide

Page 210: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

204

• Virtual Machine Image Guide

The following books explain how to use the OpenStack dashboard and command-lineclients:

• API Quick Start

• End User Guide

• Admin User Guide

• Command-Line Interface Reference

The following documentation provides reference and guidance information for the Open-Stack APIs:

• OpenStack API Complete Reference (HTML)

• API Complete Reference (PDF)

• OpenStack Block Storage Service API v2 Reference

• OpenStack Compute API v2 and Extensions Reference

• OpenStack Identity Service API v2.0 Reference

• OpenStack Image Service API v2 Reference

• OpenStack Networking API v2.0 Reference

• OpenStack Object Storage API v1 Reference

The Training Guides offer software training for cloud administration and management.

ask.openstack.orgDuring the set up or testing of OpenStack, you might have questions about how a spe-cific task is completed or be in a situation where a feature does not work correctly. Usethe ask.openstack.org site to ask questions and get answers. When you visit the http://ask.openstack.org site, scan the recently asked questions to see whether your question hasalready been answered. If not, ask a new question. Be sure to give a clear, concise summaryin the title and provide as much detail as possible in the description. Paste in your commandoutput or stack traces, links to screen shots, and any other information which might be use-ful.

OpenStack mailing listsA great way to get answers and insights is to post your question or problematic scenarioto the OpenStack mailing list. You can learn from and help others who might have simi-lar issues. To subscribe or view the archives, go to http://lists.openstack.org/cgi-bin/mail-man/listinfo/openstack. You might be interested in the other mailing lists for specificprojects or development, which you can find on the wiki. A description of all mailing lists isavailable at http://wiki.openstack.org/MailingLists.

Page 211: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

205

The OpenStack wikiThe OpenStack wiki contains a broad range of topics but some of the information can bedifficult to find or is a few pages deep. Fortunately, the wiki search feature enables you tosearch by title or content. If you search for specific information, such as about networkingor nova, you can find a large amount of relevant material. More is being added all the time,so be sure to check back often. You can find the search box in the upper-right corner of anyOpenStack wiki page.

The Launchpad Bugs areaThe OpenStack community values your set up and testing efforts and wants your feedback.To log a bug, you must sign up for a Launchpad account at https://launchpad.net/+login.You can view existing bugs and report bugs in the Launchpad Bugs area. Use the searchfeature to determine whether the bug has already been reported or already been fixed. Ifit still seems like your bug is unreported, fill out a bug report.

Some tips:

• Give a clear, concise summary.

• Provide as much detail as possible in the description. Paste in your command output orstack traces, links to screen shots, and any other information which might be useful.

• Be sure to include the software and package versions that you are using, especially ifyou are using a development branch, such as, "Juno release" vs git commitbc79c3ecc55929bac585d04a03475b72e06a3208.

• Any deployment-specific information is helpful, such as whether you are using Ubuntu14.04 or are performing a multi-node installation.

The following Launchpad Bugs areas are available:

• Bugs: OpenStack Block Storage (cinder)

• Bugs: OpenStack Compute (nova)

• Bugs: OpenStack Dashboard (horizon)

• Bugs: OpenStack Identity (keystone)

• Bugs: OpenStack Image Service (glance)

• Bugs: OpenStack Networking (neutron)

• Bugs: OpenStack Object Storage (swift)

• Bugs: Bare Metal (ironic)

• Bugs: Data Processing Service (sahara)

• Bugs: Database Service (trove)

Page 212: Heat Orchestration Template reference · Heat Orchestration Template (HOT) is a new template format meant to replace the Heat CloudFormation-compatible format (CFN) as the native

Heat Orchestration Template ref-erence

January 13, 2015 current

206

• Bugs: Orchestration (heat)

• Bugs: Telemetry (ceilometer)

• Bugs: Queue Service (marconi)

• Bugs: OpenStack API Documentation (developer.openstack.org)

• Bugs: OpenStack Documentation (docs.openstack.org)

The OpenStack IRC channelThe OpenStack community lives in the #openstack IRC channel on the Freenode network.You can hang out, ask questions, or get immediate feedback for urgent and pressing issues.To install an IRC client or use a browser-based client, go to http://webchat.freenode.net/.You can also use Colloquy (Mac OS X, http://colloquy.info/), mIRC (Windows, http://www.mirc.com/), or XChat (Linux). When you are in the IRC channel and want to sharecode or command output, the generally accepted method is to use a Paste Bin. The Open-Stack project has one at http://paste.openstack.org. Just paste your longer amounts of textor logs in the web form and you get a URL that you can paste into the channel. The Open-Stack IRC channel is #openstack on irc.freenode.net. You can find a list of all Open-Stack IRC channels at https://wiki.openstack.org/wiki/IRC.

Documentation feedbackTo provide feedback on documentation, join and use the<[email protected]> mailing list at OpenStack DocumentationMailing List, or report a bug.

OpenStack distribution packagesThe following Linux distributions provide community-supported packages for OpenStack:

• Debian: http://wiki.debian.org/OpenStack

• CentOS, Fedora, and Red Hat Enterprise Linux: http://openstack.redhat.com/

• openSUSE and SUSE Linux Enterprise Server: http://en.opensuse.org/Portal:OpenStack

• Ubuntu: https://wiki.ubuntu.com/ServerTeam/CloudArchive


Recommended