blob: a308d72d062bc23643e7bc9c4b03a8d9ce8fbd2e [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
113 dhcp: true
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300114
115 admin:
116 address_pool: admin-pool01
117 dhcp: true
118 forward:
119 mode: nat
120
121 tenant:
122 address_pool: tenant-pool01
123 dhcp: true
124
125 external:
126 address_pool: external-pool01
127 dhcp: true
128 forward:
129 mode: nat
130
131
132 group_volumes:
133 - name: cloudimage1404 # This name is used for 'backing_store' option for node volumes.
134 source_image: !os_env IMAGE_PATH1404 # https://cloud-images.ubuntu.com/trusty/current/trusty-server-cloudimg-amd64-disk1.img or
135 # http://apt.tcpcloud.eu/images/ubuntu-14-04-x64-201608231134.qcow2
136 format: qcow2
137 - name: cloudimage1604 # This name is used for 'backing_store' option for node volumes.
138 source_image: !os_env IMAGE_PATH1604 # https://cloud-images.ubuntu.com/xenial/current/xenial-server-cloudimg-amd64-disk1.img or
139 # http://apt.tcpcloud.eu/images/ubuntu-16-04-x64-201608231004.qcow2
140 format: qcow2
141
142 nodes:
143 - name: {{ HOSTNAME_CFG01 }}
144 role: salt_master
145 params:
Dennis Dmitriev5b0e5f32017-07-22 11:30:26 +0300146 vcpu: !os_env SLAVE_NODE_CPU, 2
Dennis Dmitriev4a43e9a2017-11-10 13:08:40 +0200147 memory: !os_env SLAVE_NODE_MEMORY, 4096
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300148 boot:
149 - hd
150 cloud_init_volume_name: iso
151 cloud_init_iface_up: ens3
152 volumes:
153 - name: system
154 capacity: !os_env NODE_VOLUME_SIZE, 150
155 backing_store: cloudimage1604
156 format: qcow2
157 - name: iso # Volume with name 'iso' will be used
158 # for store image with cloud-init metadata.
159 capacity: 1
160 format: raw
161 device: cdrom
162 bus: ide
Dennis Dmitrievab83ea42017-05-12 16:52:45 +0300163 cloudinit_meta_data: !include underlay--meta-data.yaml
164 cloudinit_user_data: !include underlay--user-data-cfg01.yaml
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300165
166 interfaces:
167 - label: ens3
Dennis Dmitrievab83ea42017-05-12 16:52:45 +0300168 l2_network_device: admin
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300169 interface_model: *interface_model
170 - label: ens4
Dennis Dmitrievab83ea42017-05-12 16:52:45 +0300171 l2_network_device: private
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300172 interface_model: *interface_model
173 network_config:
174 ens3:
175 networks:
Dennis Dmitrievab83ea42017-05-12 16:52:45 +0300176 - admin
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300177 ens4:
178 networks:
Dennis Dmitrievab83ea42017-05-12 16:52:45 +0300179 - private
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300180
181 - name: {{ HOSTNAME_CTL01 }}
182 role: salt_minion
183 params:
Dennis Dmitriev5b0e5f32017-07-22 11:30:26 +0300184 vcpu: !os_env SLAVE_NODE_CPU, 2
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300185 memory: !os_env SLAVE_NODE_MEMORY, 8192
186 boot:
187 - hd
188 cloud_init_volume_name: iso
189 cloud_init_iface_up: eth0
190 volumes:
191 - name: system
192 capacity: !os_env NODE_VOLUME_SIZE, 150
193 backing_store: cloudimage1404
194 format: qcow2
195 - name: cinder
196 capacity: 50
197 format: qcow2
198 - name: iso # Volume with name 'iso' will be used
199 # for store image with cloud-init metadata.
200 capacity: 1
201 format: raw
202 device: cdrom
203 bus: ide
Dennis Dmitrievab83ea42017-05-12 16:52:45 +0300204 cloudinit_meta_data: !include underlay--meta-data.yaml
205 cloudinit_user_data: !include underlay--user-data1404.yaml
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300206
207 interfaces: &interfaces
208 - label: eth0
Dennis Dmitrievab83ea42017-05-12 16:52:45 +0300209 l2_network_device: admin
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300210 interface_model: *interface_model
211 - label: eth1
Dennis Dmitrievab83ea42017-05-12 16:52:45 +0300212 l2_network_device: private
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300213 interface_model: *interface_model
214 network_config: &network_config
215 eth0:
216 networks:
Dennis Dmitrievab83ea42017-05-12 16:52:45 +0300217 - admin
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300218 eth1:
219 networks:
Dennis Dmitrievab83ea42017-05-12 16:52:45 +0300220 - private
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300221
222 - name: {{ HOSTNAME_CTL02 }}
223 role: salt_minion
224 params:
Dennis Dmitriev5b0e5f32017-07-22 11:30:26 +0300225 vcpu: !os_env SLAVE_NODE_CPU, 2
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300226 memory: !os_env SLAVE_NODE_MEMORY, 8192
227 boot:
228 - hd
229 cloud_init_volume_name: iso
230 cloud_init_iface_up: eth0
231 volumes:
232 - name: system
233 capacity: !os_env NODE_VOLUME_SIZE, 150
234 backing_store: cloudimage1404
235 format: qcow2
236 - name: cinder
237 capacity: 50
238 format: qcow2
239 - name: iso # Volume with name 'iso' will be used
240 # for store image with cloud-init metadata.
241 capacity: 1
242 format: raw
243 device: cdrom
244 bus: ide
Dennis Dmitrievab83ea42017-05-12 16:52:45 +0300245 cloudinit_meta_data: !include underlay--meta-data.yaml
246 cloudinit_user_data: !include underlay--user-data1404.yaml
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300247
248 interfaces: *interfaces
249 network_config: *network_config
250
251 - name: {{ HOSTNAME_CTL03 }}
252 role: salt_minion
253 params:
Dennis Dmitriev5b0e5f32017-07-22 11:30:26 +0300254 vcpu: !os_env SLAVE_NODE_CPU, 2
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300255 memory: !os_env SLAVE_NODE_MEMORY, 8192
256 boot:
257 - hd
258 cloud_init_volume_name: iso
259 cloud_init_iface_up: eth0
260 volumes:
261 - name: system
262 capacity: !os_env NODE_VOLUME_SIZE, 150
263 backing_store: cloudimage1404
264 format: qcow2
265 - name: cinder
266 capacity: 50
267 format: qcow2
268 - name: iso # Volume with name 'iso' will be used
269 # for store image with cloud-init metadata.
270 capacity: 1
271 format: raw
272 device: cdrom
273 bus: ide
Dennis Dmitrievab83ea42017-05-12 16:52:45 +0300274 cloudinit_meta_data: !include underlay--meta-data.yaml
275 cloudinit_user_data: !include underlay--user-data1404.yaml
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300276
277 interfaces: *interfaces
278 network_config: *network_config
279
280 - name: {{ HOSTNAME_PRX01 }}
281 role: salt_minion
282 params:
Dennis Dmitriev5b0e5f32017-07-22 11:30:26 +0300283 vcpu: !os_env SLAVE_NODE_CPU, 2
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300284 memory: !os_env SLAVE_NODE_MEMORY, 8192
285 boot:
286 - hd
287 cloud_init_volume_name: iso
288 cloud_init_iface_up: eth0
289 volumes:
290 - name: system
291 capacity: !os_env NODE_VOLUME_SIZE, 150
292 backing_store: cloudimage1404
293 format: qcow2
294 - name: cinder
295 capacity: 50
296 format: qcow2
297 - name: iso # Volume with name 'iso' will be used
298 # for store image with cloud-init metadata.
299 capacity: 1
300 format: raw
301 device: cdrom
302 bus: ide
Dennis Dmitrievab83ea42017-05-12 16:52:45 +0300303 cloudinit_meta_data: !include underlay--meta-data.yaml
304 cloudinit_user_data: !include underlay--user-data1404.yaml
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300305
306 interfaces: *interfaces
307 network_config: *network_config
308
309
310 - name: {{ HOSTNAME_CMP01 }}
311 role: salt_minion
312 params:
Dennis Dmitriev5b0e5f32017-07-22 11:30:26 +0300313 vcpu: !os_env SLAVE_NODE_CPU, 3
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300314 memory: !os_env SLAVE_NODE_MEMORY, 4096
315 boot:
316 - hd
317 cloud_init_volume_name: iso
318 cloud_init_iface_up: ens3
319 volumes:
320 - name: system
321 capacity: !os_env NODE_VOLUME_SIZE, 150
322 backing_store: cloudimage1604
323 format: qcow2
324 - name: iso # Volume with name 'iso' will be used
325 # for store image with cloud-init metadata.
326 capacity: 1
327 format: raw
328 device: cdrom
329 bus: ide
Dennis Dmitrievab83ea42017-05-12 16:52:45 +0300330 cloudinit_meta_data: !include underlay--meta-data.yaml
331 cloudinit_user_data: !include underlay--user-data1604.yaml
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300332
333
334 interfaces: &all_interfaces
335 - label: ens3
Dennis Dmitrievab83ea42017-05-12 16:52:45 +0300336 l2_network_device: admin
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300337 interface_model: *interface_model
338 - label: ens4
Dennis Dmitrievab83ea42017-05-12 16:52:45 +0300339 l2_network_device: private
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300340 interface_model: *interface_model
341 - label: ens5
342 l2_network_device: tenant
343 interface_model: *interface_model
344 - label: ens6
345 l2_network_device: external
346 interface_model: *interface_model
347 network_config: &all_network_config
348 ens3:
349 networks:
Dennis Dmitrievab83ea42017-05-12 16:52:45 +0300350 - admin
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300351 ens4:
352 networks:
Dennis Dmitrievab83ea42017-05-12 16:52:45 +0300353 - private
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300354 ens5:
355 networks:
356 - tenant
357 ens6:
358 networks:
359 - external
360
361 - name: {{ HOSTNAME_CMP02 }}
362 role: salt_minion
363 params:
Dennis Dmitriev5b0e5f32017-07-22 11:30:26 +0300364 vcpu: !os_env SLAVE_NODE_CPU, 3
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300365 memory: !os_env SLAVE_NODE_MEMORY, 4096
366 boot:
367 - hd
368 cloud_init_volume_name: iso
369 cloud_init_iface_up: ens3
370 volumes:
371 - name: system
372 capacity: !os_env NODE_VOLUME_SIZE, 150
373 backing_store: cloudimage1604
374 format: qcow2
375 - name: iso # Volume with name 'iso' will be used
376 # for store image with cloud-init metadata.
377 capacity: 1
378 format: raw
379 device: cdrom
380 bus: ide
Dennis Dmitrievab83ea42017-05-12 16:52:45 +0300381 cloudinit_meta_data: !include underlay--meta-data.yaml
382 cloudinit_user_data: !include underlay--user-data1604.yaml
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300383
384 interfaces: *all_interfaces
385 network_config: *all_network_config
386
387 - name: {{ HOSTNAME_GTW01 }}
388 role: salt_minion
389 params:
390 vcpu: !os_env SLAVE_NODE_CPU, 1
391 memory: !os_env SLAVE_NODE_MEMORY, 2048
392 boot:
393 - hd
394 cloud_init_volume_name: iso
395 cloud_init_iface_up: ens3
396 volumes:
397 - name: system
398 capacity: !os_env NODE_VOLUME_SIZE, 150
399 backing_store: cloudimage1604
400 format: qcow2
401 - name: iso # Volume with name 'iso' will be used
402 # for store image with cloud-init metadata.
403 capacity: 1
404 format: raw
405 device: cdrom
406 bus: ide
Dennis Dmitrievab83ea42017-05-12 16:52:45 +0300407 cloudinit_meta_data: !include underlay--meta-data.yaml
408 cloudinit_user_data: !include underlay--user-data1604.yaml
Dmitry Tyzhnenko2b730a02017-04-07 19:31:32 +0300409
410 interfaces: *all_interfaces
411 network_config: *all_network_config