[noha] Update OpenStack version to Queens
[fuel.git] / mcp / reclass / classes / cluster / mcp-common-ha / infra / config.yml
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 ---
9 classes:
10   - service.git.client
11   - system.linux.system.single
12   - system.linux.system.repo.mcp.salt
13   - system.linux.system.repo.saltstack.xenial
14   - system.salt.master.api
15   - system.salt.master.pkg
16   - system.salt.minion.ca.salt_master
17   - system.reclass.storage.salt
18   - system.reclass.storage.system.physical_control_cluster
19   - system.reclass.storage.system.openstack_control_cluster
20   - system.reclass.storage.system.openstack_proxy_cluster
21   - system.reclass.storage.system.openstack_database_cluster
22   - system.reclass.storage.system.openstack_message_queue_cluster
23   - system.reclass.storage.system.openstack_telemetry_cluster
24   # - system.reclass.storage.system.stacklight_log_cluster
25   # - system.reclass.storage.system.stacklight_monitor_cluster
26   # - system.reclass.storage.system.stacklight_telemetry_cluster
27   - system.reclass.storage.system.infra_maas_single
28   - cluster.mcp-common-ha.include.lab_proxy_pdf
29 parameters:
30   _param:
31     salt_master_base_environment: prd
32     reclass_data_repository: local
33     salt_master_environment_repository: "https://github.com/tcpcloud"
34     salt_master_environment_revision: master
35     single_address: ${_param:infra_config_address}
36     deploy_address: ${_param:infra_config_deploy_address}
37     pxe_address: ${_param:opnfv_infra_config_pxe_address}
38     salt_master_host: ${_param:infra_config_deploy_address}
39     # yamllint disable rule:line-length
40     salt_api_password_hash: "$6$sGnRlxGf$al5jMCetLP.vfI/fTl3Z0N7Za1aeiexL487jAtyRABVfT3NlwZxQGVhO7S1N8OwS/34VHYwZQA8lkXwKMN/GS1"
41     dhcp_nic: ${_param:opnfv_fn_vm_primary_interface}
42     single_nic: ${_param:opnfv_fn_vm_secondary_interface}
43     pxe_nic: ${_param:opnfv_fn_vm_tertiary_interface}
44   linux:
45     network:
46       interface:
47         dhcp:
48           enabled: true
49           type: eth
50           proto: dhcp
51           name: ${_param:dhcp_nic}
52         single:
53           enabled: true
54           type: eth
55           proto: static
56           name: ${_param:single_nic}
57           address: ${_param:single_address}
58           netmask: 255.255.255.0
59         pxe:
60           enabled: true
61           type: eth
62           proto: static
63           name: ${_param:pxe_nic}
64           address: ${_param:pxe_address}
65           netmask: 255.255.255.0
66   salt:
67     master:
68       accept_policy: open_mode
69       file_recv: true
70   reclass:
71     storage:
72       data_source:
73         engine: local
74       node:
75         infra_kvm_node01:
76           params:
77             keepalived_vip_priority: 100
78             linux_system_codename: xenial
79         infra_kvm_node02:
80           params:
81             keepalived_vip_priority: 101
82             linux_system_codename: xenial
83         infra_kvm_node03:
84           params:
85             keepalived_vip_priority: 102
86             linux_system_codename: xenial
87         openstack_telemetry_node01:
88           params:
89             linux_system_codename: xenial
90             # create resources only from 1 controller
91             # to prevent race conditions
92             ceilometer_create_gnocchi_resources: true
93             redis_cluster_role: 'master'
94         openstack_telemetry_node02:
95           params:
96             linux_system_codename: xenial
97             redis_cluster_role: 'slave'
98         openstack_telemetry_node03:
99           params:
100             linux_system_codename: xenial
101             redis_cluster_role: 'slave'
102         openstack_message_queue_node01:
103           params:
104             linux_system_codename: xenial
105         openstack_message_queue_node02:
106           params:
107             linux_system_codename: xenial
108         openstack_message_queue_node03:
109           params:
110             linux_system_codename: xenial
111         openstack_proxy_node01:
112           params:
113             linux_system_codename: xenial
114         openstack_proxy_node02:
115           params:
116             linux_system_codename: xenial
117         # stacklight_log_node01:
118         #   classes:
119         #     - system.elasticsearch.client.single
120         # stacklight_monitor_node01:
121         #   classes:
122         #     - system.grafana.client.single
123         #     - system.kibana.client.single
124         openstack_control_node01:
125           classes:
126             - cluster.mcp-common-ha.openstack_control_init
127           params:
128             linux_system_codename: xenial
129             # NOTE: When VCP is present, external_address is not used
130             external_address: ${_param:openstack_proxy_node01_address}
131         openstack_control_node02:
132           params:
133             linux_system_codename: xenial
134             external_address: 0.0.0.0
135         openstack_control_node03:
136           params:
137             linux_system_codename: xenial
138             external_address: ${_param:openstack_proxy_node02_address}
139         openstack_database_node01:
140           classes:
141             - cluster.mcp-common-ha.openstack_database_init
142           params:
143             linux_system_codename: xenial
144         openstack_database_node02:
145           params:
146             linux_system_codename: xenial
147         openstack_database_node03:
148           params:
149             linux_system_codename: xenial
150         openstack_compute_node01:
151           name: ${_param:openstack_compute_node01_hostname}
152           domain: ${_param:cluster_domain}
153           classes:
154             - cluster.${_param:cluster_name}.openstack.compute
155           params:
156             salt_master_host: ${_param:reclass_config_master}
157             linux_system_codename: xenial
158             control_address: ${_param:openstack_compute_node01_control_address}
159             single_address: ${_param:openstack_compute_node01_single_address}
160             tenant_address: ${_param:openstack_compute_node01_tenant_address}
161             external_address: ${_param:openstack_compute_node01_external_address}
162         openstack_compute_node02:
163           name: ${_param:openstack_compute_node02_hostname}
164           domain: ${_param:cluster_domain}
165           classes:
166             - cluster.${_param:cluster_name}.openstack.compute
167           params:
168             salt_master_host: ${_param:reclass_config_master}
169             linux_system_codename: xenial
170             control_address: ${_param:openstack_compute_node02_control_address}
171             single_address: ${_param:openstack_compute_node02_single_address}
172             tenant_address: ${_param:openstack_compute_node02_tenant_address}
173             external_address: ${_param:openstack_compute_node02_external_address}