Setup repository with backports
[fuel.git] / mcp / reclass / classes / cluster / mcp-common-ha / infra / kvm.yml.j2
1 ##############################################################################
2 # Copyright (c) 2018 Mirantis Inc., Enea AB and others.
3 # All rights reserved. This program and the accompanying materials
4 # are made available under the terms of the Apache License, Version 2.0
5 # which accompanies this distribution, and is available at
6 # http://www.apache.org/licenses/LICENSE-2.0
7 ##############################################################################
8 {%- import 'net_map.j2' as nm with context %}
9 ---
10 classes:
11   - service.keepalived.cluster.single
12   - system.glusterfs.server.volume.glance
13   - system.glusterfs.server.volume.keystone
14   - system.glusterfs.server.cluster
15   - system.salt.control.virt
16   - system.salt.control.cluster.openstack_control_cluster
17   - system.salt.control.cluster.openstack_proxy_cluster
18   - system.salt.control.cluster.openstack_database_cluster
19   - system.salt.control.cluster.openstack_message_queue_cluster
20   - system.salt.control.cluster.openstack_telemetry_cluster
21   # - system.salt.control.cluster.stacklight_server_cluster
22   # - system.salt.control.cluster.stacklight_log_cluster
23   # - system.salt.control.cluster.stacklight_telemetry_cluster
24   - cluster.all-mcp-arch-common.backports
25   - cluster.mcp-common-ha.glusterfs_repo
26   - cluster.mcp-common-ha.infra.kvm_pdf
27   - cluster.all-mcp-arch-common.opnfv.maas_proxy
28   - cluster.all-mcp-arch-common.opnfv.lab_proxy_pdf
29 parameters:
30   _param:
31     linux_system_codename: xenial
32     cluster_vip_address: ${_param:infra_kvm_address}
33     cluster_node01_address: ${_param:infra_kvm_node01_address}
34     cluster_node02_address: ${_param:infra_kvm_node02_address}
35     cluster_node03_address: ${_param:infra_kvm_node03_address}
36     keepalived_vip_interface: br-ctl
37     keepalived_vip_virtual_router_id: 69
38   linux:
39     system:
40       kernel:
41         boot_options:
42           - spectre_v2=off
43           - nopti
44           - nospec_store_bypass_disable
45           - noibrs
46           - noibpb
47         sysctl:
48           net.ipv4.ip_forward: 0
49   libvirt:
50     server:
51       service: libvirtd
52       config_sys: /etc/default/libvirtd
53       unix_sock_group: libvirt
54   salt:
55     control:
56       size:  # RAM 4096,8192,16384,32768,65536
57         # Default production sizing
58         openstack.control:
59           cpu: 4
60           ram: 12288
61           disk_profile: small
62           net_profile: default
63         openstack.database:
64           cpu: 4
65           ram: 6144
66           disk_profile: large
67           net_profile: default
68         openstack.message_queue:
69           cpu: 4
70           ram: 2048
71           disk_profile: small
72           net_profile: default
73         openstack.telemetry:
74           cpu: 2
75           ram: 3072
76           disk_profile: xxlarge
77           net_profile: default
78         # stacklight.log:
79         #   cpu: 2
80         #   ram: 4096
81         #   disk_profile: xxlarge
82         #   net_profile: default
83         # stacklight.server:
84         #   cpu: 2
85         #   ram: 4096
86         #   disk_profile: small
87         #   net_profile: default
88         # stacklight.telemetry:
89         #   cpu: 2
90         #   ram: 4096
91         #   disk_profile: xxlarge
92         #   net_profile: default
93         openstack.proxy:
94           cpu: 2
95           ram: 2048
96           disk_profile: small
97           net_profile: default_ext
98       cluster:
99         internal:
100           node:
101             mdb01: &salt_control_xenial_image_common_attr
102               image: ${_param:salt_control_xenial_image}
103 {%- if conf.nodes[nm.ctl01.idx].node.arch == 'aarch64' %}
104               machine: virt
105               cpu_mode: host-passthrough
106               loader:
107                 readonly: 'yes'
108                 type: pflash
109                 path: /usr/share/AAVMF/AAVMF_CODE.fd
110 {%- endif %}
111             mdb02:
112               <<: *salt_control_xenial_image_common_attr
113             mdb03:
114               <<: *salt_control_xenial_image_common_attr
115             ctl01:
116               <<: *salt_control_xenial_image_common_attr
117             ctl02:
118               <<: *salt_control_xenial_image_common_attr
119             ctl03:
120               <<: *salt_control_xenial_image_common_attr
121             dbs01:
122               <<: *salt_control_xenial_image_common_attr
123             dbs02:
124               <<: *salt_control_xenial_image_common_attr
125             dbs03:
126               <<: *salt_control_xenial_image_common_attr
127             msg01:
128               <<: *salt_control_xenial_image_common_attr
129             msg02:
130               <<: *salt_control_xenial_image_common_attr
131             msg03:
132               <<: *salt_control_xenial_image_common_attr
133             prx01:
134               <<: *salt_control_xenial_image_common_attr
135             prx02:
136               <<: *salt_control_xenial_image_common_attr
137               provider: kvm03.${_param:cluster_domain}
138   virt:
139     nic:
140       default:
141         eth1:
142           bridge: br-mgmt
143           model: virtio
144         eth0:
145           bridge: br-ctl
146           model: virtio
147       default_ext:
148         eth2:
149           bridge: br-mgmt
150           model: virtio
151         eth1:
152           bridge: br-ex
153           model: virtio
154         eth0:
155           bridge: br-ctl
156           model: virtio
157   glusterfs:
158     server:
159       service: glusterd
160       volumes:
161         nova_instances:
162           storage: /srv/glusterfs/nova_instances
163           replica: 3
164           bricks:
165             - ${_param:cluster_node01_address}:/srv/glusterfs/nova_instances
166             - ${_param:cluster_node02_address}:/srv/glusterfs/nova_instances
167             - ${_param:cluster_node03_address}:/srv/glusterfs/nova_instances
168           options:
169             cluster.readdir-optimize: 'True'
170             nfs.disable: 'True'
171             network.remote-dio: 'True'
172             cluster.favorite-child-policy: mtime
173             diagnostics.client-log-level: WARNING
174             diagnostics.brick-log-level: WARNING