1 HeatTemplateFormatVersion: '2012-12-12'
2 Description: 'Heat Engine and API'
5 Description: Name of an existing EC2 KeyPair to enable SSH access to the instances
9 Description: Use this flavor
13 Description: Heat database username.
21 Description: Host for RabbitMQ
24 Description: Password for RabbitMQ
27 Description: How many API nodes to run
35 Default: https://raw.github.com/openstack-ops/templates/master/
38 Type: OS::Heat::AccessPolicy
40 AllowedResources: [ HeatEngine ]
44 Policies: [ { Ref: EngineAccessPolicy } ]
46 Type: AWS::IAM::AccessKey
51 Type: OS::Heat::AccessPolicy
53 AllowedResources: [ HeatAPI, HeatAPILaunch ]
57 Policies: [ { Ref: ApiAccessPolicy } ]
59 Type: AWS::IAM::AccessKey
64 Type: AWS::AutoScaling::LaunchConfiguration
66 OpenStack::ImageBuilder::Elements: [ heat-api ]
68 rpc_backend: heat.openstack.common.rpc.impl_kombu
70 host: {Ref: RabbitMQHost}
71 password: {Ref: RabbitMQPassword}
75 Fn::GetAtt: [ ApiKey, SecretAccessKey ]
77 name: {Ref: 'AWS::StackName'}
78 region: {Ref: 'AWS::Region'}
80 - resource: HeatAPILaunch
84 InstanceType: {Ref: InstanceType}
85 KeyName: {Ref: KeyName}
87 Type: OS::Heat::InstanceGroup
89 LaunchConfiguration: {Ref: HeatApiLaunch}
90 Size: {Ref: ApiGroupSize}
91 AvailabilityZones: {Ref: AvailabilityZones}
93 Type: AWS::EC2::Instance
96 {Ref: HeatEngineImage}
98 OpenStack::Role: stateful
99 OpenStack::ImageBuilder::Elements: [ heat-engine ]
101 rpc_backend: heat.openstack.common.rpc.impl_kombu
103 host: {Ref: RabbitMQHost}
104 password: {Ref: RabbitMQPassword}
108 Fn::GetAtt: [ EngineKey, SecretAccessKey ]
110 name: {Ref: 'AWS::StackName'}
111 region: {Ref: 'AWS::Region'}
113 - resource: HeatEngine