blob: 822d5566aeeb644ff63f5b6ab4b505fe949b58f6 [file] [log] [blame]
Sergii Golovatiuk57bb8e72017-05-16 19:49:49 +02001---
2aliases:
3 default_interface_model:
4 - &interface_model !os_env INTERFACE_MODEL, virtio
5
6{% set DOMAIN_NAME = os_env('LAB_CONFIG_NAME', 'virtual-mcp11-k8s-calico.local') + '.local' %}
7{% set HOSTNAME_CFG01 = os_env('HOSTNAME_CFG01', 'cfg01.' + DOMAIN_NAME) %}
8{% set HOSTNAME_CTL01 = os_env('HOSTNAME_CTL01', 'ctl01.' + DOMAIN_NAME) %}
9{% set HOSTNAME_CTL02 = os_env('HOSTNAME_CTL02', 'ctl02.' + DOMAIN_NAME) %}
10{% set HOSTNAME_CTL03 = os_env('HOSTNAME_CTL03', 'ctl03.' + DOMAIN_NAME) %}
11{% set HOSTNAME_CMP01 = os_env('HOSTNAME_CMP01', 'cmp01.' + DOMAIN_NAME) %}
12{% set HOSTNAME_CMP02 = os_env('HOSTNAME_CMP02', 'cmp02.' + DOMAIN_NAME) %}
13{% set HOSTNAME_MON01 = os_env('HOSTNAME_MON01', 'mon01.' + DOMAIN_NAME) %}
14{% set HOSTNAME_MON02 = os_env('HOSTNAME_MON02', 'mon02.' + DOMAIN_NAME) %}
15{% set HOSTNAME_MON03 = os_env('HOSTNAME_MON03', 'mon03.' + DOMAIN_NAME) %}
16{% set HOSTNAME_PRX01 = os_env('HOSTNAME_PRX01', 'prx01.' + DOMAIN_NAME) %}
17
18template:
19 devops_settings:
20 env_name: {{ os_env('ENV_NAME', 'virtual-mcp11-k8s-calico.local') }}
21
22 address_pools:
23 admin-pool01:
24 net: 172.16.10.0/24:24
25 params:
26 ip_reserved:
27 gateway: +1
28 l2_network_device: +1
29 default_{{ HOSTNAME_CFG01 }}: +100
30 default_{{ HOSTNAME_CTL01 }}: +101
31 default_{{ HOSTNAME_CTL02 }}: +102
32 default_{{ HOSTNAME_CTL03 }}: +103
33 default_{{ HOSTNAME_CMP01 }}: +105
34 default_{{ HOSTNAME_CMP02 }}: +106
35 default_{{ HOSTNAME_MON01 }}: +107
36 default_{{ HOSTNAME_MON02 }}: +108
37 default_{{ HOSTNAME_MON03 }}: +109
38 default_{{ HOSTNAME_PRX01 }}: +110
39 ip_ranges:
40 dhcp: [+90, -10]
41
42 private-pool01:
43 net: 192.168.10.0/24:24
44 params:
45 ip_reserved:
46 gateway: +1
47 l2_network_device: +1
48 default_{{ HOSTNAME_CFG01 }}: +100
49 default_{{ HOSTNAME_CTL01 }}: +101
50 default_{{ HOSTNAME_CTL02 }}: +102
51 default_{{ HOSTNAME_CTL03 }}: +103
52 default_{{ HOSTNAME_CMP01 }}: +105
53 default_{{ HOSTNAME_CMP02 }}: +106
54 default_{{ HOSTNAME_MON01 }}: +107
55 default_{{ HOSTNAME_MON02 }}: +108
56 default_{{ HOSTNAME_MON03 }}: +109
57 default_{{ HOSTNAME_PRX01 }}: +110
58 ip_ranges:
59 dhcp: [+90, -10]
60
61 groups:
62 - name: default
63 driver:
64 name: devops.driver.libvirt
65 params:
66 connection_string: !os_env CONNECTION_STRING, qemu:///system
67 storage_pool_name: !os_env STORAGE_POOL_NAME, default
68 stp: False
69 hpet: False
70 enable_acpi: true
71 use_host_cpu: !os_env DRIVER_USE_HOST_CPU, true
72
73 network_pools:
74 admin: admin-pool01
75 private: private-pool01
76
77 l2_network_devices:
78 private:
79 address_pool: private-pool01
80 dhcp: true
81
82 admin:
83 address_pool: admin-pool01
84 dhcp: true
85 forward:
86 mode: nat
87
88 group_volumes:
89 - name: cloudimage1404 # This name is used for 'backing_store' option for node volumes.
90 source_image: !os_env IMAGE_PATH1404 # https://cloud-images.ubuntu.com/trusty/current/trusty-server-cloudimg-amd64-disk1.img or
91 # http://apt.tcpcloud.eu/images/ubuntu-14-04-x64-201608231134.qcow2
92 format: qcow2
93 - name: cloudimage1604 # This name is used for 'backing_store' option for node volumes.
94 source_image: !os_env IMAGE_PATH1604 # https://cloud-images.ubuntu.com/xenial/current/xenial-server-cloudimg-amd64-disk1.img or
95 # http://apt.tcpcloud.eu/images/ubuntu-16-04-x64-201608231004.qcow2
96 format: qcow2
97
98 nodes:
99 - name: {{ HOSTNAME_CFG01 }}
100 role: salt_master
101 params:
102 vcpu: !os_env SLAVE_NODE_CPU, 4
103 memory: !os_env SLAVE_NODE_MEMORY, 1536
104 boot:
105 - hd
106 cloud_init_volume_name: iso
107 cloud_init_iface_up: ens3
108 volumes:
109 - name: system
110 capacity: !os_env NODE_VOLUME_SIZE, 150
111 backing_store: cloudimage1604
112 format: qcow2
113 - name: iso # Volume with name 'iso' will be used
114 # for store image with cloud-init metadata.
115 capacity: 1
116 format: raw
117 device: cdrom
118 bus: ide
119 cloudinit_meta_data: !include underlay--meta-data.yaml
120 cloudinit_user_data: !include underlay--user-data-cfg01.yaml
121
122 interfaces:
123 - label: ens3
124 l2_network_device: admin
125 interface_model: *interface_model
126 - label: ens4
127 l2_network_device: private
128 interface_model: *interface_model
129 network_config:
130 ens3:
131 networks:
132 - admin
133 ens4:
134 networks:
135 - private
136
137 - name: {{ HOSTNAME_CTL01 }}
138 role: salt_minion
139 params:
140 vcpu: !os_env SLAVE_NODE_CPU, 4
141 memory: !os_env SLAVE_NODE_MEMORY, 6144
142 boot:
143 - hd
144 cloud_init_volume_name: iso
145 cloud_init_iface_up: ens3
146 volumes:
147 - name: system
148 capacity: !os_env NODE_VOLUME_SIZE, 150
149 backing_store: cloudimage1604
150 format: qcow2
151 - name: cinder
152 capacity: 50
153 format: qcow2
154 - name: iso # Volume with name 'iso' will be used
155 # for store image with cloud-init metadata.
156 capacity: 1
157 format: raw
158 device: cdrom
159 bus: ide
160 cloudinit_meta_data: !include underlay--meta-data.yaml
161 cloudinit_user_data: !include underlay--user-data1604.yaml
162
163 interfaces: &interfaces
164 - label: ens3
165 l2_network_device: admin
166 interface_model: *interface_model
167 - label: ens4
168 l2_network_device: private
169 interface_model: *interface_model
170 network_config: &network_config
171 ens3:
172 networks:
173 - admin
174 ens4:
175 networks:
176 - private
177
178 - name: {{ HOSTNAME_CTL02 }}
179 role: salt_minion
180 params:
181 vcpu: !os_env SLAVE_NODE_CPU, 4
182 memory: !os_env SLAVE_NODE_MEMORY, 6144
183 boot:
184 - hd
185 cloud_init_volume_name: iso
186 cloud_init_iface_up: ens3
187 volumes:
188 - name: system
189 capacity: !os_env NODE_VOLUME_SIZE, 150
190 backing_store: cloudimage1604
191 format: qcow2
192 - name: cinder
193 capacity: 50
194 format: qcow2
195 - name: iso # Volume with name 'iso' will be used
196 # for store image with cloud-init metadata.
197 capacity: 1
198 format: raw
199 device: cdrom
200 bus: ide
201 cloudinit_meta_data: !include underlay--meta-data.yaml
202 cloudinit_user_data: !include underlay--user-data1604.yaml
203
204 interfaces: *interfaces
205 network_config: *network_config
206
207 - name: {{ HOSTNAME_CTL03 }}
208 role: salt_minion
209 params:
210 vcpu: !os_env SLAVE_NODE_CPU, 4
211 memory: !os_env SLAVE_NODE_MEMORY, 6144
212 boot:
213 - hd
214 cloud_init_volume_name: iso
215 cloud_init_iface_up: ens3
216 volumes:
217 - name: system
218 capacity: !os_env NODE_VOLUME_SIZE, 150
219 backing_store: cloudimage1604
220 format: qcow2
221 - name: cinder
222 capacity: 50
223 format: qcow2
224 - name: iso # Volume with name 'iso' will be used
225 # for store image with cloud-init metadata.
226 capacity: 1
227 format: raw
228 device: cdrom
229 bus: ide
230 cloudinit_meta_data: !include underlay--meta-data.yaml
231 cloudinit_user_data: !include underlay--user-data1604.yaml
232
233 interfaces: *interfaces
234 network_config: *network_config
235
236 - name: {{ HOSTNAME_CMP01 }}
237 role: salt_minion
238 params:
239 vcpu: !os_env SLAVE_NODE_CPU, 4
240 memory: !os_env SLAVE_NODE_MEMORY, 2048
241 boot:
242 - hd
243 cloud_init_volume_name: iso
244 cloud_init_iface_up: ens3
245 volumes:
246 - name: system
247 capacity: !os_env NODE_VOLUME_SIZE, 150
248 backing_store: cloudimage1604
249 format: qcow2
250 - name: iso # Volume with name 'iso' will be used
251 # for store image with cloud-init metadata.
252 capacity: 1
253 format: raw
254 device: cdrom
255 bus: ide
256 cloudinit_meta_data: !include underlay--meta-data.yaml
257 cloudinit_user_data: !include underlay--user-data1604.yaml
258
259 interfaces: &all_interfaces
260 - label: ens3
261 l2_network_device: admin
262 interface_model: *interface_model
263 - label: ens4
264 l2_network_device: private
265 interface_model: *interface_model
266 network_config: &all_network_config
267 ens3:
268 networks:
269 - admin
270 ens4:
271 networks:
272 - private
273
274 - name: {{ HOSTNAME_CMP02 }}
275 role: salt_minion
276 params:
277 vcpu: !os_env SLAVE_NODE_CPU, 4
278 memory: !os_env SLAVE_NODE_MEMORY, 2048
279 boot:
280 - hd
281 cloud_init_volume_name: iso
282 cloud_init_iface_up: ens3
283 volumes:
284 - name: system
285 capacity: !os_env NODE_VOLUME_SIZE, 150
286 backing_store: cloudimage1604
287 format: qcow2
288 - name: iso # Volume with name 'iso' will be used
289 # for store image with cloud-init metadata.
290 capacity: 1
291 format: raw
292 device: cdrom
293 bus: ide
294 cloudinit_meta_data: !include underlay--meta-data.yaml
295 cloudinit_user_data: !include underlay--user-data1604.yaml
296
297 interfaces: *interfaces
298 network_config: *network_config
299
300 - name: {{ HOSTNAME_MON01 }}
301 role: salt_minion
302 params:
303 vcpu: !os_env SLAVE_NODE_CPU, 4
304 memory: !os_env SLAVE_NODE_MEMORY, 1024
305 boot:
306 - hd
307 cloud_init_volume_name: iso
308 cloud_init_iface_up: ens3
309 volumes:
310 - name: system
311 capacity: !os_env NODE_VOLUME_SIZE, 150
312 backing_store: cloudimage1604
313 format: qcow2
314 - name: iso # Volume with name 'iso' will be used
315 # for store image with cloud-init metadata.
316 capacity: 1
317 format: raw
318 device: cdrom
319 bus: ide
320 cloudinit_meta_data: !include underlay--meta-data.yaml
321 cloudinit_user_data: !include underlay--user-data1604.yaml
322
323 interfaces: *interfaces
324 network_config: *network_config
325
326 - name: {{ HOSTNAME_MON02 }}
327 role: salt_minion
328 params:
329 vcpu: !os_env SLAVE_NODE_CPU, 4
330 memory: !os_env SLAVE_NODE_MEMORY, 1024
331 boot:
332 - hd
333 cloud_init_volume_name: iso
334 cloud_init_iface_up: ens3
335 volumes:
336 - name: system
337 capacity: !os_env NODE_VOLUME_SIZE, 150
338 backing_store: cloudimage1604
339 format: qcow2
340 - name: iso # Volume with name 'iso' will be used
341 # for store image with cloud-init metadata.
342 capacity: 1
343 format: raw
344 device: cdrom
345 bus: ide
346 cloudinit_meta_data: !include underlay--meta-data.yaml
347 cloudinit_user_data: !include underlay--user-data1604.yaml
348
349 interfaces: *interfaces
350 network_config: *network_config
351
352 - name: {{ HOSTNAME_MON03 }}
353 role: salt_minion
354 params:
355 vcpu: !os_env SLAVE_NODE_CPU, 4
356 memory: !os_env SLAVE_NODE_MEMORY, 1024
357 boot:
358 - hd
359 cloud_init_volume_name: iso
360 cloud_init_iface_up: ens3
361 volumes:
362 - name: system
363 capacity: !os_env NODE_VOLUME_SIZE, 150
364 backing_store: cloudimage1604
365 format: qcow2
366 - name: iso # Volume with name 'iso' will be used
367 # for store image with cloud-init metadata.
368 capacity: 1
369 format: raw
370 device: cdrom
371 bus: ide
372 cloudinit_meta_data: !include underlay--meta-data.yaml
373 cloudinit_user_data: !include underlay--user-data1604.yaml
374
375 interfaces: *interfaces
376 network_config: *network_config
377
378 - name: {{ HOSTNAME_PRX01 }}
379 role: salt_minion
380 params:
381 vcpu: !os_env SLAVE_NODE_CPU, 4
382 memory: !os_env SLAVE_NODE_MEMORY, 1024
383 boot:
384 - hd
385 cloud_init_volume_name: iso
386 cloud_init_iface_up: ens3
387 volumes:
388 - name: system
389 capacity: !os_env NODE_VOLUME_SIZE, 150
390 backing_store: cloudimage1604
391 format: qcow2
392 - name: iso # Volume with name 'iso' will be used
393 # for store image with cloud-init metadata.
394 capacity: 1
395 format: raw
396 device: cdrom
397 bus: ide
398 cloudinit_meta_data: !include underlay--meta-data.yaml
399 cloudinit_user_data: !include underlay--user-data1604.yaml
400
401 interfaces: *interfaces
402 network_config: *network_config