Rectify nova placement API check
[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       worker_threads: 8
71       command_timeout: 20
72   reclass:
73     storage:
74       data_source:
75         engine: local
76       node:
77         infra_kvm_node01:
78           params:
79             keepalived_vip_priority: 100
80             linux_system_codename: xenial
81         infra_kvm_node02:
82           params:
83             keepalived_vip_priority: 101
84             linux_system_codename: xenial
85         infra_kvm_node03:
86           params:
87             keepalived_vip_priority: 102
88             linux_system_codename: xenial
89         openstack_telemetry_node01:
90           params:
91             linux_system_codename: xenial
92             # create resources only from 1 controller
93             # to prevent race conditions
94             ceilometer_create_gnocchi_resources: true
95             redis_cluster_role: 'master'
96         openstack_telemetry_node02:
97           params:
98             linux_system_codename: xenial
99             redis_cluster_role: 'slave'
100         openstack_telemetry_node03:
101           params:
102             linux_system_codename: xenial
103             redis_cluster_role: 'slave'
104         openstack_message_queue_node01:
105           params:
106             linux_system_codename: xenial
107         openstack_message_queue_node02:
108           params:
109             linux_system_codename: xenial
110         openstack_message_queue_node03:
111           params:
112             linux_system_codename: xenial
113         openstack_proxy_node01:
114           params:
115             linux_system_codename: xenial
116         openstack_proxy_node02:
117           params:
118             linux_system_codename: xenial
119         # stacklight_log_node01:
120         #   classes:
121         #     - system.elasticsearch.client.single
122         # stacklight_monitor_node01:
123         #   classes:
124         #     - system.grafana.client.single
125         #     - system.kibana.client.single
126         openstack_control_node01:
127           classes:
128             - cluster.mcp-common-ha.openstack_control_init
129           params:
130             linux_system_codename: xenial
131             # NOTE: When VCP is present, external_address is not used
132             external_address: ${_param:openstack_proxy_node01_address}
133         openstack_control_node02:
134           params:
135             linux_system_codename: xenial
136             external_address: 0.0.0.0
137         openstack_control_node03:
138           params:
139             linux_system_codename: xenial
140             external_address: ${_param:openstack_proxy_node02_address}
141         openstack_database_node01:
142           classes:
143             - cluster.mcp-common-ha.openstack_database_init
144           params:
145             linux_system_codename: xenial
146         openstack_database_node02:
147           params:
148             linux_system_codename: xenial
149         openstack_database_node03:
150           params:
151             linux_system_codename: xenial
152         openstack_compute_node01:
153           name: ${_param:openstack_compute_node01_hostname}
154           domain: ${_param:cluster_domain}
155           classes:
156             - cluster.${_param:cluster_name}.openstack.compute
157           params:
158             salt_master_host: ${_param:reclass_config_master}
159             linux_system_codename: xenial
160             control_address: ${_param:openstack_compute_node01_control_address}
161             single_address: ${_param:openstack_compute_node01_single_address}
162             tenant_address: ${_param:openstack_compute_node01_tenant_address}
163             external_address: ${_param:openstack_compute_node01_external_address}
164         openstack_compute_node02:
165           name: ${_param:openstack_compute_node02_hostname}
166           domain: ${_param:cluster_domain}
167           classes:
168             - cluster.${_param:cluster_name}.openstack.compute
169           params:
170             salt_master_host: ${_param:reclass_config_master}
171             linux_system_codename: xenial
172             control_address: ${_param:openstack_compute_node02_control_address}
173             single_address: ${_param:openstack_compute_node02_single_address}
174             tenant_address: ${_param:openstack_compute_node02_tenant_address}
175             external_address: ${_param:openstack_compute_node02_external_address}