blob: d7d2b2484f7727ca7375aa6fccd187553f6809f7 [file] [log] [blame]
Tatyana Leontovichecd491d2017-09-13 13:51:12 +03001# 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 'mcp-ocata-local-repo-dvr/underlay--meta-data.yaml' as CLOUDINIT_META_DATA with context %}
5{% import 'mcp-ocata-local-repo-dvr/underlay--user-data-cfg01.yaml' as CLOUDINIT_USER_DATA_CFG01 with context %}
6{% import 'mcp-ocata-local-repo-dvr/underlay--user-data1604.yaml' as CLOUDINIT_USER_DATA_1604 with context %}
7{% import 'mcp-ocata-local-repo-dvr/underlay--user-data-apt01.yaml' as CLOUDINIT_USER_DATA_APT01 with context %}
8
9
10---
11aliases:
12 - &interface_model {{ os_env('INTERFACE_MODEL', 'virtio') }}
13 - &cloudinit_meta_data {{ CLOUDINIT_META_DATA }}
14 - &cloudinit_user_data_cfg01 {{ CLOUDINIT_USER_DATA_CFG01 }}
15 - &cloudinit_user_data_1604 {{ CLOUDINIT_USER_DATA_1604 }}
16 - &cloudinit_user_data_apt01 {{ CLOUDINIT_USER_DATA_APT01 }}
17
Dennis Dmitriev3fbbc7f2017-12-21 15:42:14 +020018{% set LAB_CONFIG_NAME = os_env('LAB_CONFIG_NAME', 'mcp-ocata-local-repo-dvr') %}
19{% set DOMAIN_NAME = os_env('DOMAIN_NAME', LAB_CONFIG_NAME + '.local') %}
Tatyana Leontovichecd491d2017-09-13 13:51:12 +030020{% set HOSTNAME_APT01 = os_env('HOSTNAME_APT01', 'apt01.' + DOMAIN_NAME) %}
21{% set HOSTNAME_CFG01 = os_env('HOSTNAME_CFG01', 'cfg01.' + DOMAIN_NAME) %}
22{% set HOSTNAME_CTL01 = os_env('HOSTNAME_CTL01', 'ctl01.' + DOMAIN_NAME) %}
23{% set HOSTNAME_CTL02 = os_env('HOSTNAME_CTL02', 'ctl02.' + DOMAIN_NAME) %}
24{% set HOSTNAME_CTL03 = os_env('HOSTNAME_CTL03', 'ctl03.' + DOMAIN_NAME) %}
25{% set HOSTNAME_CMP01 = os_env('HOSTNAME_CMP01', 'cmp01.' + DOMAIN_NAME) %}
26{% set HOSTNAME_CMP02 = os_env('HOSTNAME_CMP02', 'cmp02.' + DOMAIN_NAME) %}
27{% set HOSTNAME_MON01 = os_env('HOSTNAME_MON01', 'mon01.' + DOMAIN_NAME) %}
28{% set HOSTNAME_MON02 = os_env('HOSTNAME_MON02', 'mon02.' + DOMAIN_NAME) %}
29{% set HOSTNAME_MON03 = os_env('HOSTNAME_MON03', 'mon03.' + DOMAIN_NAME) %}
30{% set HOSTNAME_GTW01 = os_env('HOSTNAME_GTW01', 'gtw01.' + DOMAIN_NAME) %}
31{% set HOSTNAME_PRX01 = os_env('HOSTNAME_PRX01', 'prx01.' + DOMAIN_NAME) %}
32
33template:
34 devops_settings:
35 env_name: {{ os_env('ENV_NAME', 'mcp-ocata-local-repo-dvr_' + REPOSITORY_SUITE + "_" + os_env('BUILD_NUMBER', '')) }}
36
37 address_pools:
38 private-pool01:
39 net: {{ os_env('PRIVATE_ADDRESS_POOL01', '10.60.0.0/16:24') }}
40 params:
41 ip_reserved:
42 l2_network_device: +1
43 default_{{ HOSTNAME_APT01 }}: +122
44 default_{{ HOSTNAME_CFG01 }}: +100
45 default_{{ HOSTNAME_CTL01 }}: +101
46 default_{{ HOSTNAME_CTL02 }}: +102
47 default_{{ HOSTNAME_CTL03 }}: +103
48 default_{{ HOSTNAME_CMP01 }}: +105
49 default_{{ HOSTNAME_CMP02 }}: +106
50 default_{{ HOSTNAME_MON01 }}: +107
51 default_{{ HOSTNAME_MON02 }}: +108
52 default_{{ HOSTNAME_MON03 }}: +109
53 default_{{ HOSTNAME_GTW01 }}: +110
54 default_{{ HOSTNAME_PRX01 }}: +121
55 ip_ranges:
56 dhcp: [+90, -10]
57
58 admin-pool01:
59 net: {{ os_env('ADMIN_ADDRESS_POOL01', '10.70.0.0/16:24') }}
60 params:
61 ip_reserved:
62 gateway: +122
63 l2_network_device: +1
64 default_{{ HOSTNAME_APT01 }}: +122
65 default_{{ HOSTNAME_CFG01 }}: +90
66 default_{{ HOSTNAME_CTL01 }}: +101
67 default_{{ HOSTNAME_CTL02 }}: +102
68 default_{{ HOSTNAME_CTL03 }}: +103
69 default_{{ HOSTNAME_CMP01 }}: +105
70 default_{{ HOSTNAME_CMP02 }}: +106
71 default_{{ HOSTNAME_MON01 }}: +107
72 default_{{ HOSTNAME_MON02 }}: +108
73 default_{{ HOSTNAME_MON03 }}: +109
74 default_{{ HOSTNAME_GTW01 }}: +110
75 default_{{ HOSTNAME_PRX01 }}: +121
76 ip_ranges:
77 dhcp: [+90, -10]
78
79 tenant-pool01:
80 net: {{ os_env('TENANT_ADDRESS_POOL01', '10.80.0.0/16:24') }}
81 params:
82 ip_reserved:
83 l2_network_device: +1
84 default_{{ HOSTNAME_APT01 }}: +122
85 default_{{ HOSTNAME_CFG01 }}: +100
86 default_{{ HOSTNAME_CTL01 }}: +101
87 default_{{ HOSTNAME_CTL02 }}: +102
88 default_{{ HOSTNAME_CTL03 }}: +103
89 default_{{ HOSTNAME_CMP01 }}: +105
90 default_{{ HOSTNAME_CMP02 }}: +106
91 default_{{ HOSTNAME_MON01 }}: +107
92 default_{{ HOSTNAME_MON02 }}: +108
93 default_{{ HOSTNAME_MON03 }}: +109
94 default_{{ HOSTNAME_GTW01 }}: +110
95 default_{{ HOSTNAME_PRX01 }}: +121
96 ip_ranges:
97 dhcp: [+10, -10]
98 external-pool01:
99 net: {{ os_env('EXTERNAL_ADDRESS_POOL01', '10.90.0.0/16:24') }}
100 params:
101 ip_reserved:
102 l2_network_device: +1
103 default_{{ HOSTNAME_APT01 }}: +122
104 ip_ranges:
105 dhcp: [+90, -10]
106
107 groups:
108 - name: default
109 driver:
110 name: devops.driver.libvirt
111 params:
112 connection_string: !os_env CONNECTION_STRING, qemu:///system
113 storage_pool_name: !os_env STORAGE_POOL_NAME, default
114 stp: False
115 hpet: False
116 enable_acpi: true
117 use_host_cpu: !os_env DRIVER_USE_HOST_CPU, true
118 use_hugepages: !os_env DRIVER_USE_HUGEPAGES, false
119
120 network_pools:
121 admin: admin-pool01
122 private: private-pool01
123 tenant: tenant-pool01
124 external: external-pool01
125
126 l2_network_devices:
127 private:
128 address_pool: private-pool01
129 dhcp: true
130
131 admin:
132 address_pool: admin-pool01
133 dhcp: true
134
135 tenant:
136 address_pool: tenant-pool01
137 dhcp: true
138
139 external:
140 address_pool: external-pool01
141 dhcp: true
142 forward:
143 mode: nat
Dennis Dmitrievf00a3842018-01-24 16:44:26 +0200144
Tatyana Leontovichecd491d2017-09-13 13:51:12 +0300145 group_volumes:
146 - name: cloudimage1604 # This name is used for 'backing_store' option for node volumes.
Dennis Dmitrievf00a3842018-01-24 16:44:26 +0200147 source_image: !os_env IMAGE_PATH1604 # https://cloud-images.ubuntu.com/xenial/current/xenial-server-cloudimg-amd64-disk1.img
148 format: qcow2
149 - name: cfg01_day01_image # Pre-configured day01 image
150 source_image: {{ os_env('IMAGE_PATH_CFG01_DAY01', os_env('IMAGE_PATH1604')) }} # http://images.mirantis.com/cfg01-day01.qcow2 or fallback to IMAGE_PATH1604
Tatyana Leontovichecd491d2017-09-13 13:51:12 +0300151 format: qcow2
152
153 nodes:
154 - name: {{ HOSTNAME_APT01 }}
155 role: salt_minion
156 params:
157 vcpu: !os_env SLAVE_NODE_CPU, 2
Dennis Dmitrievb1822792017-10-24 18:22:23 +0300158 memory: !os_env SLAVE_NODE_MEMORY, 4096
Tatyana Leontovichecd491d2017-09-13 13:51:12 +0300159 boot:
160 - hd
161 cloud_init_volume_name: iso
162 cloud_init_iface_up: ens3
163 volumes:
164 - name: system
165 capacity: !os_env NODE_VOLUME_SIZE, 150
Dennis Dmitrieve02eecf2018-01-29 15:43:39 +0200166 backing_store: cloudimage1604
Tatyana Leontovichecd491d2017-09-13 13:51:12 +0300167 format: qcow2
168 - name: iso # Volume with name 'iso' will be used
169 # for store image with cloud-init metadata.
170 capacity: 1
171 format: raw
172 device: cdrom
173 bus: ide
174 cloudinit_meta_data: *cloudinit_meta_data
175 cloudinit_user_data: *cloudinit_user_data_apt01
176
177 interfaces:
178 - label: ens3
179 l2_network_device: admin
180 interface_model: *interface_model
181 - label: ens4
182 l2_network_device: private
183 interface_model: *interface_model
184 - label: ens5
185 l2_network_device: tenant
186 interface_model: *interface_model
187 - label: ens6
188 l2_network_device: external
189 interface_model: *interface_model
190 network_config:
191 ens3:
192 networks:
193 - admin
194 ens4:
195 networks:
196 - private
197 ens5:
198 networks:
199 - tenant
200 ens6:
201 networks:
202 - external
203
204 - name: {{ HOSTNAME_CFG01 }}
205 role: salt_master
206 params:
207 vcpu: !os_env SLAVE_NODE_CPU, 2
Dennis Dmitriev4a43e9a2017-11-10 13:08:40 +0200208 memory: !os_env SLAVE_NODE_MEMORY, 4096
Tatyana Leontovichecd491d2017-09-13 13:51:12 +0300209 boot:
210 - hd
211 cloud_init_volume_name: iso
212 cloud_init_iface_up: ens3
213 volumes:
214 - name: system
215 capacity: !os_env NODE_VOLUME_SIZE, 150
Dennis Dmitrieve02eecf2018-01-29 15:43:39 +0200216 backing_store: cfg01_day01_image
Tatyana Leontovichecd491d2017-09-13 13:51:12 +0300217 format: qcow2
218 - name: iso # Volume with name 'iso' will be used
219 # for store image with cloud-init metadata.
220 capacity: 1
221 format: raw
222 device: cdrom
223 bus: ide
224 cloudinit_meta_data: *cloudinit_meta_data
225 cloudinit_user_data: *cloudinit_user_data_cfg01
226
227 interfaces:
228 - label: ens3
229 l2_network_device: admin
230 interface_model: *interface_model
231 - label: ens4
232 l2_network_device: private
233 interface_model: *interface_model
234 network_config:
235 ens3:
236 networks:
237 - admin
238 ens4:
239 networks:
240 - private
241
242 - name: {{ HOSTNAME_CTL01 }}
243 role: salt_minion
244 params:
245 vcpu: !os_env SLAVE_NODE_CPU, 2
Dennis Dmitriev0937c392018-01-29 18:46:40 +0200246 memory: !os_env SLAVE_NODE_MEMORY, 12288
Tatyana Leontovichecd491d2017-09-13 13:51:12 +0300247 boot:
248 - hd
249 cloud_init_volume_name: iso
250 cloud_init_iface_up: ens3
251 volumes:
252 - name: system
253 capacity: !os_env NODE_VOLUME_SIZE, 150
254 backing_store: cloudimage1604
255 format: qcow2
256 - name: cinder
257 capacity: 50
258 format: qcow2
259 - name: iso # Volume with name 'iso' will be used
260 # for store image with cloud-init metadata.
261 capacity: 1
262 format: raw
263 device: cdrom
264 bus: ide
265 cloudinit_meta_data: *cloudinit_meta_data
266 cloudinit_user_data: *cloudinit_user_data_1604
267
268 interfaces: &interfaces
269 - label: ens3
270 l2_network_device: admin
271 interface_model: *interface_model
272 - label: ens4
273 l2_network_device: private
274 interface_model: *interface_model
275 network_config: &network_config
276 ens3:
277 networks:
278 - admin
279 ens4:
280 networks:
281 - private
282
283 - name: {{ HOSTNAME_CTL02 }}
284 role: salt_minion
285 params:
286 vcpu: !os_env SLAVE_NODE_CPU, 2
Dennis Dmitriev0937c392018-01-29 18:46:40 +0200287 memory: !os_env SLAVE_NODE_MEMORY, 12288
Tatyana Leontovichecd491d2017-09-13 13:51:12 +0300288 boot:
289 - hd
290 cloud_init_volume_name: iso
291 cloud_init_iface_up: ens3
292 volumes:
293 - name: system
294 capacity: !os_env NODE_VOLUME_SIZE, 150
295 backing_store: cloudimage1604
296 format: qcow2
297 - name: cinder
298 capacity: 50
299 format: qcow2
300 - name: iso # Volume with name 'iso' will be used
301 # for store image with cloud-init metadata.
302 capacity: 1
303 format: raw
304 device: cdrom
305 bus: ide
306 cloudinit_meta_data: *cloudinit_meta_data
307 cloudinit_user_data: *cloudinit_user_data_1604
308
309 interfaces: *interfaces
310 network_config: *network_config
311
312 - name: {{ HOSTNAME_CTL03 }}
313 role: salt_minion
314 params:
315 vcpu: !os_env SLAVE_NODE_CPU, 2
Dennis Dmitriev0937c392018-01-29 18:46:40 +0200316 memory: !os_env SLAVE_NODE_MEMORY, 12288
Tatyana Leontovichecd491d2017-09-13 13:51:12 +0300317 boot:
318 - hd
319 cloud_init_volume_name: iso
320 cloud_init_iface_up: ens3
321 volumes:
322 - name: system
323 capacity: !os_env NODE_VOLUME_SIZE, 150
324 backing_store: cloudimage1604
325 format: qcow2
326 - name: cinder
327 capacity: 50
328 format: qcow2
329 - name: iso # Volume with name 'iso' will be used
330 # for store image with cloud-init metadata.
331 capacity: 1
332 format: raw
333 device: cdrom
334 bus: ide
335 cloudinit_meta_data: *cloudinit_meta_data
336 cloudinit_user_data: *cloudinit_user_data_1604
337
338 interfaces: *interfaces
339 network_config: *network_config
340
341 - name: {{ HOSTNAME_MON01 }}
342 role: salt_minion
343 params:
344 vcpu: !os_env SLAVE_NODE_CPU, 3
345 memory: !os_env SLAVE_NODE_MEMORY, 2048
346 boot:
347 - hd
348 cloud_init_volume_name: iso
349 cloud_init_iface_up: ens3
350 volumes:
351 - name: system
352 capacity: !os_env NODE_VOLUME_SIZE, 150
353 backing_store: cloudimage1604
354 format: qcow2
355 - name: iso # Volume with name 'iso' will be used
356 # for store image with cloud-init metadata.
357 capacity: 1
358 format: raw
359 device: cdrom
360 bus: ide
361 cloudinit_meta_data: !include underlay--meta-data.yaml
362 cloudinit_user_data: !include underlay--user-data1604.yaml
363
364 interfaces: *interfaces
365 network_config: *network_config
366
367 - name: {{ HOSTNAME_MON02 }}
368 role: salt_minion
369 params:
370 vcpu: !os_env SLAVE_NODE_CPU, 3
371 memory: !os_env SLAVE_NODE_MEMORY, 2048
372 boot:
373 - hd
374 cloud_init_volume_name: iso
375 cloud_init_iface_up: ens3
376 volumes:
377 - name: system
378 capacity: !os_env NODE_VOLUME_SIZE, 150
379 backing_store: cloudimage1604
380 format: qcow2
381 - name: iso # Volume with name 'iso' will be used
382 # for store image with cloud-init metadata.
383 capacity: 1
384 format: raw
385 device: cdrom
386 bus: ide
387 cloudinit_meta_data: !include underlay--meta-data.yaml
388 cloudinit_user_data: !include underlay--user-data1604.yaml
389
390 interfaces: *interfaces
391 network_config: *network_config
392
393 - name: {{ HOSTNAME_MON03 }}
394 role: salt_minion
395 params:
396 vcpu: !os_env SLAVE_NODE_CPU, 3
397 memory: !os_env SLAVE_NODE_MEMORY, 2048
398 boot:
399 - hd
400 cloud_init_volume_name: iso
401 cloud_init_iface_up: ens3
402 volumes:
403 - name: system
404 capacity: !os_env NODE_VOLUME_SIZE, 150
405 backing_store: cloudimage1604
406 format: qcow2
407 - name: iso # Volume with name 'iso' will be used
408 # for store image with cloud-init metadata.
409 capacity: 1
410 format: raw
411 device: cdrom
412 bus: ide
413 cloudinit_meta_data: !include underlay--meta-data.yaml
414 cloudinit_user_data: !include underlay--user-data1604.yaml
415
416 interfaces: *interfaces
417 network_config: *network_config
418
419 - name: {{ HOSTNAME_PRX01 }}
420 role: salt_minion
421 params:
422 vcpu: !os_env SLAVE_NODE_CPU, 1
423 memory: !os_env SLAVE_NODE_MEMORY, 8192
424 boot:
425 - hd
426 cloud_init_volume_name: iso
427 cloud_init_iface_up: ens3
428 volumes:
429 - name: system
430 capacity: !os_env NODE_VOLUME_SIZE, 150
431 backing_store: cloudimage1604
432 format: qcow2
433 - name: cinder
434 capacity: 50
435 format: qcow2
436 - name: iso # Volume with name 'iso' will be used
437 # for store image with cloud-init metadata.
438 capacity: 1
439 format: raw
440 device: cdrom
441 bus: ide
442 cloudinit_meta_data: *cloudinit_meta_data
443 cloudinit_user_data: *cloudinit_user_data_1604
444
445 interfaces: *interfaces
446 network_config: *network_config
447
448
449 - name: {{ HOSTNAME_CMP01 }}
450 role: salt_minion
451 params:
452 vcpu: !os_env SLAVE_NODE_CPU, 3
453 memory: !os_env SLAVE_NODE_MEMORY, 4096
454 boot:
455 - hd
456 cloud_init_volume_name: iso
457 cloud_init_iface_up: ens3
458 volumes:
459 - name: system
460 capacity: !os_env NODE_VOLUME_SIZE, 150
461 backing_store: cloudimage1604
462 format: qcow2
463 - name: iso # Volume with name 'iso' will be used
464 # for store image with cloud-init metadata.
465 capacity: 1
466 format: raw
467 device: cdrom
468 bus: ide
469 cloudinit_meta_data: *cloudinit_meta_data
470 cloudinit_user_data: *cloudinit_user_data_1604
471
472
473 interfaces: &all_interfaces
474 - label: ens3
475 l2_network_device: admin
476 interface_model: *interface_model
477 - label: ens4
478 l2_network_device: private
479 interface_model: *interface_model
480 - label: ens5
481 l2_network_device: tenant
482 interface_model: *interface_model
483 - label: ens6
484 l2_network_device: external
485 interface_model: *interface_model
486 network_config: &all_network_config
487 ens3:
488 networks:
489 - admin
490 ens4:
491 networks:
492 - private
493 ens5:
494 networks:
495 - tenant
496
497 - name: {{ HOSTNAME_CMP02 }}
498 role: salt_minion
499 params:
500 vcpu: !os_env SLAVE_NODE_CPU, 3
501 memory: !os_env SLAVE_NODE_MEMORY, 4096
502 boot:
503 - hd
504 cloud_init_volume_name: iso
505 cloud_init_iface_up: ens3
506 volumes:
507 - name: system
508 capacity: !os_env NODE_VOLUME_SIZE, 150
509 backing_store: cloudimage1604
510 format: qcow2
511 - name: iso # Volume with name 'iso' will be used
512 # for store image with cloud-init metadata.
513 capacity: 1
514 format: raw
515 device: cdrom
516 bus: ide
517 cloudinit_meta_data: *cloudinit_meta_data
518 cloudinit_user_data: *cloudinit_user_data_1604
519
520 interfaces: *all_interfaces
521 network_config: *all_network_config
522
523 - name: {{ HOSTNAME_GTW01 }}
524 role: salt_minion
525 params:
526 vcpu: !os_env SLAVE_NODE_CPU, 1
527 memory: !os_env SLAVE_NODE_MEMORY, 2048
528 boot:
529 - hd
530 cloud_init_volume_name: iso
531 cloud_init_iface_up: ens3
532 volumes:
533 - name: system
534 capacity: !os_env NODE_VOLUME_SIZE, 150
535 backing_store: cloudimage1604
536 format: qcow2
537 - name: iso # Volume with name 'iso' will be used
538 # for store image with cloud-init metadata.
539 capacity: 1
540 format: raw
541 device: cdrom
542 bus: ide
543 cloudinit_meta_data: *cloudinit_meta_data
544 cloudinit_user_data: *cloudinit_user_data_1604
545
546 interfaces: *all_interfaces
547 network_config: *all_network_config