blob: 2da7c8805e1b821a88ebfe52116916f169746256 [file] [log] [blame]
Tomáš Kukrál328de802017-04-27 15:17:40 +02001classes:
Victor Ryzhenkin009a1f32018-04-06 15:39:27 +04002- system.linux.system.single
3- system.linux.system.single.debian
Martin Polreicha0addcc2018-06-25 11:32:52 +02004- system.linux.system.repo.mcp.apt_mirantis.saltstack
Dmitry Kalashnik2a068bb2018-04-04 14:11:49 +04005- system.linux.system.repo.mcp.apt_mirantis.ubuntu
Tomáš Kukrál328de802017-04-27 15:17:40 +02006- system.openssh.client.lab
7- system.salt.master.pkg
Tomáš Kukrál328de802017-04-27 15:17:40 +02008- system.salt.master.api
Victor Ryzhenkin009a1f32018-04-06 15:39:27 +04009- system.salt.minion.ca.salt_master
Tomáš Kukrál328de802017-04-27 15:17:40 +020010- system.salt.minion.cert.k8s_server
Dmitry Kalashnik2a068bb2018-04-04 14:11:49 +040011- system.mysql.client
12- system.mysql.client.database.grafana
13- system.reclass.storage.salt
Tomáš Kukrál328de802017-04-27 15:17:40 +020014- system.reclass.storage.system.kubernetes_control_cluster
15- system.reclass.storage.system.opencontrail_control_cluster
Victor Ryzhenkin009a1f32018-04-06 15:39:27 +040016- cluster.virtual-mcp11-k8s-contrail
Tomáš Kukrál328de802017-04-27 15:17:40 +020017parameters:
18 _param:
19 salt_master_base_environment: prd
20 reclass_data_repository: "https://gerrit.mcp.mirantis.net/salt-models/mcp-virtual-lab"
21 reclass_data_revision: master
22 reclass_config_master: ${_param:infra_config_deploy_address}
23 single_address: ${_param:infra_config_address}
Victor Ryzhenkin009a1f32018-04-06 15:39:27 +040024 deploy_address: ${_param:infra_config_deploy_address}
Tomáš Kukrál328de802017-04-27 15:17:40 +020025 linux_system_codename: xenial
26 salt_api_password_hash: "$6$WV0P1shnoDh2gI/Z$22/Bcd7ffMv0jDlFpT63cAU4PiXHz9pjXwngToKwqAsgoeK4HNR3PiKaushjxp3JsQ8hNoJmAC6TxzVqfV8WH/"
Simon Pasquieref3efb52017-05-04 12:47:11 +020027 salt_master_host: ${_param:infra_config_deploy_address}
Dmitry Kalashnik2a068bb2018-04-04 14:11:49 +040028 openstack_version: pike
Victor Ryzhenkin009a1f32018-04-06 15:39:27 +040029 salt:
30 master:
31 reactor:
32 reclass/minion/classify:
33 - salt://reclass/reactor/node_register.sls
Marek Celoud9749b272017-07-10 17:47:42 +020034 linux:
35 network:
36 interface:
37 ens4:
38 enabled: true
39 type: eth
40 proto: static
41 address: ${_param:single_address}
42 netmask: 255.255.255.0
Victor Ryzhenkin009a1f32018-04-06 15:39:27 +040043 pre_up_cmds:
44 - "iptables -t nat -A POSTROUTING -o ens3 -j MASQUERADE"
45 post_down_cmds:
46 - "iptables -t nat -F POSTROUTING"
47 system:
48 kernel:
49 sysctl:
50 net.ipv4.conf.ens3.forwarding: 1
51 net.ipv4.conf.ens3.send_redirects: 0
Tomáš Kukrál328de802017-04-27 15:17:40 +020052 reclass:
53 storage:
Jiri Broulik432ae9c2017-08-17 10:24:23 +020054 class_mapping:
55 common_node:
56 expression: all
57 node_param:
58 single_address:
59 value_template: <<node_control_ip>>
60 linux_system_codename:
61 value_template: <<node_os>>
62 salt_master_host:
63 value_template: <<node_master_ip>>
Victor Ryzhenkin009a1f32018-04-06 15:39:27 +040064 deploy_address:
65 value_template: <<node_deploy_ip>>
Jiri Broulik432ae9c2017-08-17 10:24:23 +020066 infra_config:
67 expression: <<node_hostname>>__equals__cfg01
68 cluster_param:
69 infra_config_address:
70 value_template: <<node_control_ip>>
71 infra_config_deploy_address:
72 value_template: <<node_deploy_ip>>
Victor Ryzhenkin009a1f32018-04-06 15:39:27 +040073 cluster_domain:
74 value_template: <<node_domain>>
Jiri Broulik432ae9c2017-08-17 10:24:23 +020075 infra_proxy:
76 expression: <<node_hostname>>__startswith__prx
77 node_class:
78 value_template:
79 - cluster.<<node_cluster>>.stacklight.proxy
80 kubernetes_control01:
81 expression: <<node_hostname>>__equals__ctl01
82 cluster_param:
83 kubernetes_control_node01_address:
84 value_template: <<node_control_ip>>
Victor Ryzhenkin009a1f32018-04-06 15:39:27 +040085 kubernetes_control_node01_deploy_address:
86 value_template: <<node_deploy_ip>>
Jiri Broulik432ae9c2017-08-17 10:24:23 +020087 kubernetes_control02:
88 expression: <<node_hostname>>__equals__ctl02
89 cluster_param:
90 kubernetes_control_node02_address:
91 value_template: <<node_control_ip>>
Victor Ryzhenkin009a1f32018-04-06 15:39:27 +040092 kubernetes_control_node02_deploy_address:
93 value_template: <<node_deploy_ip>>
Jiri Broulik432ae9c2017-08-17 10:24:23 +020094 kubernetes_control03:
95 expression: <<node_hostname>>__equals__ctl03
96 cluster_param:
97 kubernetes_control_node03_address:
98 value_template: <<node_control_ip>>
Victor Ryzhenkin009a1f32018-04-06 15:39:27 +040099 kubernetes_control_node03_deploy_address:
100 value_template: <<node_deploy_ip>>
101 etcd_control01:
102 expression: <<node_hostname>>__equals__ctl01
103 cluster_param:
104 etcd_control_node01_address:
105 value_template: <<node_deploy_ip>>
106 etcd_control02:
107 expression: <<node_hostname>>__equals__ctl02
108 cluster_param:
109 etcd_control_node02_address:
110 value_template: <<node_deploy_ip>>
111 etcd_control03:
112 expression: <<node_hostname>>__equals__ctl03
113 cluster_param:
114 etcd_control_node03_address:
115 value_template: <<node_deploy_ip>>
Jiri Broulik432ae9c2017-08-17 10:24:23 +0200116 kubernetes_compute:
117 expression: <<node_hostname>>__startswith__cmp
118 node_class:
119 value_template:
120 - cluster.<<node_cluster>>.kubernetes.compute
121 stacklight_monitor01:
122 expression: <<node_hostname>>__equals__mon01
123 cluster_param:
124 stacklight_node01_address:
125 value_template: <<node_control_ip>>
126 stacklight_monitor02:
127 expression: <<node_hostname>>__equals__mon02
128 cluster_param:
129 stacklight_node02_address:
130 value_template: <<node_control_ip>>
131 stacklight_monitor03:
132 expression: <<node_hostname>>__equals__mon03
133 cluster_param:
134 stacklight_node03_address:
135 value_template: <<node_control_ip>>
Tomáš Kukrál328de802017-04-27 15:17:40 +0200136 node:
Tomáš Kukrál328de802017-04-27 15:17:40 +0200137 prx_node:
138 name: ${_param:kubernetes_proxy_node01_hostname}
139 domain: ${_param:cluster_domain}
140 classes:
Simon Pasquiera7a449d2017-05-11 10:03:41 +0200141 - cluster.${_param:cluster_name}.stacklight.proxy
Tomáš Kukrál328de802017-04-27 15:17:40 +0200142 params:
Simon Pasquieref3efb52017-05-04 12:47:11 +0200143 salt_master_host: ${_param:infra_config_deploy_address}
Tomáš Kukrál328de802017-04-27 15:17:40 +0200144 linux_system_codename: xenial
145 single_address: ${_param:kubernetes_proxy_node01_address}
Simon Pasquiera7a449d2017-05-11 10:03:41 +0200146 stacklight_node01:
147 name: ${_param:stacklight_node01_hostname}
Tomáš Kukrál328de802017-04-27 15:17:40 +0200148 domain: ${_param:cluster_domain}
149 classes:
Simon Pasquier994b69d2017-06-08 15:58:53 +0200150 - service.galera.master.cluster
Simon Pasquiera7a449d2017-05-11 10:03:41 +0200151 - system.docker.swarm.master
152 - cluster.${_param:cluster_name}.stacklight.client
153 - cluster.${_param:cluster_name}.stacklight.server
Tomáš Kukrál328de802017-04-27 15:17:40 +0200154 params:
Simon Pasquieref3efb52017-05-04 12:47:11 +0200155 salt_master_host: ${_param:infra_config_deploy_address}
Tomáš Kukrál328de802017-04-27 15:17:40 +0200156 linux_system_codename: xenial
Simon Pasquiera7a449d2017-05-11 10:03:41 +0200157 single_address: ${_param:stacklight_node01_address}
Simon Pasquieref3efb52017-05-04 12:47:11 +0200158 keepalived_vip_priority: 100
Simon Pasquier994b69d2017-06-08 15:58:53 +0200159 mysql_cluster_role: master
Simon Pasquiera7a449d2017-05-11 10:03:41 +0200160 stacklight_node02:
161 name: ${_param:stacklight_node02_hostname}
Simon Pasquieref3efb52017-05-04 12:47:11 +0200162 domain: ${_param:cluster_domain}
163 classes:
Simon Pasquier994b69d2017-06-08 15:58:53 +0200164 - service.galera.slave.cluster
Simon Pasquiera7a449d2017-05-11 10:03:41 +0200165 - system.docker.swarm.manager
166 - cluster.${_param:cluster_name}.stacklight.server
Simon Pasquieref3efb52017-05-04 12:47:11 +0200167 params:
168 salt_master_host: ${_param:infra_config_deploy_address}
169 linux_system_codename: xenial
Simon Pasquiera7a449d2017-05-11 10:03:41 +0200170 single_address: ${_param:stacklight_node02_address}
Simon Pasquieref3efb52017-05-04 12:47:11 +0200171 keepalived_vip_priority: 101
Simon Pasquier994b69d2017-06-08 15:58:53 +0200172 mysql_cluster_role: slave
Simon Pasquiera7a449d2017-05-11 10:03:41 +0200173 stacklight_node03:
174 name: ${_param:stacklight_node03_hostname}
Simon Pasquieref3efb52017-05-04 12:47:11 +0200175 domain: ${_param:cluster_domain}
176 classes:
Simon Pasquier994b69d2017-06-08 15:58:53 +0200177 - service.galera.slave.cluster
Simon Pasquiera7a449d2017-05-11 10:03:41 +0200178 - system.docker.swarm.manager
179 - cluster.${_param:cluster_name}.stacklight.server
Simon Pasquieref3efb52017-05-04 12:47:11 +0200180 params:
181 salt_master_host: ${_param:infra_config_deploy_address}
182 linux_system_codename: xenial
Simon Pasquiera7a449d2017-05-11 10:03:41 +0200183 single_address: ${_param:stacklight_node03_address}
Simon Pasquieref3efb52017-05-04 12:47:11 +0200184 keepalived_vip_priority: 102
Simon Pasquier994b69d2017-06-08 15:58:53 +0200185 mysql_cluster_role: slave
Tomáš Kukrál328de802017-04-27 15:17:40 +0200186 opencontrail_control_node01:
187 params:
188 rabbitmq_cluster_role: master
189 opencontrail_control_node02:
190 params:
191 rabbitmq_cluster_role: slave
192 opencontrail_control_node03:
193 params:
194 rabbitmq_cluster_role: slave
Jiri Broulikd3a38672017-08-22 14:15:09 +0200195 kubernetes_compute_node01:
196 name: ${_param:kubernetes_compute_node01_hostname}
197 domain: ${_param:cluster_domain}
198 classes:
199 - cluster.${_param:cluster_name}.kubernetes.compute
200 params:
201 salt_master_host: ${_param:infra_config_deploy_address}
202 linux_system_codename: xenial
203 single_address: ${_param:kubernetes_compute_node01_address}
204 kubernetes_compute_node02:
205 name: ${_param:kubernetes_compute_node02_hostname}
206 domain: ${_param:cluster_domain}
207 classes:
208 - cluster.${_param:cluster_name}.kubernetes.compute
209 params:
210 salt_master_host: ${_param:infra_config_deploy_address}
211 linux_system_codename: xenial
Dmitry Kalashnik2a068bb2018-04-04 14:11:49 +0400212 single_address: ${_param:kubernetes_compute_node02_address}