Add tuskar API service configuration
[apex-tripleo-heat-templates.git] / undercloud-vm.yaml
1 Description: All-in-one baremetal OpenStack and all dependencies.
2 HeatTemplateFormatVersion: '2012-12-12'
3 Parameters:
4   AdminPassword:
5     Default: unset
6     Description: The password for the keystone admin account, used for monitoring, querying neutron etc.
7     Type: String
8     NoEcho: true
9   AdminToken:
10     Default: unset
11     Description: The keystone auth secret.
12     Type: String
13     NoEcho: true
14   BaremetalArch:
15     Default: i386
16     Description: The architecture to use in Nova-BM - i386 or amd64.
17     Type: String
18   Flavor:
19     Default: baremetal
20     Description: Flavor to request when deploying.
21     Type: String
22   GlancePassword:
23     Default: unset
24     Description: The password for the glance service account, used by the glance services.
25     Type: String
26     NoEcho: true
27   KeyName:
28     Default: default
29     Description: Name of an existing EC2 KeyPair to enable SSH access to the instances
30     Type: String
31   HeatPassword:
32     Default: unset
33     Description: The password for the Heat service account, used by the Heat services.
34     Type: String
35     NoEcho: true
36   Image:
37     Default: undercloud
38     Type: String
39   NeutronPassword:
40     Default: unset
41     Description: The password for the neutron service account, used by neutron agents.
42     Type: String
43     NoEcho: true
44   NeutronNativePXE:
45     Default: ''
46     Type: String
47     Description: Set truthy to enable Neutron native PXE.
48   NeutronPublicInterface:
49     Default: eth0
50     Description: What interface to bridge onto br-ex for network nodes.
51     Type: String
52   NovaPassword:
53     Default: unset
54     Description: The password for the nova service account, used by nova-api.
55     Type: String
56     NoEcho: true
57   PowerManager:
58     Default: nova.virt.baremetal.virtual_power_driver.VirtualPowerManager
59     Description: Bare metal power manager driver.
60     Type: String
61   PowerUserName:
62     Default: stack
63     Description: What username to ssh to the virtual power host with.
64     Type: String
65 Resources:
66   AccessPolicy:
67     Properties:
68       AllowedResources:
69       - notcomputeConfig
70     Type: OS::Heat::AccessPolicy
71   Key:
72     Properties:
73       UserName:
74         Ref: User
75     Type: AWS::IAM::AccessKey
76   User:
77     Properties:
78       Policies:
79       - Ref: AccessPolicy
80     Type: AWS::IAM::User
81   notcomputeConfig:
82     Type: AWS::AutoScaling::LaunchConfiguration
83     Properties:
84       ImageId: '0'
85       InstanceType: foo
86     Metadata:
87       OpenStack::Role: notcomputeConfig
88       OpenStack::Heat::Stack: {}
89       Openstack::ImageBuilder::Elements: [ boot-stack, heat-cfntools, neutron-network-node ]
90       admin-password:
91         Ref: AdminPassword
92       admin-token: 
93         Ref: AdminToken
94       controller-address:
95         Fn::Select:
96           - 0
97           - Fn::Select:
98             - "ctlplane"
99             - Fn::GetAtt:
100               - notcompute
101               - networks
102       cinder:
103         db: mysql://cinder:unset@localhost/cinder
104         volume_size_mb: '5000'
105       db-password: unset
106       glance:
107         db: mysql://glance:unset@localhost/glance
108         host: 127.0.0.1
109         service-password:
110           Ref: GlancePassword
111       heat:
112         admin_password:
113           Ref: HeatPassword
114         admin_tenant_name: service
115         admin_user: heat
116         auth_encryption_key: unset___________
117         db: mysql://heat:unset@localhost/heat
118         heat_watch_server_url:
119           Fn::Join:
120             - ''
121             - - http://
122               - {"Fn::Select": [ 0, {"Fn::Select": [ "ctlplane", {"Fn::GetAtt": [ notcompute, networks ]} ]}]}
123               - ":8003"
124         metadata_server_url:
125           Fn::Join:
126             - ''
127             - - http://
128               - {"Fn::Select": [ 0, {"Fn::Select": [ "ctlplane", {"Fn::GetAtt": [ notcompute, networks ]} ]}]}
129               - ":8000"
130         waitcondition_server_url:
131           Fn::Join:
132             - ''
133             - - http://
134               - {"Fn::Select": [ 0, {"Fn::Select": [ "ctlplane", {"Fn::GetAtt": [ notcompute, networks ]} ]}]}
135               - ":8000/v1/waitcondition"
136       os-collect-config:
137         cfn:
138           access_key_id:
139             Ref: Key
140           path: notcomputeConfig.Metadata
141           secret_access_key:
142             Fn::GetAtt:
143             - Key
144             - SecretAccessKey
145           stack_name:
146             Ref: AWS::StackName
147       keystone:
148         db: mysql://keystone:unset@localhost/keystone
149         host: 127.0.0.1
150       nova:
151         compute_hostname: undercloud
152         compute_driver: baremetal.driver.BareMetalDriver
153         db: mysql://nova:unset@localhost/nova
154         host: 127.0.0.1
155         metadata-proxy: false
156         tuning:
157           ram_allocation_ratio: 1.0
158           reserved_host_memory_mb: 0
159         baremetal:
160           arch:
161             Ref: BaremetalArch
162           db: mysql://nova:unset@localhost/nova_bm
163           power_manager:
164             Ref: PowerManager
165           pxe_deploy_timeout: 2400
166           virtual_power:
167             user:
168               Ref: PowerUserName
169             key: /opt/stack/boot-stack/virtual-power-key
170             ssh_host: 192.168.122.1
171             type: virsh
172         service-password:
173           Ref: NovaPassword
174       neutron:
175         host: 127.0.0.1
176         native_pxe:
177           Ref: NeutronNativePXE
178         ovs_db: mysql://neutron:unset@localhost/ovs_neutron?charset=utf8
179         ovs:
180           dnsmasq_range: [192.0.2.25, 192.0.2.44]
181           public_interface:
182             Ref: NeutronPublicInterface
183           physical_bridge: br-ctlplane
184           physical_network: ctlplane
185           network_vlan_ranges: ctlplane
186           bridge_mappings: ctlplane:br-ctlplane
187           tenant_network_type: vlan
188           enable_tunneling: 'False'
189         service-password:
190           Ref: NeutronPassword
191       rabbit:
192         host: 127.0.0.1
193         password: guest
194   notcompute:
195     Type: OS::Nova::Server
196     Properties:
197       image:
198         Ref: Image
199       flavor:
200         Ref: Flavor
201       key_name:
202         Ref: KeyName
203     Metadata:
204       os-collect-config:
205         cfn:
206           access_key_id:
207             Ref: Key
208           path: notcomputeConfig.Metadata
209           secret_access_key:
210             Fn::GetAtt:
211             - Key
212             - SecretAccessKey
213           stack_name:
214             Ref: AWS::StackName