Merge "Add tutorial for reclass-doc tool in documentation"
[fuel.git] / mcp / reclass / classes / cluster / baremetal-mcp-pike-common-ha / infra / kvm.yml
1 ##############################################################################
2 # Copyright (c) 2017 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 ---
9 classes:
10   - system.linux.system.repo.glusterfs
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.baremetal-mcp-pike-common-ha.infra.kvm_pdf
25 parameters:
26   _param:
27     linux_system_codename: xenial
28     glusterfs_version: '3.13'
29     cluster_vip_address: ${_param:infra_kvm_address}
30     cluster_node01_address: ${_param:infra_kvm_node01_address}
31     cluster_node02_address: ${_param:infra_kvm_node02_address}
32     cluster_node03_address: ${_param:infra_kvm_node03_address}
33     keepalived_vip_interface: br-ctl
34     keepalived_vip_virtual_router_id: 69
35     # {dhcp,single}_nic are not used, but referenced
36     dhcp_nic: ${_param:opnfv_vcp_vm_primary_interface}
37     single_nic: ${_param:opnfv_vcp_vm_secondary_interface}
38   linux:
39     network:
40       remove_iface_files:
41         - '/etc/network/interfaces.d/50-cloud-init.cfg'
42   libvirt:
43     server:
44       service: libvirtd
45       config_sys: /etc/default/libvirtd
46   salt:
47     control:
48       size:  # RAM 4096,8192,16384,32768,65536
49         # Default production sizing
50         openstack.control:
51           cpu: 4
52           ram: 12288
53           disk_profile: small
54           net_profile: default
55         openstack.database:
56           cpu: 4
57           ram: 6144
58           disk_profile: large
59           net_profile: default
60         openstack.message_queue:
61           cpu: 4
62           ram: 2048
63           disk_profile: small
64           net_profile: default
65         openstack.telemetry:
66           cpu: 2
67           ram: 3072
68           disk_profile: xxlarge
69           net_profile: default
70         # stacklight.log:
71         #   cpu: 2
72         #   ram: 4096
73         #   disk_profile: xxlarge
74         #   net_profile: default
75         # stacklight.server:
76         #   cpu: 2
77         #   ram: 4096
78         #   disk_profile: small
79         #   net_profile: default
80         # stacklight.telemetry:
81         #   cpu: 2
82         #   ram: 4096
83         #   disk_profile: xxlarge
84         #   net_profile: default
85         openstack.proxy:
86           cpu: 2
87           ram: 2048
88           disk_profile: small
89           net_profile: default_ext
90       cluster:
91         internal:
92           node:
93             mdb01:
94               image: ${_param:salt_control_xenial_image}
95             mdb02:
96               image: ${_param:salt_control_xenial_image}
97             mdb03:
98               image: ${_param:salt_control_xenial_image}
99             ctl01:
100               image: ${_param:salt_control_xenial_image}
101             ctl02:
102               image: ${_param:salt_control_xenial_image}
103             ctl03:
104               image: ${_param:salt_control_xenial_image}
105             dbs01:
106               image: ${_param:salt_control_xenial_image}
107             dbs02:
108               image: ${_param:salt_control_xenial_image}
109             dbs03:
110               image: ${_param:salt_control_xenial_image}
111             msg01:
112               image: ${_param:salt_control_xenial_image}
113             msg02:
114               image: ${_param:salt_control_xenial_image}
115             msg03:
116               image: ${_param:salt_control_xenial_image}
117             prx01:
118               image: ${_param:salt_control_xenial_image}
119             prx02:
120               image: ${_param:salt_control_xenial_image}
121               provider: kvm03.${_param:cluster_domain}
122   virt:
123     nic:
124       default:
125         eth1:
126           bridge: br-mgmt
127           model: virtio
128         eth0:
129           bridge: br-ctl
130           model: virtio
131       default_ext:
132         eth2:
133           bridge: br-mgmt
134           model: virtio
135         eth1:
136           bridge: br-ex
137           model: virtio
138         eth0:
139           bridge: br-ctl
140           model: virtio
141   glusterfs:
142     server:
143       service: glusterd
144       volumes:
145         nova_instances:
146           storage: /srv/glusterfs/nova_instances
147           replica: 3
148           bricks:
149             - ${_param:cluster_node01_address}:/srv/glusterfs/nova_instances
150             - ${_param:cluster_node02_address}:/srv/glusterfs/nova_instances
151             - ${_param:cluster_node03_address}:/srv/glusterfs/nova_instances
152           options:
153             cluster.readdir-optimize: 'True'
154             nfs.disable: 'True'
155             network.remote-dio: 'True'
156             cluster.favorite-child-policy: mtime
157             diagnostics.client-log-level: WARNING
158             diagnostics.brick-log-level: WARNING