blob: e163d2352fa016b57bf789509734887dc088ecf3 [file] [log] [blame]
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +03001---
2aliases:
3 default_interface_model:
4 - &interface_model !os_env INTERFACE_MODEL, virtio
5
Dennis Dmitriev5ec4d572017-09-27 00:47:54 +03006{% set LAB_CONFIG_NAME = os_env('LAB_CONFIG_NAME', 'virtual-mcp10-dvr') %}
7{% set DOMAIN_NAME = os_env('DOMAIN_NAME', LAB_CONFIG_NAME) + '.local' %}
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +03008{% set HOSTNAME_CFG01 = os_env('HOSTNAME_CFG01', 'cfg01.' + DOMAIN_NAME) %}
9{% set HOSTNAME_CTL01 = os_env('HOSTNAME_CTL01', 'ctl01.' + DOMAIN_NAME) %}
10{% set HOSTNAME_CTL02 = os_env('HOSTNAME_CTL02', 'ctl02.' + DOMAIN_NAME) %}
11{% set HOSTNAME_CTL03 = os_env('HOSTNAME_CTL03', 'ctl03.' + DOMAIN_NAME) %}
12{% set HOSTNAME_CMP01 = os_env('HOSTNAME_CMP01', 'cmp01.' + DOMAIN_NAME) %}
13{% set HOSTNAME_CMP02 = os_env('HOSTNAME_CMP02', 'cmp02.' + DOMAIN_NAME) %}
14{% set HOSTNAME_GTW01 = os_env('HOSTNAME_GTW01', 'gtw01.' + DOMAIN_NAME) %}
15{% set HOSTNAME_PRX01 = os_env('HOSTNAME_PRX01', 'prx01.' + DOMAIN_NAME) %}
16
17template:
18 devops_settings:
19 env_name: {{ os_env('ENV_NAME', 'virtual-mcp10-dvr') }}
20
21 address_pools:
Dennis Dmitrievab83ea42017-05-12 16:52:45 +030022 private-pool01:
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +030023 net: 172.16.10.0/24:24
24 params:
25 ip_reserved:
26 gateway: +1
27 l2_network_device: +1
28 default_{{ HOSTNAME_CFG01 }}: +100
29 default_{{ HOSTNAME_CTL01 }}: +101
30 default_{{ HOSTNAME_CTL02 }}: +102
31 default_{{ HOSTNAME_CTL03 }}: +103
32 default_{{ HOSTNAME_CMP01 }}: +105
33 default_{{ HOSTNAME_CMP02 }}: +106
34 default_{{ HOSTNAME_GTW01 }}: +110
35 default_{{ HOSTNAME_PRX01 }}: +121
36 ip_ranges:
37 dhcp: [+90, -10]
38
Dennis Dmitrievab83ea42017-05-12 16:52:45 +030039 admin-pool01:
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +030040 net: 192.168.10.0/24:24
41 params:
42 ip_reserved:
43 gateway: +1
44 l2_network_device: +1
Tatyana Leontoviche0286ed2017-09-12 11:55:06 +030045 default_{{ HOSTNAME_CFG01 }}: +90
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +030046 default_{{ HOSTNAME_CTL01 }}: +101
47 default_{{ HOSTNAME_CTL02 }}: +102
48 default_{{ HOSTNAME_CTL03 }}: +103
49 default_{{ HOSTNAME_CMP01 }}: +105
50 default_{{ HOSTNAME_CMP02 }}: +106
51 default_{{ HOSTNAME_GTW01 }}: +110
52 default_{{ HOSTNAME_PRX01 }}: +121
53 ip_ranges:
54 dhcp: [+90, -10]
55
56 tenant-pool01:
57 net: 10.1.0.0/24:24
58 params:
59 ip_reserved:
60 gateway: +1
61 l2_network_device: +1
62 default_{{ HOSTNAME_CFG01 }}: +100
63 default_{{ HOSTNAME_CTL01 }}: +101
64 default_{{ HOSTNAME_CTL02 }}: +102
65 default_{{ HOSTNAME_CTL03 }}: +103
66 default_{{ HOSTNAME_CMP01 }}: +105
67 default_{{ HOSTNAME_CMP02 }}: +106
68 default_{{ HOSTNAME_GTW01 }}: +110
69 default_{{ HOSTNAME_PRX01 }}: +121
70 ip_ranges:
71 dhcp: [+10, -10]
72
73 external-pool01:
74 net: 10.16.0.0/24:24
75 params:
76 ip_reserved:
77 gateway: +1
78 l2_network_device: +1
79 default_{{ HOSTNAME_CFG01 }}: +100
80 default_{{ HOSTNAME_CTL01 }}: +101
81 default_{{ HOSTNAME_CTL02 }}: +102
82 default_{{ HOSTNAME_CTL03 }}: +103
83 default_{{ HOSTNAME_CMP01 }}: +105
84 default_{{ HOSTNAME_CMP02 }}: +106
85 default_{{ HOSTNAME_GTW01 }}: +110
86 default_{{ HOSTNAME_PRX01 }}: +121
87 ip_ranges:
88 dhcp: [+10, -10]
89
90
91 groups:
92 - name: default
93 driver:
94 name: devops.driver.libvirt
95 params:
96 connection_string: !os_env CONNECTION_STRING, qemu:///system
97 storage_pool_name: !os_env STORAGE_POOL_NAME, default
98 stp: False
99 hpet: False
100 enable_acpi: true
101 use_host_cpu: !os_env DRIVER_USE_HOST_CPU, true
Dennis Dmitrievb3fc4242017-07-14 16:01:51 +0300102 use_hugepages: !os_env DRIVER_USE_HUGEPAGES, false
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300103
104 network_pools:
105 admin: admin-pool01
106 private: private-pool01
107 tenant: tenant-pool01
108 external: external-pool01
109
110 l2_network_devices:
111 private:
112 address_pool: private-pool01
Dennis Dmitriev68ef8ff2018-03-22 18:13:36 +0200113 dhcp: false
114 forward:
115 mode: route
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300116
117 admin:
118 address_pool: admin-pool01
119 dhcp: true
120 forward:
121 mode: nat
122
123 tenant:
124 address_pool: tenant-pool01
Dennis Dmitriev68ef8ff2018-03-22 18:13:36 +0200125 dhcp: false
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300126
127 external:
128 address_pool: external-pool01
129 dhcp: true
130 forward:
131 mode: nat
132
133
134 group_volumes:
135 - name: cloudimage1404 # This name is used for 'backing_store' option for node volumes.
136 source_image: !os_env IMAGE_PATH1404 # https://cloud-images.ubuntu.com/trusty/current/trusty-server-cloudimg-amd64-disk1.img or
137 # http://apt.tcpcloud.eu/images/ubuntu-14-04-x64-201608231134.qcow2
138 format: qcow2
139 - name: cloudimage1604 # This name is used for 'backing_store' option for node volumes.
140 source_image: !os_env IMAGE_PATH1604 # https://cloud-images.ubuntu.com/xenial/current/xenial-server-cloudimg-amd64-disk1.img or
141 # http://apt.tcpcloud.eu/images/ubuntu-16-04-x64-201608231004.qcow2
142 format: qcow2
143
144 nodes:
145 - name: {{ HOSTNAME_CFG01 }}
146 role: salt_master
147 params:
Dennis Dmitriev5b0e5f32017-07-22 11:30:26 +0300148 vcpu: !os_env SLAVE_NODE_CPU, 2
Dennis Dmitriev4a43e9a2017-11-10 13:08:40 +0200149 memory: !os_env SLAVE_NODE_MEMORY, 4096
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300150 boot:
151 - hd
152 cloud_init_volume_name: iso
153 cloud_init_iface_up: ens3
154 volumes:
155 - name: system
156 capacity: !os_env NODE_VOLUME_SIZE, 150
157 backing_store: cloudimage1604
158 format: qcow2
159 - name: iso # Volume with name 'iso' will be used
160 # for store image with cloud-init metadata.
161 capacity: 1
162 format: raw
163 device: cdrom
164 bus: ide
Dennis Dmitrievab83ea42017-05-12 16:52:45 +0300165 cloudinit_meta_data: !include underlay--meta-data.yaml
166 cloudinit_user_data: !include underlay--user-data-cfg01.yaml
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300167
168 interfaces:
169 - label: ens3
Dennis Dmitrievab83ea42017-05-12 16:52:45 +0300170 l2_network_device: admin
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300171 interface_model: *interface_model
172 - label: ens4
Dennis Dmitrievab83ea42017-05-12 16:52:45 +0300173 l2_network_device: private
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300174 interface_model: *interface_model
175 network_config:
176 ens3:
177 networks:
Dennis Dmitrievab83ea42017-05-12 16:52:45 +0300178 - admin
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300179 ens4:
180 networks:
Dennis Dmitrievab83ea42017-05-12 16:52:45 +0300181 - private
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300182
183 - name: {{ HOSTNAME_CTL01 }}
184 role: salt_minion
185 params:
Dennis Dmitriev5b0e5f32017-07-22 11:30:26 +0300186 vcpu: !os_env SLAVE_NODE_CPU, 2
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300187 memory: !os_env SLAVE_NODE_MEMORY, 8192
188 boot:
189 - hd
190 cloud_init_volume_name: iso
191 cloud_init_iface_up: eth0
192 volumes:
193 - name: system
194 capacity: !os_env NODE_VOLUME_SIZE, 150
195 backing_store: cloudimage1404
196 format: qcow2
197 - name: cinder
198 capacity: 50
199 format: qcow2
200 - name: iso # Volume with name 'iso' will be used
201 # for store image with cloud-init metadata.
202 capacity: 1
203 format: raw
204 device: cdrom
205 bus: ide
Dennis Dmitrievab83ea42017-05-12 16:52:45 +0300206 cloudinit_meta_data: !include underlay--meta-data.yaml
207 cloudinit_user_data: !include underlay--user-data1404.yaml
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300208
209 interfaces: &interfaces
210 - label: eth0
Dennis Dmitrievab83ea42017-05-12 16:52:45 +0300211 l2_network_device: admin
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300212 interface_model: *interface_model
213 - label: eth1
Dennis Dmitrievab83ea42017-05-12 16:52:45 +0300214 l2_network_device: private
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300215 interface_model: *interface_model
216 network_config: &network_config
217 eth0:
218 networks:
Dennis Dmitrievab83ea42017-05-12 16:52:45 +0300219 - admin
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300220 eth1:
221 networks:
Dennis Dmitrievab83ea42017-05-12 16:52:45 +0300222 - private
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300223
224 - name: {{ HOSTNAME_CTL02 }}
225 role: salt_minion
226 params:
Dennis Dmitriev5b0e5f32017-07-22 11:30:26 +0300227 vcpu: !os_env SLAVE_NODE_CPU, 2
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300228 memory: !os_env SLAVE_NODE_MEMORY, 8192
229 boot:
230 - hd
231 cloud_init_volume_name: iso
232 cloud_init_iface_up: eth0
233 volumes:
234 - name: system
235 capacity: !os_env NODE_VOLUME_SIZE, 150
236 backing_store: cloudimage1404
237 format: qcow2
238 - name: cinder
239 capacity: 50
240 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
Dennis Dmitrievab83ea42017-05-12 16:52:45 +0300247 cloudinit_meta_data: !include underlay--meta-data.yaml
248 cloudinit_user_data: !include underlay--user-data1404.yaml
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300249
250 interfaces: *interfaces
251 network_config: *network_config
252
253 - name: {{ HOSTNAME_CTL03 }}
254 role: salt_minion
255 params:
Dennis Dmitriev5b0e5f32017-07-22 11:30:26 +0300256 vcpu: !os_env SLAVE_NODE_CPU, 2
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300257 memory: !os_env SLAVE_NODE_MEMORY, 8192
258 boot:
259 - hd
260 cloud_init_volume_name: iso
261 cloud_init_iface_up: eth0
262 volumes:
263 - name: system
264 capacity: !os_env NODE_VOLUME_SIZE, 150
265 backing_store: cloudimage1404
266 format: qcow2
267 - name: cinder
268 capacity: 50
269 format: qcow2
270 - name: iso # Volume with name 'iso' will be used
271 # for store image with cloud-init metadata.
272 capacity: 1
273 format: raw
274 device: cdrom
275 bus: ide
Dennis Dmitrievab83ea42017-05-12 16:52:45 +0300276 cloudinit_meta_data: !include underlay--meta-data.yaml
277 cloudinit_user_data: !include underlay--user-data1404.yaml
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300278
279 interfaces: *interfaces
280 network_config: *network_config
281
282 - name: {{ HOSTNAME_PRX01 }}
283 role: salt_minion
284 params:
Dennis Dmitriev5b0e5f32017-07-22 11:30:26 +0300285 vcpu: !os_env SLAVE_NODE_CPU, 2
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300286 memory: !os_env SLAVE_NODE_MEMORY, 8192
287 boot:
288 - hd
289 cloud_init_volume_name: iso
290 cloud_init_iface_up: eth0
291 volumes:
292 - name: system
293 capacity: !os_env NODE_VOLUME_SIZE, 150
294 backing_store: cloudimage1404
295 format: qcow2
296 - name: cinder
297 capacity: 50
298 format: qcow2
299 - name: iso # Volume with name 'iso' will be used
300 # for store image with cloud-init metadata.
301 capacity: 1
302 format: raw
303 device: cdrom
304 bus: ide
Dennis Dmitrievab83ea42017-05-12 16:52:45 +0300305 cloudinit_meta_data: !include underlay--meta-data.yaml
306 cloudinit_user_data: !include underlay--user-data1404.yaml
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300307
308 interfaces: *interfaces
309 network_config: *network_config
310
311
312 - name: {{ HOSTNAME_CMP01 }}
313 role: salt_minion
314 params:
Dennis Dmitriev5b0e5f32017-07-22 11:30:26 +0300315 vcpu: !os_env SLAVE_NODE_CPU, 3
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300316 memory: !os_env SLAVE_NODE_MEMORY, 4096
317 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: iso # Volume with name 'iso' will be used
327 # for store image with cloud-init metadata.
328 capacity: 1
329 format: raw
330 device: cdrom
331 bus: ide
Dennis Dmitrievab83ea42017-05-12 16:52:45 +0300332 cloudinit_meta_data: !include underlay--meta-data.yaml
333 cloudinit_user_data: !include underlay--user-data1604.yaml
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300334
335
336 interfaces: &all_interfaces
337 - label: ens3
Dennis Dmitrievab83ea42017-05-12 16:52:45 +0300338 l2_network_device: admin
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300339 interface_model: *interface_model
340 - label: ens4
Dennis Dmitrievab83ea42017-05-12 16:52:45 +0300341 l2_network_device: private
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300342 interface_model: *interface_model
343 - label: ens5
344 l2_network_device: tenant
345 interface_model: *interface_model
346 - label: ens6
347 l2_network_device: external
348 interface_model: *interface_model
349 network_config: &all_network_config
350 ens3:
351 networks:
Dennis Dmitrievab83ea42017-05-12 16:52:45 +0300352 - admin
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300353 ens4:
354 networks:
Dennis Dmitrievab83ea42017-05-12 16:52:45 +0300355 - private
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300356 ens5:
357 networks:
358 - tenant
359 ens6:
360 networks:
361 - external
362
363 - name: {{ HOSTNAME_CMP02 }}
364 role: salt_minion
365 params:
Dennis Dmitriev5b0e5f32017-07-22 11:30:26 +0300366 vcpu: !os_env SLAVE_NODE_CPU, 3
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300367 memory: !os_env SLAVE_NODE_MEMORY, 4096
368 boot:
369 - hd
370 cloud_init_volume_name: iso
371 cloud_init_iface_up: ens3
372 volumes:
373 - name: system
374 capacity: !os_env NODE_VOLUME_SIZE, 150
375 backing_store: cloudimage1604
376 format: qcow2
377 - name: iso # Volume with name 'iso' will be used
378 # for store image with cloud-init metadata.
379 capacity: 1
380 format: raw
381 device: cdrom
382 bus: ide
Dennis Dmitrievab83ea42017-05-12 16:52:45 +0300383 cloudinit_meta_data: !include underlay--meta-data.yaml
384 cloudinit_user_data: !include underlay--user-data1604.yaml
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300385
386 interfaces: *all_interfaces
387 network_config: *all_network_config
388
389 - name: {{ HOSTNAME_GTW01 }}
390 role: salt_minion
391 params:
392 vcpu: !os_env SLAVE_NODE_CPU, 1
393 memory: !os_env SLAVE_NODE_MEMORY, 2048
394 boot:
395 - hd
396 cloud_init_volume_name: iso
397 cloud_init_iface_up: ens3
398 volumes:
399 - name: system
400 capacity: !os_env NODE_VOLUME_SIZE, 150
401 backing_store: cloudimage1604
402 format: qcow2
403 - name: iso # Volume with name 'iso' will be used
404 # for store image with cloud-init metadata.
405 capacity: 1
406 format: raw
407 device: cdrom
408 bus: ide
Dennis Dmitrievab83ea42017-05-12 16:52:45 +0300409 cloudinit_meta_data: !include underlay--meta-data.yaml
410 cloudinit_user_data: !include underlay--user-data1604.yaml
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300411
412 interfaces: *all_interfaces
413 network_config: *all_network_config