1 ##############################################################################
2 # Copyright (c) 2018 Mirantis Inc., Enea AB and others.
3 # All rights reserved. This program and the accompanying materials
4 # are made available under the terms of the Apache License, Version 2.0
5 # which accompanies this distribution, and is available at
6 # http://www.apache.org/licenses/LICENSE-2.0
7 ##############################################################################
8 {%- import 'net_map.j2' as nm with context %}
12 # openstack service addresses
13 {%- if conf.MCP_VCP %}
14 openstack_proxy_control_address: ${_param:opnfv_openstack_proxy_control_address}
15 openstack_proxy_node01_control_address: ${_param:opnfv_openstack_proxy_node01_control_address}
16 openstack_proxy_node02_control_address: ${_param:opnfv_openstack_proxy_node02_control_address}
18 openstack_proxy_control_address: ${_param:opnfv_openstack_control_address}
19 openstack_proxy_node01_control_address: ${_param:opnfv_openstack_control_node01_address}
20 openstack_proxy_node02_control_address: ${_param:opnfv_openstack_control_node03_address}
23 openstack_proxy_address: ${_param:opnfv_openstack_proxy_address}
24 openstack_proxy_node01_address: ${_param:opnfv_openstack_proxy_node01_address}
25 openstack_proxy_node02_address: ${_param:opnfv_openstack_proxy_node02_address}
27 openstack_control_address: ${_param:opnfv_openstack_control_address}
28 openstack_control_node01_address: ${_param:opnfv_openstack_control_node01_address}
29 openstack_control_node02_address: ${_param:opnfv_openstack_control_node02_address}
30 openstack_control_node03_address: ${_param:opnfv_openstack_control_node03_address}
32 {%- if conf.MCP_VCP %}
33 openstack_database_address: ${_param:opnfv_openstack_database_address}
34 openstack_database_node01_address: ${_param:opnfv_openstack_database_node01_address}
35 openstack_database_node02_address: ${_param:opnfv_openstack_database_node02_address}
36 openstack_database_node03_address: ${_param:opnfv_openstack_database_node03_address}
38 openstack_message_queue_address: ${_param:opnfv_openstack_message_queue_address}
39 openstack_message_queue_node01_address: ${_param:opnfv_openstack_message_queue_node01_address}
40 openstack_message_queue_node02_address: ${_param:opnfv_openstack_message_queue_node02_address}
41 openstack_message_queue_node03_address: ${_param:opnfv_openstack_message_queue_node03_address}
43 openstack_telemetry_address: ${_param:opnfv_openstack_telemetry_address}
44 openstack_telemetry_node01_address: ${_param:opnfv_openstack_telemetry_node01_address}
45 openstack_telemetry_node02_address: ${_param:opnfv_openstack_telemetry_node02_address}
46 openstack_telemetry_node03_address: ${_param:opnfv_openstack_telemetry_node03_address}
48 openstack_database_address: ${_param:openstack_control_address}
49 openstack_database_node01_address: ${_param:openstack_control_node01_address}
50 openstack_database_node02_address: ${_param:openstack_control_node02_address}
51 openstack_database_node03_address: ${_param:openstack_control_node03_address}
53 openstack_message_queue_address: ${_param:openstack_control_address}
54 openstack_message_queue_node01_address: ${_param:openstack_control_node01_address}
55 openstack_message_queue_node02_address: ${_param:openstack_control_node02_address}
56 openstack_message_queue_node03_address: ${_param:openstack_control_node03_address}
58 openstack_telemetry_address: ${_param:openstack_control_address}
59 openstack_telemetry_node01_address: ${_param:openstack_control_node01_address}
60 openstack_telemetry_node02_address: ${_param:openstack_control_node02_address}
61 openstack_telemetry_node03_address: ${_param:openstack_control_node03_address}
64 # openstack service hostnames
65 {%- if conf.MCP_VCP %}
66 openstack_proxy_hostname: prx
67 openstack_proxy_node01_hostname: prx01
68 openstack_proxy_node02_hostname: prx02
69 openstack_control_hostname: ctl
70 openstack_control_node01_hostname: ctl01
71 openstack_control_node02_hostname: ctl02
72 openstack_control_node03_hostname: ctl03
73 openstack_database_hostname: dbs
74 openstack_database_node01_hostname: dbs01
75 openstack_database_node02_hostname: dbs02
76 openstack_database_node03_hostname: dbs03
77 openstack_message_queue_hostname: msg
78 openstack_message_queue_node01_hostname: msg01
79 openstack_message_queue_node02_hostname: msg02
80 openstack_message_queue_node03_hostname: msg03
81 openstack_telemetry_hostname: mdb
82 openstack_telemetry_node01_hostname: mdb01
83 openstack_telemetry_node02_hostname: mdb02
84 openstack_telemetry_node03_hostname: mdb03
86 openstack_proxy_hostname: ${_param:openstack_control_hostname}
87 openstack_proxy_node01_hostname: ${_param:openstack_control_node01_hostname}
88 openstack_proxy_node02_hostname: ${_param:openstack_control_node03_hostname}
89 openstack_control_hostname: kvm
90 openstack_control_node01_hostname: kvm01
91 openstack_control_node02_hostname: kvm02
92 openstack_control_node03_hostname: kvm03
93 openstack_database_hostname: ${_param:openstack_control_hostname}
94 openstack_database_node01_hostname: ${_param:openstack_control_node01_hostname}
95 openstack_database_node02_hostname: ${_param:openstack_control_node02_hostname}
96 openstack_database_node03_hostname: ${_param:openstack_control_node03_hostname}
97 openstack_message_queue_hostname: ${_param:openstack_control_hostname}
98 openstack_message_queue_node01_hostname: ${_param:openstack_control_node01_hostname}
99 openstack_message_queue_node02_hostname: ${_param:openstack_control_node02_hostname}
100 openstack_message_queue_node03_hostname: ${_param:openstack_control_node03_hostname}
101 openstack_telemetry_hostname: ${_param:openstack_control_hostname}
102 openstack_telemetry_node01_hostname: ${_param:openstack_control_node01_hostname}
103 openstack_telemetry_node02_hostname: ${_param:openstack_control_node02_hostname}
104 openstack_telemetry_node03_hostname: ${_param:openstack_control_node03_hostname}
108 openstack_compute_node01_hostname: cmp001
109 openstack_compute_node02_hostname: cmp002
111 openstack_region: RegionOne
112 admin_email: root@localhost
113 db_connection_recycle_time: 300
115 neutron_control_dvr: 'False'
116 neutron_global_physnet_mtu: 1500
117 neutron_external_mtu: 1500
118 neutron_gateway_dvr: 'False'
119 neutron_gateway_agent_mode: legacy
120 neutron_compute_dvr: 'False'
121 neutron_compute_agent_mode: legacy
122 neutron_compute_external_access: 'True'
123 galera_server_cluster_name: openstack_cluster
124 glance_version: ${_param:openstack_version}
125 glance_service_host: ${_param:openstack_control_address}
126 keystone_version: ${_param:openstack_version}
127 keystone_service_host: ${_param:openstack_control_address}
128 heat_version: ${_param:openstack_version}
129 heat_service_host: ${_param:openstack_control_address}
130 cinder_version: ${_param:openstack_version}
131 cinder_service_host: ${_param:openstack_control_address}
132 ceilometer_version: ${_param:openstack_version}
133 ceilometer_service_host: ${_param:openstack_telemetry_address}
134 nova_version: ${_param:openstack_version}
135 nova_service_host: ${_param:openstack_control_address}
136 neutron_version: ${_param:openstack_version}
137 neutron_service_host: ${_param:openstack_control_address}
138 {%- if conf.MCP_VCP %}
139 glusterfs_service_host: ${_param:infra_kvm_address}
141 glusterfs_service_host: ${_param:openstack_control_address}
143 mysql_admin_user: root
144 aodh_version: ${_param:openstack_version}
145 barbican_version: ${_param:openstack_version}
146 barbican_service_host: ${_param:openstack_control_address}
147 apache_barbican_api_address: ${_param:single_address}
148 barbican_integration_enabled: true
149 horizon_version: ${_param:openstack_version}
150 horizon_identity_host: ${_param:openstack_control_address}
151 horizon_identity_encryption: none
152 horizon_identity_version: 3
153 apache_mods_status_enabled: false
154 nginx_server_site_nginx_proxy_openstack_web_enabled: true
155 aodh_service_host: ${_param:openstack_telemetry_address}
157 gnocchi_service_host: ${_param:openstack_telemetry_address}
158 panko_version: ${_param:openstack_version}
159 panko_service_host: ${_param:openstack_telemetry_address}
160 ceilometer_agent_default_polling_interval: 180
161 ceilometer_agent_default_polling_meters:
163 designate_service_host: ${_param:openstack_control_address}
164 designate_domain_id: 5186883b-91fb-4891-bd49-e6769234a8fc
165 designate_pool_ns_records:
166 - hostname: 'ns1.example.org.'
168 designate_pool_nameservers:
169 - host: ${_param:openstack_control_node01_address}
171 - host: ${_param:openstack_control_node02_address}
173 - host: ${_param:openstack_control_node03_address}
175 designate_pool_target_type: bind9
176 designate_pool_target_masters:
177 - host: ${_param:openstack_control_node01_address}
179 - host: ${_param:openstack_control_node02_address}
181 - host: ${_param:openstack_control_node03_address}
183 designate_pool_target_options:
184 host: ${_param:openstack_control_node01_address}
186 rndc_host: ${_param:openstack_control_node01_address}
188 rndc_key_file: /etc/designate/rndc.key
189 designate_version: ${_param:openstack_version}
191 # keystone_billometer_password: opnfv_secret
192 # keystone_billometer_address: ${_param:billometer_service_host}
193 # billometer_service_host: ${_param:openstack_billing_address}
194 # billometer_version: ${_param:openstack_version}
195 # billometer_secret_key: opnfv_secretpasswordpasswordpassword
196 # billometer_identity_password: ${_param:keystone_billometer_password}
197 # billometer_identity_host: ${_param:openstack_control_address}
198 # billometer_identity_token: ${_param:keystone_service_token}
201 {%- if 'aarch64' in nm.cluster.arch %}
203 armband_3: # Should be in sync with the repo config generated via curtin/MaaS
204 source: "deb http://linux.enea.com/mcp-repos/${_param:armband_repo_version}/xenial ${_param:armband_repo_version}-armband main"
205 key: ${_param:armband_key}
209 pin: 'release a=${_param:armband_repo_version}-armband'
214 pin: 'release a=${_param:armband_repo_version}-armband'
220 net.ipv4.tcp_congestion_control: yeah
221 net.ipv4.tcp_slow_start_after_idle: 0
222 net.ipv4.tcp_fin_timeout: 30
228 {%- if conf.MCP_VCP %}
230 address: ${_param:openstack_proxy_control_address}
232 - ${_param:openstack_proxy_hostname}
233 - ${_param:openstack_proxy_hostname}.${_param:cluster_domain}
235 address: ${_param:openstack_proxy_node01_control_address}
237 - ${_param:openstack_proxy_node01_hostname}
238 - ${_param:openstack_proxy_node01_hostname}.${_param:cluster_domain}
240 address: ${_param:openstack_proxy_node02_control_address}
242 - ${_param:openstack_proxy_node02_hostname}
243 - ${_param:openstack_proxy_node02_hostname}.${_param:cluster_domain}
245 address: ${_param:openstack_control_address}
247 - ${_param:openstack_control_hostname}
248 - ${_param:openstack_control_hostname}.${_param:cluster_domain}
250 address: ${_param:openstack_control_node01_address}
252 - ${_param:openstack_control_node01_hostname}
253 - ${_param:openstack_control_node01_hostname}.${_param:cluster_domain}
255 address: ${_param:openstack_control_node02_address}
257 - ${_param:openstack_control_node02_hostname}
258 - ${_param:openstack_control_node02_hostname}.${_param:cluster_domain}
260 address: ${_param:openstack_control_node03_address}
262 - ${_param:openstack_control_node03_hostname}
263 - ${_param:openstack_control_node03_hostname}.${_param:cluster_domain}
265 address: ${_param:openstack_message_queue_address}
267 - ${_param:openstack_message_queue_hostname}
268 - ${_param:openstack_message_queue_hostname}.${_param:cluster_domain}
270 address: ${_param:openstack_message_queue_node01_address}
272 - ${_param:openstack_message_queue_node01_hostname}
273 - ${_param:openstack_message_queue_node01_hostname}.${_param:cluster_domain}
275 address: ${_param:openstack_message_queue_node02_address}
277 - ${_param:openstack_message_queue_node02_hostname}
278 - ${_param:openstack_message_queue_node02_hostname}.${_param:cluster_domain}
280 address: ${_param:openstack_message_queue_node03_address}
282 - ${_param:openstack_message_queue_node03_hostname}
283 - ${_param:openstack_message_queue_node03_hostname}.${_param:cluster_domain}
285 address: ${_param:openstack_database_address}
287 - ${_param:openstack_database_hostname}
288 - ${_param:openstack_database_hostname}.${_param:cluster_domain}
290 address: ${_param:openstack_database_node01_address}
292 - ${_param:openstack_database_node01_hostname}
293 - ${_param:openstack_database_node01_hostname}.${_param:cluster_domain}
295 address: ${_param:openstack_database_node02_address}
297 - ${_param:openstack_database_node02_hostname}
298 - ${_param:openstack_database_node02_hostname}.${_param:cluster_domain}
300 address: ${_param:openstack_database_node03_address}
302 - ${_param:openstack_database_node03_hostname}
303 - ${_param:openstack_database_node03_hostname}.${_param:cluster_domain}
305 address: ${_param:openstack_telemetry_address}
307 - ${_param:openstack_telemetry_hostname}
308 - ${_param:openstack_telemetry_hostname}.${_param:cluster_domain}
310 address: ${_param:openstack_telemetry_node01_address}
312 - ${_param:openstack_telemetry_node01_hostname}
313 - ${_param:openstack_telemetry_node01_hostname}.${_param:cluster_domain}
315 address: ${_param:openstack_telemetry_node02_address}
317 - ${_param:openstack_telemetry_node02_hostname}
318 - ${_param:openstack_telemetry_node02_hostname}.${_param:cluster_domain}
320 address: ${_param:openstack_telemetry_node03_address}
322 - ${_param:openstack_telemetry_node03_hostname}
323 - ${_param:openstack_telemetry_node03_hostname}.${_param:cluster_domain}
326 address: ${_param:openstack_control_address}
328 - ${_param:openstack_control_hostname}
329 - ${_param:openstack_control_hostname}.${_param:cluster_domain}
331 address: ${_param:openstack_control_node01_address}
333 - ${_param:openstack_control_node01_hostname}
334 - ${_param:openstack_control_node01_hostname}.${_param:cluster_domain}
336 address: ${_param:openstack_control_node02_address}
338 - ${_param:openstack_control_node02_hostname}
339 - ${_param:openstack_control_node02_hostname}.${_param:cluster_domain}
341 address: ${_param:openstack_control_node03_address}
343 - ${_param:openstack_control_node03_hostname}
344 - ${_param:openstack_control_node03_hostname}.${_param:cluster_domain}
346 {#- For compute nodes, expand values in-place, bypassing reclass param expansion #}
347 {%- for cmp in range(1, nm.cmp_nodes + 1) %}
348 {%- set h = 'cmp%03d' | format(cmp) %}
349 {%- set mgmt = nm.net_mgmt_hosts | length + nm.start_ip[nm.net_mgmt] + loop.index %}
351 address: {{ nm.net_mgmt | ipnet_hostaddr(mgmt) }}
354 - {{ h }}.${_param:cluster_domain}