blob: 5cf7d6cbe5e2861a653cec60fafd952dbfad7a7a [file] [log] [blame]
classes:
- system.linux.system.repo.mcp.apt_mirantis.ubuntu
- system.linux.system.repo.mcp.apt_mirantis.saltstack
- system.openssh.client.lab
- system.salt.master.pkg
- system.salt.minion.ca.salt_master
- system.salt.master.api
- system.salt.minion.cert.k8s_server
- system.mysql.client
- system.mysql.client.database.grafana
- system.reclass.storage.salt
- system.reclass.storage.system.kubernetes_control_cluster
- cluster.sl-k8s-calico.stacklight.proxy
- cluster.sl-k8s-calico
parameters:
_param:
salt_master_base_environment: prd
reclass_data_repository: "https://gerrit.mcp.mirantis.net/salt-models/mcp-virtual-lab.git"
reclass_data_revision: master
reclass_config_master: ${_param:infra_config_deploy_address}
single_address: ${_param:infra_config_address}
linux_system_codename: xenial
salt_api_password_hash: "$6$WV0P1shnoDh2gI/Z$22/Bcd7ffMv0jDlFpT63cAU4PiXHz9pjXwngToKwqAsgoeK4HNR3PiKaushjxp3JsQ8hNoJmAC6TxzVqfV8WH/"
salt_master_host: ${_param:infra_config_deploy_address}
deploy_address: ${_param:infra_config_deploy_address}
salt:
master:
reactor:
reclass/minion/classify:
- salt://reclass/reactor/node_register.sls
reclass:
storage:
class_mapping:
common_node:
expression: all
node_param:
single_address:
value_template: <<node_control_ip>>
linux_system_codename:
value_template: <<node_os>>
salt_master_host:
value_template: <<node_master_ip>>
deploy_address:
value_template: <<node_deploy_ip>>
infra_config:
expression: <<node_hostname>>__equals__cfg01
cluster_param:
infra_config_address:
value_template: <<node_control_ip>>
infra_config_deploy_address:
value_template: <<node_deploy_ip>>
cluster_domain:
value_template: <<node_domain>>
infra_proxy:
expression: <<node_hostname>>__startswith__prx
node_class:
value_template:
- cluster.<<node_cluster>>.stacklight.proxy
kubernetes_control01:
expression: <<node_hostname>>__equals__ctl01
cluster_param:
kubernetes_control_node01_address:
value_template: <<node_control_ip>>
kubernetes_control_node01_deploy_address:
value_template: <<node_deploy_ip>>
kubernetes_control02:
expression: <<node_hostname>>__equals__ctl02
cluster_param:
kubernetes_control_node02_address:
value_template: <<node_control_ip>>
kubernetes_control_node02_deploy_address:
value_template: <<node_deploy_ip>>
kubernetes_control03:
expression: <<node_hostname>>__equals__ctl03
cluster_param:
kubernetes_control_node03_address:
value_template: <<node_control_ip>>
kubernetes_control_node03_deploy_address:
value_template: <<node_deploy_ip>>
kubernetes_compute:
expression: <<node_hostname>>__startswith__cmp
node_class:
value_template:
- cluster.<<node_cluster>>.kubernetes.compute
node_param:
deploy_address:
value_template: <<node_deploy_ip>>
stacklight_monitor01:
expression: <<node_hostname>>__equals__mon01
cluster_param:
stacklight_node01_address:
value_template: <<node_control_ip>>
stacklight_monitor02:
expression: <<node_hostname>>__equals__mon02
cluster_param:
stacklight_node02_address:
value_template: <<node_control_ip>>
stacklight_monitor03:
expression: <<node_hostname>>__equals__mon03
cluster_param:
stacklight_node03_address:
value_template: <<node_control_ip>>
node:
prx_node:
name: ${_param:kubernetes_proxy_node01_hostname}
domain: ${_param:cluster_domain}
classes:
- cluster.${_param:cluster_name}.stacklight.proxy
params:
salt_master_host: ${_param:infra_config_deploy_address}
linux_system_codename: xenial
single_address: ${_param:kubernetes_proxy_node01_address}
stacklight_node01:
name: ${_param:stacklight_node01_hostname}
domain: ${_param:cluster_domain}
classes:
- service.galera.master.cluster
- system.docker.swarm.master
- cluster.${_param:cluster_name}.stacklight.client
- cluster.${_param:cluster_name}.stacklight.server
params:
salt_master_host: ${_param:infra_config_deploy_address}
linux_system_codename: xenial
single_address: ${_param:stacklight_node01_address}
keepalived_vip_priority: 100
mysql_cluster_role: master
stacklight_node02:
name: ${_param:stacklight_node02_hostname}
domain: ${_param:cluster_domain}
classes:
- service.galera.slave.cluster
- system.docker.swarm.manager
- cluster.${_param:cluster_name}.stacklight.server
params:
salt_master_host: ${_param:infra_config_deploy_address}
linux_system_codename: xenial
single_address: ${_param:stacklight_node02_address}
keepalived_vip_priority: 101
mysql_cluster_role: slave
stacklight_node03:
name: ${_param:stacklight_node03_hostname}
domain: ${_param:cluster_domain}
classes:
- service.galera.slave.cluster
- system.docker.swarm.manager
- cluster.${_param:cluster_name}.stacklight.server
params:
salt_master_host: ${_param:infra_config_deploy_address}
linux_system_codename: xenial
single_address: ${_param:stacklight_node03_address}
keepalived_vip_priority: 102
mysql_cluster_role: slave
kubernetes_compute_node01:
name: ${_param:kubernetes_compute_node01_hostname}
domain: ${_param:cluster_domain}
classes:
- cluster.${_param:cluster_name}.kubernetes.compute
params:
salt_master_host: ${_param:infra_config_deploy_address}
linux_system_codename: xenial
single_address: ${_param:kubernetes_compute_node01_address}
deploy_address: ${_param:kubernetes_compute_node01_deploy_address}
kubernetes_compute_node02:
name: ${_param:kubernetes_compute_node02_hostname}
domain: ${_param:cluster_domain}
classes:
- cluster.${_param:cluster_name}.kubernetes.compute
params:
salt_master_host: ${_param:infra_config_deploy_address}
linux_system_codename: xenial
single_address: ${_param:kubernetes_compute_node02_address}
deploy_address: ${_param:kubernetes_compute_node02_deploy_address}