blob: 34760e580a48cd0e84e8c3a40e4d93c6fb5930c0 [file] [log] [blame]
Dennis Dmitriev75776c52017-12-26 18:22:53 +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 'virtual-mcp-ocata-ceph-offline/underlay--meta-data.yaml' as CLOUDINIT_META_DATA with context %}
5{% import 'virtual-mcp-ocata-ceph-offline/underlay--user-data-cfg01.yaml' as CLOUDINIT_USER_DATA_CFG01 with context %}
6{% import 'virtual-mcp-ocata-ceph-offline/underlay--user-data1604.yaml' as CLOUDINIT_USER_DATA_1604 with context %}
7{% import 'virtual-mcp-ocata-ceph-offline/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
18{% set LAB_CONFIG_NAME = os_env('LAB_CONFIG_NAME', 'virtual-mcp-ocata-ceph-offline') %}
19{% set DOMAIN_NAME = os_env('DOMAIN_NAME', LAB_CONFIG_NAME + '.local') %}
20{% 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_CMN01 = os_env('HOSTNAME_CMN01', 'cmn01.' + DOMAIN_NAME) %}
28{% set HOSTNAME_CMN02 = os_env('HOSTNAME_CMN02', 'cmn02.' + DOMAIN_NAME) %}
29{% set HOSTNAME_CMN03 = os_env('HOSTNAME_CMN03', 'cmn03.' + DOMAIN_NAME) %}
30{% set HOSTNAME_OSD01 = os_env('HOSTNAME_OSD01', 'osd01.' + DOMAIN_NAME) %}
31{% set HOSTNAME_OSD02 = os_env('HOSTNAME_OSD02', 'osd02.' + DOMAIN_NAME) %}
32{% set HOSTNAME_GTW01 = os_env('HOSTNAME_GTW01', 'gtw01.' + DOMAIN_NAME) %}
33{% set HOSTNAME_PRX01 = os_env('HOSTNAME_PRX01', 'prx01.' + DOMAIN_NAME) %}
34
35template:
36 devops_settings:
37 env_name: {{ os_env('ENV_NAME', 'virtual-mcp-ocata-ceph-offline_' + REPOSITORY_SUITE + "_" + os_env('BUILD_NUMBER', '')) }}
38
39 address_pools:
40 private-pool01:
41 net: {{ os_env('PRIVATE_ADDRESS_POOL01', '10.60.0.0/16:24') }}
42 params:
43 ip_reserved:
44 l2_network_device: +1
45 default_{{ HOSTNAME_APT01 }}: +122
46 default_{{ HOSTNAME_CFG01 }}: +100
47 default_{{ HOSTNAME_CTL01 }}: +101
48 default_{{ HOSTNAME_CTL02 }}: +102
49 default_{{ HOSTNAME_CTL03 }}: +103
50 default_{{ HOSTNAME_CMP01 }}: +105
51 default_{{ HOSTNAME_CMP02 }}: +106
52 default_{{ HOSTNAME_OSD01 }}: +94
53 default_{{ HOSTNAME_OSD02 }}: +95
54 default_{{ HOSTNAME_CMN01 }}: +96
55 default_{{ HOSTNAME_CMN02 }}: +97
56 default_{{ HOSTNAME_CMN03 }}: +98
57 default_{{ HOSTNAME_GTW01 }}: +110
58 default_{{ HOSTNAME_PRX01 }}: +121
59 ip_ranges:
60 dhcp: [+90, -10]
61
62 admin-pool01:
63 net: {{ os_env('ADMIN_ADDRESS_POOL01', '10.70.0.0/16:24') }}
64 params:
65 ip_reserved:
66 gateway: +122
67 l2_network_device: +1
68 default_{{ HOSTNAME_APT01 }}: +122
69 default_{{ HOSTNAME_CFG01 }}: +90
70 default_{{ HOSTNAME_CTL01 }}: +101
71 default_{{ HOSTNAME_CTL02 }}: +102
72 default_{{ HOSTNAME_CTL03 }}: +103
73 default_{{ HOSTNAME_CMP01 }}: +105
74 default_{{ HOSTNAME_CMP02 }}: +106
75 default_{{ HOSTNAME_OSD01 }}: +94
76 default_{{ HOSTNAME_OSD02 }}: +95
77 default_{{ HOSTNAME_CMN01 }}: +96
78 default_{{ HOSTNAME_CMN02 }}: +97
79 default_{{ HOSTNAME_CMN03 }}: +98
80 default_{{ HOSTNAME_GTW01 }}: +110
81 default_{{ HOSTNAME_PRX01 }}: +121
82 ip_ranges:
83 dhcp: [+90, -10]
84
85 tenant-pool01:
86 net: {{ os_env('TENANT_ADDRESS_POOL01', '10.80.0.0/16:24') }}
87 params:
88 ip_reserved:
89 l2_network_device: +1
90 default_{{ HOSTNAME_APT01 }}: +122
91 default_{{ HOSTNAME_CFG01 }}: +100
92 default_{{ HOSTNAME_CTL01 }}: +101
93 default_{{ HOSTNAME_CTL02 }}: +102
94 default_{{ HOSTNAME_CTL03 }}: +103
95 default_{{ HOSTNAME_CMP01 }}: +105
96 default_{{ HOSTNAME_CMP02 }}: +106
97 default_{{ HOSTNAME_OSD01 }}: +94
98 default_{{ HOSTNAME_OSD02 }}: +95
99 default_{{ HOSTNAME_CMN01 }}: +96
100 default_{{ HOSTNAME_CMN02 }}: +97
101 default_{{ HOSTNAME_CMN03 }}: +98
102 default_{{ HOSTNAME_GTW01 }}: +110
103 default_{{ HOSTNAME_PRX01 }}: +121
104 ip_ranges:
105 dhcp: [+10, -10]
106 external-pool01:
107 net: {{ os_env('EXTERNAL_ADDRESS_POOL01', '10.90.0.0/16:24') }}
108 params:
109 ip_reserved:
110 l2_network_device: +1
111 default_{{ HOSTNAME_APT01 }}: +122
112 default_{{ HOSTNAME_CFG01 }}: +100
113 default_{{ HOSTNAME_CTL01 }}: +101
114 default_{{ HOSTNAME_CTL02 }}: +102
115 default_{{ HOSTNAME_CTL03 }}: +103
116 default_{{ HOSTNAME_CMP01 }}: +105
117 default_{{ HOSTNAME_CMP02 }}: +106
118 default_{{ HOSTNAME_OSD01 }}: +94
119 default_{{ HOSTNAME_OSD02 }}: +95
120 default_{{ HOSTNAME_CMN01 }}: +96
121 default_{{ HOSTNAME_CMN02 }}: +97
122 default_{{ HOSTNAME_CMN03 }}: +98
123 default_{{ HOSTNAME_GTW01 }}: +110
124 default_{{ HOSTNAME_PRX01 }}: +121
125 ip_ranges:
126 dhcp: [+90, -10]
127
128 groups:
129 - name: default
130 driver:
131 name: devops.driver.libvirt
132 params:
133 connection_string: !os_env CONNECTION_STRING, qemu:///system
134 storage_pool_name: !os_env STORAGE_POOL_NAME, default
135 stp: False
136 hpet: False
137 enable_acpi: true
138 use_host_cpu: !os_env DRIVER_USE_HOST_CPU, true
139 use_hugepages: !os_env DRIVER_USE_HUGEPAGES, false
140
141 network_pools:
142 admin: admin-pool01
143 private: private-pool01
144 tenant: tenant-pool01
145 external: external-pool01
146
147 l2_network_devices:
148 private:
149 address_pool: private-pool01
150 dhcp: true
151
152 admin:
153 address_pool: admin-pool01
154 dhcp: true
155 forward:
156 mode: nat
157
158 tenant:
159 address_pool: tenant-pool01
160 dhcp: true
161
162 external:
163 address_pool: external-pool01
164 dhcp: true
165 forward:
166 mode: nat
167
168 group_volumes:
169 - name: cloudimage1604 # This name is used for 'backing_store' option for node volumes.
Dennis Dmitrievf00a3842018-01-24 16:44:26 +0200170 source_image: !os_env IMAGE_PATH1604 # https://cloud-images.ubuntu.com/xenial/current/xenial-server-cloudimg-amd64-disk1.img
171 format: qcow2
172 - name: cfg01_day01_image # Pre-configured day01 image
173 source_image: {{ os_env('IMAGE_PATH_CFG01_DAY01', os_env('IMAGE_PATH1604')) }} # http://images.mirantis.com/cfg01-day01.qcow2 or fallback to IMAGE_PATH1604
Dennis Dmitriev75776c52017-12-26 18:22:53 +0200174 format: qcow2
175
176 nodes:
177 - name: {{ HOSTNAME_APT01 }}
178 role: salt_minion
179 params:
180 vcpu: !os_env SLAVE_NODE_CPU, 2
181 memory: !os_env SLAVE_NODE_MEMORY, 4096
182 boot:
183 - hd
184 cloud_init_volume_name: iso
185 cloud_init_iface_up: ens3
186 volumes:
187 - name: system
188 capacity: !os_env NODE_VOLUME_SIZE, 150
Dennis Dmitrieve02eecf2018-01-29 15:43:39 +0200189 backing_store: cloudimage1604
Dennis Dmitriev75776c52017-12-26 18:22:53 +0200190 format: qcow2
191 - name: iso # Volume with name 'iso' will be used
192 # for store image with cloud-init metadata.
193 capacity: 1
194 format: raw
195 device: cdrom
196 bus: ide
197 cloudinit_meta_data: *cloudinit_meta_data
198 cloudinit_user_data: *cloudinit_user_data_apt01
199
200 interfaces:
201 - label: ens3
202 l2_network_device: admin
203 interface_model: *interface_model
204 - label: ens4
205 l2_network_device: private
206 interface_model: *interface_model
207 - label: ens5
208 l2_network_device: tenant
209 interface_model: *interface_model
210 - label: ens6
211 l2_network_device: external
212 interface_model: *interface_model
213 network_config:
214 ens3:
215 networks:
216 - admin
217 ens4:
218 networks:
219 - private
220 ens5:
221 networks:
222 - tenant
223 ens6:
224 networks:
225 - external
226
227 - name: {{ HOSTNAME_CFG01 }}
228 role: salt_master
229 params:
230 vcpu: !os_env SLAVE_NODE_CPU, 2
231 memory: !os_env SLAVE_NODE_MEMORY, 4096
232 boot:
233 - hd
234 cloud_init_volume_name: iso
235 cloud_init_iface_up: ens3
236 volumes:
237 - name: system
238 capacity: !os_env NODE_VOLUME_SIZE, 150
Dennis Dmitrieve02eecf2018-01-29 15:43:39 +0200239 backing_store: cfg01_day01_image
Dennis Dmitriev75776c52017-12-26 18:22:53 +0200240 format: qcow2
241 - name: iso # Volume with name 'iso' will be used
242 # for store image with cloud-init metadata.
243 capacity: 1
244 format: raw
245 device: cdrom
246 bus: ide
247 cloudinit_meta_data: *cloudinit_meta_data
248 cloudinit_user_data: *cloudinit_user_data_cfg01
249
250 interfaces:
251 - label: ens3
252 l2_network_device: admin
253 interface_model: *interface_model
254 - label: ens4
255 l2_network_device: private
256 interface_model: *interface_model
257 network_config:
258 ens3:
259 networks:
260 - admin
261 ens4:
262 networks:
263 - private
264
265 - name: {{ HOSTNAME_CTL01 }}
266 role: salt_minion
267 params:
268 vcpu: !os_env SLAVE_NODE_CPU, 3
269 memory: !os_env SLAVE_NODE_MEMORY, 16384
270 boot:
271 - hd
272 cloud_init_volume_name: iso
273 cloud_init_iface_up: ens3
274 volumes:
275 - name: system
276 capacity: !os_env NODE_VOLUME_SIZE, 150
277 backing_store: cloudimage1604
278 format: qcow2
279 - name: cinder
280 capacity: 50
281 format: qcow2
282 - name: iso # Volume with name 'iso' will be used
283 # for store image with cloud-init metadata.
284 capacity: 1
285 format: raw
286 device: cdrom
287 bus: ide
288 cloudinit_meta_data: *cloudinit_meta_data
289 cloudinit_user_data: *cloudinit_user_data_1604
290
291 interfaces: &interfaces
292 - label: ens3
293 l2_network_device: admin
294 interface_model: *interface_model
295 - label: ens4
296 l2_network_device: private
297 interface_model: *interface_model
298 network_config: &network_config
299 ens3:
300 networks:
301 - admin
302 ens4:
303 networks:
304 - private
305
306 - name: {{ HOSTNAME_CTL02 }}
307 role: salt_minion
308 params:
309 vcpu: !os_env SLAVE_NODE_CPU, 3
310 memory: !os_env SLAVE_NODE_MEMORY, 16384
311 boot:
312 - hd
313 cloud_init_volume_name: iso
314 cloud_init_iface_up: ens3
315 volumes:
316 - name: system
317 capacity: !os_env NODE_VOLUME_SIZE, 150
318 backing_store: cloudimage1604
319 format: qcow2
320 - name: cinder
321 capacity: 50
322 format: qcow2
323 - name: iso # Volume with name 'iso' will be used
324 # for store image with cloud-init metadata.
325 capacity: 1
326 format: raw
327 device: cdrom
328 bus: ide
329 cloudinit_meta_data: *cloudinit_meta_data
330 cloudinit_user_data: *cloudinit_user_data_1604
331
332 interfaces: *interfaces
333 network_config: *network_config
334
335 - name: {{ HOSTNAME_CTL03 }}
336 role: salt_minion
337 params:
338 vcpu: !os_env SLAVE_NODE_CPU, 3
339 memory: !os_env SLAVE_NODE_MEMORY, 16384
340 boot:
341 - hd
342 cloud_init_volume_name: iso
343 cloud_init_iface_up: ens3
344 volumes:
345 - name: system
346 capacity: !os_env NODE_VOLUME_SIZE, 150
347 backing_store: cloudimage1604
348 format: qcow2
349 - name: cinder
350 capacity: 50
351 format: qcow2
352 - name: iso # Volume with name 'iso' will be used
353 # for store image with cloud-init metadata.
354 capacity: 1
355 format: raw
356 device: cdrom
357 bus: ide
358 cloudinit_meta_data: *cloudinit_meta_data
359 cloudinit_user_data: *cloudinit_user_data_1604
360
361 interfaces: *interfaces
362 network_config: *network_config
363
364 - name: {{ HOSTNAME_CMN01 }}
365 role: salt_minion
366 params:
367 vcpu: !os_env SLAVE_NODE_CPU, 3
368 memory: !os_env SLAVE_NODE_MEMORY, 2048
369 boot:
370 - hd
371 cloud_init_volume_name: iso
372 cloud_init_iface_up: ens3
373 volumes:
374 - name: system
375 capacity: !os_env NODE_VOLUME_SIZE, 150
376 backing_store: cloudimage1604
377 format: qcow2
378 - name: iso # Volume with name 'iso' will be used
379 # for store image with cloud-init metadata.
380 capacity: 1
381 format: raw
382 device: cdrom
383 bus: ide
384 cloudinit_meta_data: *cloudinit_meta_data
385 cloudinit_user_data: *cloudinit_user_data_1604
386
387 interfaces: *interfaces
388 network_config: *network_config
389
390 - name: {{ HOSTNAME_CMN02 }}
391 role: salt_minion
392 params:
393 vcpu: !os_env SLAVE_NODE_CPU, 3
394 memory: !os_env SLAVE_NODE_MEMORY, 2048
395 boot:
396 - hd
397 cloud_init_volume_name: iso
398 cloud_init_iface_up: ens3
399 volumes:
400 - name: system
401 capacity: !os_env NODE_VOLUME_SIZE, 150
402 backing_store: cloudimage1604
403 format: qcow2
404 - name: iso # Volume with name 'iso' will be used
405 # for store image with cloud-init metadata.
406 capacity: 1
407 format: raw
408 device: cdrom
409 bus: ide
410 cloudinit_meta_data: *cloudinit_meta_data
411 cloudinit_user_data: *cloudinit_user_data_1604
412
413 interfaces: *interfaces
414 network_config: *network_config
415
416 - name: {{ HOSTNAME_CMN03 }}
417 role: salt_minion
418 params:
419 vcpu: !os_env SLAVE_NODE_CPU, 3
420 memory: !os_env SLAVE_NODE_MEMORY, 2048
421 boot:
422 - hd
423 cloud_init_volume_name: iso
424 cloud_init_iface_up: ens3
425 volumes:
426 - name: system
427 capacity: !os_env NODE_VOLUME_SIZE, 150
428 backing_store: cloudimage1604
429 format: qcow2
430 - name: iso # Volume with name 'iso' will be used
431 # for store image with cloud-init metadata.
432 capacity: 1
433 format: raw
434 device: cdrom
435 bus: ide
436 cloudinit_meta_data: *cloudinit_meta_data
437 cloudinit_user_data: *cloudinit_user_data_1604
438
439 interfaces: *interfaces
440 network_config: *network_config
441
442 - name: {{ HOSTNAME_OSD01 }}
443 role: salt_minion
444 params:
445 vcpu: !os_env SLAVE_NODE_CPU, 3
446 memory: !os_env SLAVE_NODE_MEMORY, 2048
447 boot:
448 - hd
449 cloud_init_volume_name: iso
450 cloud_init_iface_up: ens3
451 volumes:
452 - name: system
453 capacity: !os_env NODE_VOLUME_SIZE, 150
454 backing_store: cloudimage1604
455 format: qcow2
456 - name: cinder
457 capacity: 50
458 format: qcow2
459 - name: iso # Volume with name 'iso' will be used
460 # for store image with cloud-init metadata.
461 capacity: 1
462 format: raw
463 device: cdrom
464 bus: ide
465 cloudinit_meta_data: *cloudinit_meta_data
466 cloudinit_user_data: *cloudinit_user_data_1604
467
468 interfaces: *interfaces
469 network_config: *network_config
470
471 - name: {{ HOSTNAME_OSD02 }}
472 role: salt_minion
473 params:
474 vcpu: !os_env SLAVE_NODE_CPU, 3
475 memory: !os_env SLAVE_NODE_MEMORY, 2048
476 boot:
477 - hd
478 cloud_init_volume_name: iso
479 cloud_init_iface_up: ens3
480 volumes:
481 - name: system
482 capacity: !os_env NODE_VOLUME_SIZE, 150
483 backing_store: cloudimage1604
484 format: qcow2
485 - name: cinder
486 capacity: 50
487 format: qcow2
488 - name: iso # Volume with name 'iso' will be used
489 # for store image with cloud-init metadata.
490 capacity: 1
491 format: raw
492 device: cdrom
493 bus: ide
494 cloudinit_meta_data: *cloudinit_meta_data
495 cloudinit_user_data: *cloudinit_user_data_1604
496
497 interfaces: *interfaces
498 network_config: *network_config
499
500 - name: {{ HOSTNAME_PRX01 }}
501 role: salt_minion
502 params:
503 vcpu: !os_env SLAVE_NODE_CPU, 1
504 memory: !os_env SLAVE_NODE_MEMORY, 2048
505 boot:
506 - hd
507 cloud_init_volume_name: iso
508 cloud_init_iface_up: ens3
509 volumes:
510 - name: system
511 capacity: !os_env NODE_VOLUME_SIZE, 150
512 backing_store: cloudimage1604
513 format: qcow2
514 - name: iso # Volume with name 'iso' will be used
515 # for store image with cloud-init metadata.
516 capacity: 1
517 format: raw
518 device: cdrom
519 bus: ide
520 cloudinit_meta_data: *cloudinit_meta_data
521 cloudinit_user_data: *cloudinit_user_data_1604
522
523 interfaces: *interfaces
524 network_config: *network_config
525
526 - name: {{ HOSTNAME_CMP01 }}
527 role: salt_minion
528 params:
529 vcpu: !os_env SLAVE_NODE_CPU, 3
530 memory: !os_env SLAVE_NODE_MEMORY, 8192
531 boot:
532 - hd
533 cloud_init_volume_name: iso
534 cloud_init_iface_up: ens3
535 volumes:
536 - name: system
537 capacity: !os_env NODE_VOLUME_SIZE, 150
538 backing_store: cloudimage1604
539 format: qcow2
540 - name: iso # Volume with name 'iso' will be used
541 # for store image with cloud-init metadata.
542 capacity: 1
543 format: raw
544 device: cdrom
545 bus: ide
546 cloudinit_meta_data: *cloudinit_meta_data
547 cloudinit_user_data: *cloudinit_user_data_1604
548
549
550 interfaces: &all_interfaces
551 - label: ens3
552 l2_network_device: admin
553 interface_model: *interface_model
554 - label: ens4
555 l2_network_device: private
556 interface_model: *interface_model
557 - label: ens5
558 l2_network_device: tenant
559 interface_model: *interface_model
560 - label: ens6
561 l2_network_device: external
562 interface_model: *interface_model
563 network_config: &all_network_config
564 ens3:
565 networks:
566 - admin
567 ens4:
568 networks:
569 - private
570 ens5:
571 networks:
572 - tenant
573 ens6:
574 networks:
575 - external
576
577 - name: {{ HOSTNAME_CMP02 }}
578 role: salt_minion
579 params:
580 vcpu: !os_env SLAVE_NODE_CPU, 3
581 memory: !os_env SLAVE_NODE_MEMORY, 8192
582 boot:
583 - hd
584 cloud_init_volume_name: iso
585 cloud_init_iface_up: ens3
586 volumes:
587 - name: system
588 capacity: !os_env NODE_VOLUME_SIZE, 150
589 backing_store: cloudimage1604
590 format: qcow2
591 - name: iso # Volume with name 'iso' will be used
592 # for store image with cloud-init metadata.
593 capacity: 1
594 format: raw
595 device: cdrom
596 bus: ide
597 cloudinit_meta_data: *cloudinit_meta_data
598 cloudinit_user_data: *cloudinit_user_data_1604
599
600 interfaces: *all_interfaces
601 network_config: *all_network_config
602
603 - name: {{ HOSTNAME_GTW01 }}
604 role: salt_minion
605 params:
606 vcpu: !os_env SLAVE_NODE_CPU, 8
607 memory: !os_env SLAVE_NODE_MEMORY, 8192
608 boot:
609 - hd
610 cloud_init_volume_name: iso
611 cloud_init_iface_up: ens3
612 volumes:
613 - name: system
614 capacity: !os_env NODE_VOLUME_SIZE, 150
615 backing_store: cloudimage1604
616 format: qcow2
617 - name: iso # Volume with name 'iso' will be used
618 # for store image with cloud-init metadata.
619 capacity: 1
620 format: raw
621 device: cdrom
622 bus: ide
623 cloudinit_meta_data: *cloudinit_meta_data
624 cloudinit_user_data: *cloudinit_user_data_1604
625
626 interfaces: *all_interfaces
627 network_config: *all_network_config