blob: 0311867e76c865cf9e45639bd940d4f3eb06f77d [file] [log] [blame]
sgudz2ed95852019-03-01 14:48:52 +02001# Set the repository suite, one of the: 'nightly', 'testing', 'stable', or any other required
2{% set REPOSITORY_SUITE = os_env('REPOSITORY_SUITE', 'testing') %}
3
4{% import 'cookied-small-mcp-ironic/underlay--meta-data.yaml' as CLOUDINIT_META_DATA with context %}
5{% import 'cookied-small-mcp-ironic/underlay--user-data1604-swp.yaml' as CLOUDINIT_USER_DATA_1604_SWP with context %}
6
7---
8aliases:
9 - &interface_model {{ os_env('INTERFACE_MODEL', 'virtio') }}
10 - &cloudinit_meta_data {{ CLOUDINIT_META_DATA }}
11 - &cloudinit_user_data_1604_swp {{ CLOUDINIT_USER_DATA_1604_SWP }}
12
13{% set LAB_CONFIG_NAME = os_env('LAB_CONFIG_NAME', 'cookied-small-mcp-ironic') %}
14{% set DOMAIN_NAME = os_env('DOMAIN_NAME', LAB_CONFIG_NAME) + '.local' %}
15{% set HOSTNAME_CFG01 = os_env('HOSTNAME_CFG01', 'cfg01.' + DOMAIN_NAME) %}
16{% set HOSTNAME_CTL01 = os_env('HOSTNAME_CTL01', 'ctl01.' + DOMAIN_NAME) %}
17{% set HOSTNAME_CTL02 = os_env('HOSTNAME_CTL02', 'ctl02.' + DOMAIN_NAME) %}
18{% set HOSTNAME_CTL03 = os_env('HOSTNAME_CTL03', 'ctl03.' + DOMAIN_NAME) %}
19{% set HOSTNAME_GTW01 = os_env('HOSTNAME_GTW01', 'gtw01.' + DOMAIN_NAME) %}
20{% set HOSTNAME_PRX01 = os_env('HOSTNAME_PRX01', 'prx01.' + DOMAIN_NAME) %}
21{% set HOSTNAME_BMT01 = os_env('HOSTNAME_BMT01', 'bmt01.' + DOMAIN_NAME) %}
22
23template:
24 devops_settings:
25 env_name: {{ os_env('ENV_NAME', 'cookied-small-mcp-ironic_' + REPOSITORY_SUITE + "_" + os_env('BUILD_NUMBER', '')) }}
26
27 address_pools:
28 private-pool01:
29 net: {{ os_env('PRIVATE_ADDRESS_POOL01', '10.60.0.0/16:24') }}
30 params:
31 ip_reserved:
32 gateway: +1
33 l2_network_device: +1
34 default_{{ HOSTNAME_CFG01 }}: +15
35 default_{{ HOSTNAME_CTL01 }}: +101
36 default_{{ HOSTNAME_CTL02 }}: +102
37 default_{{ HOSTNAME_CTL03 }}: +103
38 default_{{ HOSTNAME_GTW01 }}: +110
39 default_{{ HOSTNAME_PRX01 }}: +121
40 default_{{ HOSTNAME_BMT01 }}: +76
41 ip_ranges:
42 dhcp: [+90, -10]
43
44 admin-pool01:
45 net: {{ os_env('ADMIN_ADDRESS_POOL01', '10.70.0.0/16:24') }}
46 params:
47 ip_reserved:
48 gateway: +1
49 l2_network_device: +1
50 default_{{ HOSTNAME_CFG01 }}: +15
51 default_{{ HOSTNAME_CTL01 }}: +101
52 default_{{ HOSTNAME_CTL02 }}: +102
53 default_{{ HOSTNAME_CTL03 }}: +103
54 default_{{ HOSTNAME_GTW01 }}: +110
55 default_{{ HOSTNAME_PRX01 }}: +121
56 default_{{ HOSTNAME_BMT01 }}: +76
57 ip_ranges:
58 dhcp: [+90, -10]
59
60 tenant-pool01:
61 net: {{ os_env('TENANT_ADDRESS_POOL01', '10.80.0.0/16:24') }}
62 params:
63 ip_reserved:
64 gateway: +1
65 l2_network_device: +1
66 default_{{ HOSTNAME_CFG01 }}: +15
67 default_{{ HOSTNAME_CTL01 }}: +101
68 default_{{ HOSTNAME_CTL02 }}: +102
69 default_{{ HOSTNAME_CTL03 }}: +103
70 default_{{ HOSTNAME_GTW01 }}: +110
71 default_{{ HOSTNAME_PRX01 }}: +121
72 ip_ranges:
73 dhcp: [+10, -10]
74
75 external-pool01:
76 net: {{ os_env('EXTERNAL_ADDRESS_POOL01', '10.90.0.0/16:24') }}
77 params:
78 ip_reserved:
79 gateway: +1
80 l2_network_device: +1
81 default_{{ HOSTNAME_CFG01 }}: +15
82 default_{{ HOSTNAME_CTL01 }}: +101
83 default_{{ HOSTNAME_CTL02 }}: +102
84 default_{{ HOSTNAME_CTL03 }}: +103
85 default_{{ HOSTNAME_GTW01 }}: +110
86 default_{{ HOSTNAME_PRX01 }}: +121
87 ip_ranges:
88 dhcp: [+180, +220]
89
90 groups:
91 - name: default
92 driver:
93 name: devops.driver.libvirt
94 params:
95 connection_string: !os_env CONNECTION_STRING, qemu:///system
96 storage_pool_name: !os_env STORAGE_POOL_NAME, default
97 stp: False
98 hpet: False
99 enable_acpi: true
100 use_host_cpu: !os_env DRIVER_USE_HOST_CPU, true
101 use_hugepages: !os_env DRIVER_USE_HUGEPAGES, false
102
103 network_pools:
104 admin: admin-pool01
105 private: private-pool01
106 tenant: tenant-pool01
107 external: external-pool01
108
109 l2_network_devices:
110 private:
111 address_pool: private-pool01
112 dhcp: false
113 forward:
114 mode: route
115
116 admin:
117 address_pool: admin-pool01
118 dhcp: true
119 forward:
120 mode: nat
121
122 tenant:
123 address_pool: tenant-pool01
124 dhcp: false
125
126 external:
127 address_pool: external-pool01
128 dhcp: false
129 forward:
130 mode: route
131
132 baremetal:
133 parent_iface:
134 phys_dev: {{ os_env('IFACE_IRONIC', 'veth-contdpdk1') }}
135
136
137 group_volumes:
138 - name: cloudimage1604 # This name is used for 'backing_store' option for node volumes.
139 source_image: {{ os_env('MCP_IMAGE_PATH1604') }} # http://ci.mcp.mirantis.net:8085/images/ubuntu-16-04-x64-mcpproposed.qcow2
140 format: qcow2
141 - name: cfg01_day01_image # Pre-configured day01 image
142 source_image: {{ os_env('IMAGE_PATH_CFG01_DAY01') }} # http://images.mirantis.com/cfg01-day01.qcow2 or fallback to IMAGE_PATH1604
143 format: qcow2
144 - name: mcp_ubuntu_1604_image # Pre-configured image for control plane
145 source_image: !os_env MCP_IMAGE_PATH1604
146 format: qcow2
147
148 nodes:
149 - name: {{ HOSTNAME_CFG01 }}
150 role: salt_master
151 params:
152 vcpu: {{ os_env('CFG_NODE_CPU', 3) }}
153 memory: {{ os_env('CFG_NODE_MEMORY', 8192) }}
154 boot:
155 - hd
156 volumes:
157 - name: system
158 capacity: {{ os_env('CFG_NODE_VOLUME_SIZE', 150) }}
159 backing_store: cfg01_day01_image
160 format: qcow2
161 - name: config
162 capacity: 1
163 format: raw
164 device: cdrom
165 bus: ide
166 # source_image: !os_env CFG01_CONFIG_PATH # no source image required.
167 # it will be uploaded after config drive generation
168 interfaces:
169 - label: ens3
170 l2_network_device: admin
171 interface_model: *interface_model
172 - label: ens4
173 l2_network_device: private
174 interface_model: *interface_model
175 network_config:
176 ens3:
177 networks:
178 - admin
179 ens4:
180 networks:
181 - private
182
183 - name: {{ HOSTNAME_CTL01 }}
184 role: salt_minion
185 params:
186 vcpu: !os_env SLAVE_NODE_CPU, 2
187 memory: !os_env SLAVE_NODE_MEMORY, 12288
188 boot:
189 - hd
190 cloud_init_volume_name: iso
191 cloud_init_iface_up: ens3
192 volumes:
193 - name: system
194 capacity: !os_env NODE_VOLUME_SIZE, 150
195 backing_store: mcp_ubuntu_1604_image
196 format: qcow2
197 - name: iso # Volume with name 'iso' will be used
198 # for store image with cloud-init metadata.
199 capacity: 1
200 format: raw
201 device: cdrom
202 bus: ide
203 cloudinit_meta_data: *cloudinit_meta_data
204 cloudinit_user_data: *cloudinit_user_data_1604_swp
205
206 interfaces: &interfaces
207 - label: ens3
208 l2_network_device: admin
209 interface_model: *interface_model
210 - label: ens4
211 l2_network_device: private
212 interface_model: *interface_model
213 network_config: &network_config
214 ens3:
215 networks:
216 - admin
217 ens4:
218 networks:
219 - private
220
221 - name: {{ HOSTNAME_CTL02 }}
222 role: salt_minion
223 params:
224 vcpu: !os_env SLAVE_NODE_CPU, 2
225 memory: !os_env SLAVE_NODE_MEMORY, 12288
226 boot:
227 - hd
228 cloud_init_volume_name: iso
229 cloud_init_iface_up: ens3
230 volumes:
231 - name: system
232 capacity: !os_env NODE_VOLUME_SIZE, 150
233 backing_store: mcp_ubuntu_1604_image
234 format: qcow2
235 - name: iso # Volume with name 'iso' will be used
236 # for store image with cloud-init metadata.
237 capacity: 1
238 format: raw
239 device: cdrom
240 bus: ide
241 cloudinit_meta_data: *cloudinit_meta_data
242 cloudinit_user_data: *cloudinit_user_data_1604_swp
243
244 interfaces: *interfaces
245 network_config: *network_config
246
247 - name: {{ HOSTNAME_CTL03 }}
248 role: salt_minion
249 params:
250 vcpu: !os_env SLAVE_NODE_CPU, 2
251 memory: !os_env SLAVE_NODE_MEMORY, 12288
252 boot:
253 - hd
254 cloud_init_volume_name: iso
255 cloud_init_iface_up: ens3
256 volumes:
257 - name: system
258 capacity: !os_env NODE_VOLUME_SIZE, 150
259 backing_store: mcp_ubuntu_1604_image
260 format: qcow2
261 - name: iso # Volume with name 'iso' will be used
262 # for store image with cloud-init metadata.
263 capacity: 1
264 format: raw
265 device: cdrom
266 bus: ide
267 cloudinit_meta_data: *cloudinit_meta_data
268 cloudinit_user_data: *cloudinit_user_data_1604_swp
269
270 interfaces: *interfaces
271 network_config: *network_config
272
273 - name: {{ HOSTNAME_PRX01 }}
274 role: salt_minion
275 params:
276 vcpu: !os_env SLAVE_NODE_CPU, 1
277 memory: !os_env SLAVE_NODE_MEMORY, 2048
278 boot:
279 - hd
280 cloud_init_volume_name: iso
281 cloud_init_iface_up: ens3
282 volumes:
283 - name: system
284 capacity: !os_env NODE_VOLUME_SIZE, 150
285 backing_store: mcp_ubuntu_1604_image
286 format: qcow2
287 - name: iso # Volume with name 'iso' will be used
288 # for store image with cloud-init metadata.
289 capacity: 1
290 format: raw
291 device: cdrom
292 bus: ide
293 cloudinit_meta_data: *cloudinit_meta_data
294 cloudinit_user_data: *cloudinit_user_data_1604_swp
295
296 interfaces:
297 - label: ens3
298 l2_network_device: admin
299 interface_model: *interface_model
300 - label: ens4
301 l2_network_device: private
302 interface_model: *interface_model
303 - label: ens5
304 l2_network_device: external
305 interface_model: *interface_model
306 network_config:
307 ens3:
308 networks:
309 - admin
310 ens4:
311 networks:
312 - private
313 ens5:
314 networks:
315 - external
316
317 - name: {{ HOSTNAME_GTW01 }}
318 role: salt_minion
319 params:
320 vcpu: !os_env SLAVE_NODE_CPU, 2
321 memory: !os_env SLAVE_NODE_MEMORY, 2048
322 boot:
323 - hd
324 cloud_init_volume_name: iso
325 cloud_init_iface_up: ens3
326 volumes:
327 - name: system
328 capacity: !os_env NODE_VOLUME_SIZE, 150
329 backing_store: cloudimage1604
330 format: qcow2
331 - name: iso # Volume with name 'iso' will be used
332 # for store image with cloud-init metadata.
333 capacity: 1
334 format: raw
335 device: cdrom
336 bus: ide
337 cloudinit_meta_data: *cloudinit_meta_data
338 cloudinit_user_data: *cloudinit_user_data_1604_swp
339
340 interfaces: &all_gtw_interfaces
341 - label: ens3
342 l2_network_device: admin
343 interface_model: *interface_model
344 - label: ens4
345 l2_network_device: private
346 interface_model: *interface_model
347 - label: ens5
348 l2_network_device: tenant
349 interface_model: *interface_model
350 - label: ens6
351 l2_network_device: external
352 interface_model: *interface_model
353 - label: ens7
354 l2_network_device: baremetal
355 interface_model: *interface_model
356 network_config: &all_gtw_network_config
357 ens3:
358 networks:
359 - admin
360 ens4:
361 networks:
362 - private
363 ens5:
364 networks:
365 - tenant
366 ens6:
367 networks:
368 - external
369 ens7:
370 networks:
371 - baremetal
372
373 - name: {{ HOSTNAME_BMT01 }}
374 role: salt_minion
375 params:
376 vcpu: !os_env SLAVE_NODE_CPU, 2
377 memory: !os_env SLAVE_NODE_MEMORY, 4096
378 boot:
379 - hd
380 cloud_init_volume_name: iso
381 cloud_init_iface_up: ens3
382 volumes:
383 - name: system
384 capacity: !os_env NODE_VOLUME_SIZE, 150
385 backing_store: cloudimage1604
386 format: qcow2
387 - name: iso # Volume with name 'iso' will be used
388 # for store image with cloud-init metadata.
389 capacity: 1
390 format: raw
391 device: cdrom
392 bus: ide
393 cloudinit_meta_data: *cloudinit_meta_data
394 cloudinit_user_data: *cloudinit_user_data_1604_swp
395
396 interfaces: *all_gtw_interfaces
397 network_config: *all_gtw_network_config