Add in Neutron service password.
[apex-tripleo-heat-templates.git] / overcloud-source.yaml
1 Description: Nova API,Keystone,Heat Engine and API,Glance,Neutron,Dedicated MySQL
2   server,Dedicated RabbitMQ Server,Group of Nova Computes
3 HeatTemplateFormatVersion: '2012-12-12'
4 Parameters:
5   AdminPassword:
6     Default: unset
7     Description: The password for the keystone admin account, used for monitoring, querying neutron etc.
8     Type: String
9   AdminToken:
10     Default: unset
11     Description: The keystone auth secret.
12     Type: String
13   InstanceType:
14     Default: baremetal
15     Description: Flavor to request when deploying.
16     Type: String
17   KeyName:
18     Default: default
19     Description: Name of an existing EC2 KeyPair to enable SSH access to the instances
20     Type: String
21   NeutronPassword:
22     Default: unset
23     Description: The password for the neutron service account, used by neutron agents.
24     Type: String
25   NovaComputeDriver:
26     Default: libvirt.LibvirtDriver
27     Type: String
28   NovaComputeLibvirtType:
29     Default: ''
30     Type: String
31   NovaImage:
32     Type: String
33     Default: overcloud-compute
34   NovaInterfaces:
35     Default: eth0
36     Type: String
37   PowerUserName:
38     Default: stack
39     Description: What username to ssh to the virtual power host with.
40     Type: String
41   notcomputeImage:
42     Type: String
43     Default: overcloud-control
44 Resources:
45   AccessPolicy:
46     Properties:
47       AllowedResources:
48       - notcompute
49       - notcomputeConfig
50     Type: OS::Heat::AccessPolicy
51   ComputeAccessPolicy:
52     Properties:
53       AllowedResources:
54       - NovaCompute0
55       - NovaCompute0Config
56     Type: OS::Heat::AccessPolicy
57   Key:
58     Properties:
59       UserName:
60         Ref: User
61     Type: AWS::IAM::AccessKey
62   ComputeKey:
63     Properties:
64       UserName:
65         Ref: ComputeUser
66     Type: AWS::IAM::AccessKey
67   ComputeUser:
68     Properties:
69       Policies:
70       - Ref: ComputeAccessPolicy
71     Type: AWS::IAM::User
72   NovaCompute0Config:
73     Type: FileInclude
74     Path: nova-compute-instance.yaml
75     SubKey: Resources.NovaCompute0Config
76     Parameters:
77         NovaApiHost: {"Fn::GetAtt": [notcompute, PrivateIp]}
78         KeystoneHost: {"Fn::GetAtt": [notcompute, PrivateIp]}
79         RabbitHost: {"Fn::GetAtt": [notcompute, PrivateIp]}
80         NeutronHost: {"Fn::GetAtt": [notcompute, PrivateIp]}
81         GlanceHost: {"Fn::GetAtt": [notcompute, PrivateIp]}
82         NovaDSN: {"Fn::Join": ['', ['mysql://nova:unset@', {"Fn::GetAtt": [notcompute, PrivateIp]}, '/nova']]}
83         NeutronDSN: {"Fn::Join": ['', ['mysql://neutron:unset@', {"Fn::GetAtt": [notcompute, PrivateIp]}, '/neutron']]}
84         NeutronNetworkType: "gre"
85         NeutronEnableTunnelling: "True"
86         NeutronNetworkVLANRanges: ""
87         NeutronBridgeMappings: ""
88         RabbitPassword: "guest"
89         ServicePassword: "unset"
90   NovaCompute0:
91     Type: FileInclude
92     Path: nova-compute-instance.yaml
93     SubKey: Resources.NovaCompute0
94   User:
95     Properties:
96       Policies:
97       - Ref: AccessPolicy
98     Type: AWS::IAM::User
99   notcomputeConfig:
100     Type: AWS::AutoScaling::LaunchConfiguration
101     Properties:
102       ImageId: '0'
103       InstanceType: '0'
104     Metadata:
105       OpenStack::Heat::Stack: {}
106       Openstack::ImageBuilder::Elements:
107       - boot-stack
108       - heat-cfntools
109       - heat-localip
110       - neutron-network-node
111       admin-password:
112         Ref: AdminPassword
113       admin-token:
114         Ref: AdminToken
115       cinder:
116         db: mysql://cinder:unset@localhost/cinder
117         volume_size_mb: '5000'
118       controller-address:
119         Fn::GetAtt:
120           - notcompute
121           - PrivateIp
122       db-password: unset
123       glance:
124         db: mysql://glance:unset@localhost/glance
125         host:
126           Fn::GetAtt:
127             - notcompute
128             - PrivateIp
129       os-collect-config:
130         cfn:
131           access_key_id:
132             Ref: Key
133           path: notcomputeConfig.Metadata
134           secret_access_key:
135             Fn::GetAtt:
136             - Key
137             - SecretAccessKey
138           stack_name:
139             Ref: AWS::StackName
140       heat:
141         admin_password: unset
142         admin_tenant_name: service
143         admin_user: heat
144         auth_encryption_key: unset___________
145         db: mysql://heat:unset@localhost/heat
146         heat_watch_server_url:
147           Fn::Join:
148             - ''
149             - - 'http://'
150               - Fn::GetAtt:
151                   - notcompute
152                   - PrivateIp
153               - ':8003'
154         metadata_server_url:
155           Fn::Join:
156             - ''
157             - - 'http://'
158               - Fn::GetAtt:
159                   - notcompute
160                   - PrivateIp
161               - ':8000'
162         waitcondition_server_url:
163           Fn::Join:
164             - ''
165             - - 'http://'
166               - Fn::GetAtt:
167                   - notcompute
168                   - PrivateIp
169               - ':8000/v1/waitcondition'
170       interfaces:
171         control: eth0
172       keystone:
173         db: mysql://keystone:unset@localhost/keystone
174         host:
175           Fn::GetAtt:
176             - notcompute
177             - PrivateIp
178       nova:
179         compute_driver: libvirt.LibvirtDriver
180         db: mysql://nova:unset@localhost/nova
181         host:
182           Fn::GetAtt:
183             - notcompute
184             - PrivateIp
185         metadata-proxy: true
186       neutron:
187         host:
188           Fn::GetAtt:
189             - notcompute
190             - PrivateIp
191         metadata_proxy_shared_secret: unset
192         ovs:
193           enable_tunneling: 'True'
194           local_ip:
195             Fn::GetAtt:
196               - notcompute
197               - PrivateIp
198           public_interface: eth0
199           physical_bridge: br-ex
200           tenant_network_type: gre
201         ovs_db: mysql://neutron:unset@localhost/ovs_neutron?charset=utf8
202         service-password:
203           Ref: NeutronPassword
204       rabbit:
205         host:
206           Fn::GetAtt:
207             - notcompute
208             - PrivateIp
209         password: guest
210       service-password: unset
211   notcompute:
212     Type: AWS::EC2::Instance
213     Properties:
214       ImageId:
215         Ref: notcomputeImage
216       InstanceType:
217         Ref: InstanceType
218       KeyName:
219         Ref: KeyName
220     Metadata:
221       os-collect-config:
222         cfn:
223           access_key_id:
224             Ref: Key
225           path: notcomputeConfig.Metadata
226           secret_access_key:
227             Fn::GetAtt:
228             - Key
229             - SecretAccessKey
230           stack_name:
231             Ref: AWS::StackName