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