Merge swarm and monitoring classes (mcp11-k8s-*)

This avoids many problems when overriding parameters in the init
classes.

Change-Id: I71067f26c95e0e3807cd1eb94a6bb735f08df166
diff --git a/classes/cluster/virtual-mcp11-k8s-calico/infra/config.yml b/classes/cluster/virtual-mcp11-k8s-calico/infra/config.yml
index ee53ccc..865cb74 100644
--- a/classes/cluster/virtual-mcp11-k8s-calico/infra/config.yml
+++ b/classes/cluster/virtual-mcp11-k8s-calico/infra/config.yml
@@ -45,48 +45,48 @@
           name: ${_param:kubernetes_proxy_node01_hostname}
           domain: ${_param:cluster_domain}
           classes:
-          - cluster.${_param:cluster_name}.monitoring.proxy
+          - 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}
-        docker_swarm_node01:
-          name: ${_param:docker_swarm_node01_hostname}
+        stacklight_node01:
+          name: ${_param:stacklight_node01_hostname}
           domain: ${_param:cluster_domain}
           classes:
           - service.galera.master.cluster
-          - cluster.${_param:cluster_name}.swarm.master
-          - cluster.${_param:cluster_name}.monitoring.client
-          - cluster.${_param:cluster_name}.monitoring.server
+          - 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:docker_swarm_node01_address}
+            single_address: ${_param:stacklight_node01_address}
             keepalived_vip_priority: 100
             mysql_cluster_role: master
-        docker_swarm_node02:
-          name: ${_param:docker_swarm_node02_hostname}
+        stacklight_node02:
+          name: ${_param:stacklight_node02_hostname}
           domain: ${_param:cluster_domain}
           classes:
           - service.galera.slave.cluster
-          - cluster.${_param:cluster_name}.swarm.slave
-          - cluster.${_param:cluster_name}.monitoring.server
+          - 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:docker_swarm_node02_address}
+            single_address: ${_param:stacklight_node02_address}
             keepalived_vip_priority: 101
             mysql_cluster_role: slave
-        docker_swarm_node03:
-          name: ${_param:docker_swarm_node03_hostname}
+        stacklight_node03:
+          name: ${_param:stacklight_node03_hostname}
           domain: ${_param:cluster_domain}
           classes:
           - service.galera.slave.cluster
-          - cluster.${_param:cluster_name}.swarm.slave
-          - cluster.${_param:cluster_name}.monitoring.server
+          - 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:docker_swarm_node03_address}
+            single_address: ${_param:stacklight_node03_address}
             keepalived_vip_priority: 102
             mysql_cluster_role: slave
diff --git a/classes/cluster/virtual-mcp11-k8s-calico/infra/init.yml b/classes/cluster/virtual-mcp11-k8s-calico/infra/init.yml
index d1e0603..f646f66 100644
--- a/classes/cluster/virtual-mcp11-k8s-calico/infra/init.yml
+++ b/classes/cluster/virtual-mcp11-k8s-calico/infra/init.yml
@@ -11,9 +11,9 @@
 - system.rsyslog.client.single
 - system.telegraf.agent
 - system.prometheus.collector
+- service.grafana.collector
 - cluster.virtual-mcp11-k8s-calico.kubernetes
-- cluster.virtual-mcp11-k8s-calico.monitoring
-- cluster.virtual-mcp11-k8s-calico.swarm
+- cluster.virtual-mcp11-k8s-calico.stacklight
 - cluster.overwrite
 parameters:
   _param:
diff --git a/classes/cluster/virtual-mcp11-k8s-calico/monitoring/init.yml b/classes/cluster/virtual-mcp11-k8s-calico/monitoring/init.yml
deleted file mode 100644
index 4f8fc0a..0000000
--- a/classes/cluster/virtual-mcp11-k8s-calico/monitoring/init.yml
+++ /dev/null
@@ -1,16 +0,0 @@
-parameters:
-  _param:
-    # glusterfs
-    glusterfs_service_host: ${_param:docker_swarm_address}
-
-    # prometheus
-    prometheus_control_address: ${_param:docker_swarm_address}
-
-    mysql_admin_user: root
-    mysql_admin_password: workshop
-
-    mysql_grafana_password: password
-    cluster_local_address: ${_param:single_address}
-    galera_server_cluster_name: monitoring_cluster
-    galera_server_maintenance_password: workshop
-    galera_server_admin_password: workshop
diff --git a/classes/cluster/virtual-mcp11-k8s-calico/monitoring/client.yml b/classes/cluster/virtual-mcp11-k8s-calico/stacklight/client.yml
similarity index 66%
rename from classes/cluster/virtual-mcp11-k8s-calico/monitoring/client.yml
rename to classes/cluster/virtual-mcp11-k8s-calico/stacklight/client.yml
index 518a3da..3799964 100644
--- a/classes/cluster/virtual-mcp11-k8s-calico/monitoring/client.yml
+++ b/classes/cluster/virtual-mcp11-k8s-calico/stacklight/client.yml
@@ -1,4 +1,5 @@
 classes:
+- system.docker.client
 - system.elasticsearch.client.single
 - system.grafana.client
 - system.grafana.client.datasource.prometheus
@@ -6,11 +7,11 @@
 parameters:
   _param:
     # Elasticsearch/Kibana client parameters
-    stacklight_log_address: ${_param:docker_swarm_address}
+    stacklight_log_address: ${_param:stacklight_address}
     # Grafana client parameters
-    grafana_address: ${_param:docker_swarm_address}
+    grafana_address: ${_param:stacklight_address}
     grafana_port: 15013
     grafana_user: admin
     grafana_password: ${_param:grafana_admin_password}
-    grafana_prometheus_address: ${_param:docker_swarm_address}
+    grafana_prometheus_address: ${_param:stacklight_address}
     grafana_prometheus_port: 15010
diff --git a/classes/cluster/virtual-mcp11-k8s-calico/stacklight/init.yml b/classes/cluster/virtual-mcp11-k8s-calico/stacklight/init.yml
new file mode 100644
index 0000000..f755342
--- /dev/null
+++ b/classes/cluster/virtual-mcp11-k8s-calico/stacklight/init.yml
@@ -0,0 +1,50 @@
+parameters:
+  _param:
+    stacklight_address: 172.16.10.252
+    stacklight_node01_hostname: mon01
+    stacklight_node02_hostname: mon02
+    stacklight_node03_hostname: mon03
+    stacklight_node01_address: 172.16.10.107
+    stacklight_node02_address: 172.16.10.108
+    stacklight_node03_address: 172.16.10.109
+
+    # Glusterfs
+    glusterfs_service_host: ${_param:stacklight_address}
+
+    # Prometheus
+    prometheus_control_address: ${_param:stacklight_address}
+
+    mysql_admin_user: root
+    mysql_admin_password: workshop
+
+    mysql_grafana_password: password
+    cluster_local_address: ${_param:single_address}
+    galera_server_cluster_name: monitoring_cluster
+    galera_server_maintenance_password: workshop
+    galera_server_admin_password: workshop
+  linux:
+    network:
+      host:
+        mon:
+          address: ${_param:stacklight_address}
+          names:
+          - mon
+          - mon.${_param:cluster_domain}
+        mon01:
+          address: ${_param:stacklight_node01_address}
+          names:
+          - ${_param:stacklight_node01_hostname}
+          - ${_param:stacklight_node01_hostname}.${_param:cluster_domain}
+        mon02:
+          address: ${_param:stacklight_node02_address}
+          names:
+          - ${_param:stacklight_node02_hostname}
+          - ${_param:stacklight_node02_hostname}.${_param:cluster_domain}
+        mon03:
+          address: ${_param:stacklight_node03_address}
+          names:
+          - ${_param:stacklight_node03_hostname}
+          - ${_param:stacklight_node03_hostname}.${_param:cluster_domain}
+    system:
+      name: ${_param:infra_config_hostname}
+      domain: ${_param:cluster_domain}
diff --git a/classes/cluster/virtual-mcp11-k8s-calico/monitoring/proxy.yml b/classes/cluster/virtual-mcp11-k8s-calico/stacklight/proxy.yml
similarity index 100%
rename from classes/cluster/virtual-mcp11-k8s-calico/monitoring/proxy.yml
rename to classes/cluster/virtual-mcp11-k8s-calico/stacklight/proxy.yml
diff --git a/classes/cluster/virtual-mcp11-k8s-calico/monitoring/server.yml b/classes/cluster/virtual-mcp11-k8s-calico/stacklight/server.yml
similarity index 77%
rename from classes/cluster/virtual-mcp11-k8s-calico/monitoring/server.yml
rename to classes/cluster/virtual-mcp11-k8s-calico/stacklight/server.yml
index 8440e7f..5635528 100644
--- a/classes/cluster/virtual-mcp11-k8s-calico/monitoring/server.yml
+++ b/classes/cluster/virtual-mcp11-k8s-calico/stacklight/server.yml
@@ -1,4 +1,5 @@
 classes:
+- system.docker.host
 - system.linux.system.repo.tcp_elastic
 # Needed to install Galera packages
 - system.linux.system.repo.mcp.openstack
@@ -24,7 +25,8 @@
 - cluster.virtual-mcp11-k8s-calico.infra
 parameters:
   _param:
-    cluster_vip_address: ${_param:docker_swarm_address}
+    cluster_vip_address: ${_param:stacklight_address}
+    cluster_public_host: mon
     docker_image_alertmanager: alertmanager:latest
     docker_image_pushgateway: pushgateway:latest
     docker_image_prometheus: prometheus:latest
@@ -33,15 +35,15 @@
     keepalived_prometheus_vip_address: ${_param:cluster_vip_address}
     keepalived_prometheus_vip_password: password
     keepalived_prometheus_vip_interface: ens4
+    # Docker/Elasticsearch
+    cluster_node01_hostname: ${_param:stacklight_node01_hostname}
+    cluster_node01_address: ${_param:stacklight_node01_address}
+    cluster_node02_hostname: ${_param:stacklight_node02_hostname}
+    cluster_node02_address: ${_param:stacklight_node02_address}
+    cluster_node03_hostname: ${_param:stacklight_node03_hostname}
+    cluster_node03_address: ${_param:stacklight_node03_address}
     # Kibana
     kibana_elasticsearch_host: ${_param:cluster_vip_address}
-    # Elasticsearch
-    cluster_node01_hostname: ${_param:docker_swarm_node01_hostname}
-    cluster_node01_address: ${_param:docker_swarm_node01_address}
-    cluster_node02_hostname: ${_param:docker_swarm_node02_hostname}
-    cluster_node02_address: ${_param:docker_swarm_node02_address}
-    cluster_node03_hostname: ${_param:docker_swarm_node03_hostname}
-    cluster_node03_address: ${_param:docker_swarm_node03_address}
     # Galera
     openstack_version: newton
     # Grafana
diff --git a/classes/cluster/virtual-mcp11-k8s-calico/swarm/init.yml b/classes/cluster/virtual-mcp11-k8s-calico/swarm/init.yml
deleted file mode 100644
index 72ce980..0000000
--- a/classes/cluster/virtual-mcp11-k8s-calico/swarm/init.yml
+++ /dev/null
@@ -1,36 +0,0 @@
-parameters:
-  _param:
-    docker_swarm_hostname: mon
-    docker_swarm_address: 172.16.10.252
-    docker_swarm_node01_hostname: mon01
-    docker_swarm_node02_hostname: mon02
-    docker_swarm_node03_hostname: mon03
-    docker_swarm_node01_address: 172.16.10.107
-    docker_swarm_node02_address: 172.16.10.108
-    docker_swarm_node03_address: 172.16.10.109
-  linux:
-    network:
-      host:
-        mon:
-          address: ${_param:docker_swarm_address}
-          names:
-          - ${_param:docker_swarm_hostname}
-          - ${_param:docker_swarm_hostname}.${_param:cluster_domain}
-        mon01:
-          address: ${_param:docker_swarm_node01_address}
-          names:
-          - ${_param:docker_swarm_node01_hostname}
-          - ${_param:docker_swarm_node01_hostname}.${_param:cluster_domain}
-        mon02:
-          address: ${_param:docker_swarm_node02_address}
-          names:
-          - ${_param:docker_swarm_node02_hostname}
-          - ${_param:docker_swarm_node02_hostname}.${_param:cluster_domain}
-        mon03:
-          address: ${_param:docker_swarm_node03_address}
-          names:
-          - ${_param:docker_swarm_node03_hostname}
-          - ${_param:docker_swarm_node03_hostname}.${_param:cluster_domain}
-    system:
-      name: ${_param:infra_config_hostname}
-      domain: ${_param:cluster_domain}
diff --git a/classes/cluster/virtual-mcp11-k8s-calico/swarm/master.yml b/classes/cluster/virtual-mcp11-k8s-calico/swarm/master.yml
deleted file mode 100644
index b2d33a1..0000000
--- a/classes/cluster/virtual-mcp11-k8s-calico/swarm/master.yml
+++ /dev/null
@@ -1,18 +0,0 @@
-classes:
-- system.docker.client
-- system.docker.host
-- system.docker.swarm.master
-- cluster.virtual-mcp11-k8s-calico.infra
-parameters:
-  _param:
-    cluster_public_host: ${_param:docker_swarm_hostname}
-  docker:
-    client:
-      enabled: true
-      compose:
-        source:
-          engine: docker
-          image: "docker/compose:1.8.0"
-    swarm:
-      role: master
-      advertise_addr: ${_param:single_address}
diff --git a/classes/cluster/virtual-mcp11-k8s-calico/swarm/slave.yml b/classes/cluster/virtual-mcp11-k8s-calico/swarm/slave.yml
deleted file mode 100644
index 810da3d..0000000
--- a/classes/cluster/virtual-mcp11-k8s-calico/swarm/slave.yml
+++ /dev/null
@@ -1,11 +0,0 @@
-classes:
-- system.docker.host
-- system.docker.swarm.manager
-- cluster.virtual-mcp11-k8s-calico.infra
-parameters:
-  _param:
-    cluster_public_host: ${_param:docker_swarm_hostname}
-  docker:
-    swarm:
-      master:
-        host: ${_param:docker_swarm_node01_address}
diff --git a/classes/cluster/virtual-mcp11-k8s-contrail/infra/config.yml b/classes/cluster/virtual-mcp11-k8s-contrail/infra/config.yml
index 29cc1c5..4077b40 100644
--- a/classes/cluster/virtual-mcp11-k8s-contrail/infra/config.yml
+++ b/classes/cluster/virtual-mcp11-k8s-contrail/infra/config.yml
@@ -44,44 +44,44 @@
           name: ${_param:kubernetes_proxy_node01_hostname}
           domain: ${_param:cluster_domain}
           classes:
-          - cluster.${_param:cluster_name}.monitoring.proxy
+          - 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}
-        docker_swarm_node01:
-          name: ${_param:docker_swarm_node01_hostname}
+        stacklight_node01:
+          name: ${_param:stacklight_node01_hostname}
           domain: ${_param:cluster_domain}
           classes:
-          - cluster.${_param:cluster_name}.swarm.master
-          - cluster.${_param:cluster_name}.monitoring.client
-          - cluster.${_param:cluster_name}.monitoring.server
+          - 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:docker_swarm_node01_address}
+            single_address: ${_param:stacklight_node01_address}
             keepalived_vip_priority: 100
-        docker_swarm_node02:
-          name: ${_param:docker_swarm_node02_hostname}
+        stacklight_node02:
+          name: ${_param:stacklight_node02_hostname}
           domain: ${_param:cluster_domain}
           classes:
-          - cluster.${_param:cluster_name}.swarm.slave
-          - cluster.${_param:cluster_name}.monitoring.server
+          - 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:docker_swarm_node02_address}
+            single_address: ${_param:stacklight_node02_address}
             keepalived_vip_priority: 101
-        docker_swarm_node03:
-          name: ${_param:docker_swarm_node03_hostname}
+        stacklight_node03:
+          name: ${_param:stacklight_node03_hostname}
           domain: ${_param:cluster_domain}
           classes:
-          - cluster.${_param:cluster_name}.swarm.slave
-          - cluster.${_param:cluster_name}.monitoring.server
+          - 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:docker_swarm_node03_address}
+            single_address: ${_param:stacklight_node03_address}
             keepalived_vip_priority: 102
         opencontrail_control_node01:
           params:
diff --git a/classes/cluster/virtual-mcp11-k8s-contrail/infra/init.yml b/classes/cluster/virtual-mcp11-k8s-contrail/infra/init.yml
index 634f0f3..4cfe566 100644
--- a/classes/cluster/virtual-mcp11-k8s-contrail/infra/init.yml
+++ b/classes/cluster/virtual-mcp11-k8s-contrail/infra/init.yml
@@ -10,14 +10,14 @@
 - system.openssh.server.team.k8s_team
 - system.rsyslog.client.single
 - system.telegraf.agent
+- system.prometheus.collector
+- service.grafana.collector
 - cluster.virtual-mcp11-k8s-contrail.kubernetes
 - cluster.virtual-mcp11-k8s-contrail.opencontrail
-- cluster.virtual-mcp11-k8s-calico.monitoring
-- cluster.virtual-mcp11-k8s-calico.swarm
+- cluster.virtual-mcp11-k8s-contrail.stacklight
 - cluster.overwrite
 parameters:
   _param:
-
     # infra service addresses
     infra_config_hostname: cfg01
     infra_config_address: 172.16.10.100
diff --git a/classes/cluster/virtual-mcp11-k8s-contrail/monitoring/client.yml b/classes/cluster/virtual-mcp11-k8s-contrail/monitoring/client.yml
deleted file mode 100644
index 518a3da..0000000
--- a/classes/cluster/virtual-mcp11-k8s-contrail/monitoring/client.yml
+++ /dev/null
@@ -1,16 +0,0 @@
-classes:
-- system.elasticsearch.client.single
-- system.grafana.client
-- system.grafana.client.datasource.prometheus
-- system.kibana.client.single
-parameters:
-  _param:
-    # Elasticsearch/Kibana client parameters
-    stacklight_log_address: ${_param:docker_swarm_address}
-    # Grafana client parameters
-    grafana_address: ${_param:docker_swarm_address}
-    grafana_port: 15013
-    grafana_user: admin
-    grafana_password: ${_param:grafana_admin_password}
-    grafana_prometheus_address: ${_param:docker_swarm_address}
-    grafana_prometheus_port: 15010
diff --git a/classes/cluster/virtual-mcp11-k8s-contrail/monitoring/init.yml b/classes/cluster/virtual-mcp11-k8s-contrail/monitoring/init.yml
deleted file mode 100644
index 96c462b..0000000
--- a/classes/cluster/virtual-mcp11-k8s-contrail/monitoring/init.yml
+++ /dev/null
@@ -1,7 +0,0 @@
-parameters:
-  _param:
-    # glusterfs
-    glusterfs_service_host: ${_param:docker_swarm_address}
-
-    # prometheus
-    prometheus_control_address: ${_param:docker_swarm_address}
diff --git a/classes/cluster/virtual-mcp11-k8s-calico/monitoring/client.yml b/classes/cluster/virtual-mcp11-k8s-contrail/stacklight/client.yml
similarity index 66%
copy from classes/cluster/virtual-mcp11-k8s-calico/monitoring/client.yml
copy to classes/cluster/virtual-mcp11-k8s-contrail/stacklight/client.yml
index 518a3da..3799964 100644
--- a/classes/cluster/virtual-mcp11-k8s-calico/monitoring/client.yml
+++ b/classes/cluster/virtual-mcp11-k8s-contrail/stacklight/client.yml
@@ -1,4 +1,5 @@
 classes:
+- system.docker.client
 - system.elasticsearch.client.single
 - system.grafana.client
 - system.grafana.client.datasource.prometheus
@@ -6,11 +7,11 @@
 parameters:
   _param:
     # Elasticsearch/Kibana client parameters
-    stacklight_log_address: ${_param:docker_swarm_address}
+    stacklight_log_address: ${_param:stacklight_address}
     # Grafana client parameters
-    grafana_address: ${_param:docker_swarm_address}
+    grafana_address: ${_param:stacklight_address}
     grafana_port: 15013
     grafana_user: admin
     grafana_password: ${_param:grafana_admin_password}
-    grafana_prometheus_address: ${_param:docker_swarm_address}
+    grafana_prometheus_address: ${_param:stacklight_address}
     grafana_prometheus_port: 15010
diff --git a/classes/cluster/virtual-mcp11-k8s-contrail/stacklight/init.yml b/classes/cluster/virtual-mcp11-k8s-contrail/stacklight/init.yml
new file mode 100644
index 0000000..2027844
--- /dev/null
+++ b/classes/cluster/virtual-mcp11-k8s-contrail/stacklight/init.yml
@@ -0,0 +1,39 @@
+parameters:
+  _param:
+    stacklight_address: 172.16.10.251
+    stacklight_node01_hostname: mon01
+    stacklight_node02_hostname: mon02
+    stacklight_node03_hostname: mon03
+    stacklight_node01_address: 172.16.10.107
+    stacklight_node02_address: 172.16.10.108
+    stacklight_node03_address: 172.16.10.109
+    # GlusterFS
+    glusterfs_service_host: ${_param:stacklight_address}
+    # Prometheus
+    prometheus_control_address: ${_param:stacklight_address}
+  linux:
+    network:
+      host:
+        mon:
+          address: ${_param:stacklight_address}
+          names:
+          - mon
+          - mon.${_param:cluster_domain}
+        mon01:
+          address: ${_param:stacklight_node01_address}
+          names:
+          - ${_param:stacklight_node01_hostname}
+          - ${_param:stacklight_node01_hostname}.${_param:cluster_domain}
+        mon02:
+          address: ${_param:stacklight_node02_address}
+          names:
+          - ${_param:stacklight_node02_hostname}
+          - ${_param:stacklight_node02_hostname}.${_param:cluster_domain}
+        mon03:
+          address: ${_param:stacklight_node03_address}
+          names:
+          - ${_param:stacklight_node03_hostname}
+          - ${_param:stacklight_node03_hostname}.${_param:cluster_domain}
+    system:
+      name: ${_param:infra_config_hostname}
+      domain: ${_param:cluster_domain}
diff --git a/classes/cluster/virtual-mcp11-k8s-contrail/monitoring/proxy.yml b/classes/cluster/virtual-mcp11-k8s-contrail/stacklight/proxy.yml
similarity index 84%
rename from classes/cluster/virtual-mcp11-k8s-contrail/monitoring/proxy.yml
rename to classes/cluster/virtual-mcp11-k8s-contrail/stacklight/proxy.yml
index f09e157..14cd512 100644
--- a/classes/cluster/virtual-mcp11-k8s-contrail/monitoring/proxy.yml
+++ b/classes/cluster/virtual-mcp11-k8s-contrail/stacklight/proxy.yml
@@ -2,7 +2,7 @@
 - system.nginx.server.single
 - system.nginx.server.proxy.monitoring.prometheus_server
 - system.nginx.server.proxy.monitoring.prometheus_alertmanager
-- cluster.virtual-mcp11-k8s-calico.infra
+- cluster.virtual-mcp11-k8s-contrail.infra
 parameters:
   _param:
     cluster_public_host: ${_param:prometheus_control_address}
diff --git a/classes/cluster/virtual-mcp11-k8s-contrail/monitoring/server.yml b/classes/cluster/virtual-mcp11-k8s-contrail/stacklight/server.yml
similarity index 69%
rename from classes/cluster/virtual-mcp11-k8s-contrail/monitoring/server.yml
rename to classes/cluster/virtual-mcp11-k8s-contrail/stacklight/server.yml
index 5a62ed5..6ef0e82 100644
--- a/classes/cluster/virtual-mcp11-k8s-contrail/monitoring/server.yml
+++ b/classes/cluster/virtual-mcp11-k8s-contrail/stacklight/server.yml
@@ -1,5 +1,6 @@
 classes:
 - system.linux.system.repo.tcp_elastic
+- system.docker.host
 - system.elasticsearch.server.cluster
 - system.elasticsearch.server.curator
 - system.kibana.server.single
@@ -17,10 +18,11 @@
 - system.prometheus.server.target.dns
 - system.docker.swarm.stack.monitoring
 - system.docker.swarm.service.dashboard.grafana_server
-- cluster.virtual-mcp11-k8s-calico.infra
+- cluster.virtual-mcp11-k8s-contrail.infra
 parameters:
   _param:
-    cluster_vip_address: ${_param:docker_swarm_address}
+    cluster_public_host: ${_param:stacklight_hostname}
+    cluster_vip_address: mon
     docker_image_alertmanager: alertmanager:latest
     docker_image_pushgateway: pushgateway:latest
     docker_image_prometheus: prometheus:latest
@@ -31,10 +33,10 @@
     keepalived_prometheus_vip_interface: ens4
     # Kibana
     kibana_elasticsearch_host: ${_param:cluster_vip_address}
-    # Elasticsearch
-    cluster_node01_hostname: ${_param:docker_swarm_node01_hostname}
-    cluster_node01_address: ${_param:docker_swarm_node01_address}
-    cluster_node02_hostname: ${_param:docker_swarm_node02_hostname}
-    cluster_node02_address: ${_param:docker_swarm_node02_address}
-    cluster_node03_hostname: ${_param:docker_swarm_node03_hostname}
-    cluster_node03_address: ${_param:docker_swarm_node03_address}
+    # Docker/Elasticsearch
+    cluster_node01_hostname: ${_param:stacklight_node01_hostname}
+    cluster_node01_address: ${_param:stacklight_node01_address}
+    cluster_node02_hostname: ${_param:stacklight_node02_hostname}
+    cluster_node02_address: ${_param:stacklight_node02_address}
+    cluster_node03_hostname: ${_param:stacklight_node03_hostname}
+    cluster_node03_address: ${_param:stacklight_node03_address}
diff --git a/classes/cluster/virtual-mcp11-k8s-contrail/swarm/init.yml b/classes/cluster/virtual-mcp11-k8s-contrail/swarm/init.yml
deleted file mode 100644
index f811357..0000000
--- a/classes/cluster/virtual-mcp11-k8s-contrail/swarm/init.yml
+++ /dev/null
@@ -1,36 +0,0 @@
-parameters:
-  _param:
-    docker_swarm_hostname: mon
-    docker_swarm_address: 172.16.10.251
-    docker_swarm_node01_hostname: mon01
-    docker_swarm_node02_hostname: mon02
-    docker_swarm_node03_hostname: mon03
-    docker_swarm_node01_address: 172.16.10.107
-    docker_swarm_node02_address: 172.16.10.108
-    docker_swarm_node03_address: 172.16.10.109
-  linux:
-    network:
-      host:
-        mon:
-          address: ${_param:docker_swarm_address}
-          names:
-          - ${_param:docker_swarm_hostname}
-          - ${_param:docker_swarm_hostname}.${_param:cluster_domain}
-        mon01:
-          address: ${_param:docker_swarm_node01_address}
-          names:
-          - ${_param:docker_swarm_node01_hostname}
-          - ${_param:docker_swarm_node01_hostname}.${_param:cluster_domain}
-        mon02:
-          address: ${_param:docker_swarm_node02_address}
-          names:
-          - ${_param:docker_swarm_node02_hostname}
-          - ${_param:docker_swarm_node02_hostname}.${_param:cluster_domain}
-        mon03:
-          address: ${_param:docker_swarm_node03_address}
-          names:
-          - ${_param:docker_swarm_node03_hostname}
-          - ${_param:docker_swarm_node03_hostname}.${_param:cluster_domain}
-    system:
-      name: ${_param:infra_config_hostname}
-      domain: ${_param:cluster_domain}
diff --git a/classes/cluster/virtual-mcp11-k8s-contrail/swarm/master.yml b/classes/cluster/virtual-mcp11-k8s-contrail/swarm/master.yml
deleted file mode 100644
index b2d33a1..0000000
--- a/classes/cluster/virtual-mcp11-k8s-contrail/swarm/master.yml
+++ /dev/null
@@ -1,18 +0,0 @@
-classes:
-- system.docker.client
-- system.docker.host
-- system.docker.swarm.master
-- cluster.virtual-mcp11-k8s-calico.infra
-parameters:
-  _param:
-    cluster_public_host: ${_param:docker_swarm_hostname}
-  docker:
-    client:
-      enabled: true
-      compose:
-        source:
-          engine: docker
-          image: "docker/compose:1.8.0"
-    swarm:
-      role: master
-      advertise_addr: ${_param:single_address}
diff --git a/classes/cluster/virtual-mcp11-k8s-contrail/swarm/slave.yml b/classes/cluster/virtual-mcp11-k8s-contrail/swarm/slave.yml
deleted file mode 100644
index 810da3d..0000000
--- a/classes/cluster/virtual-mcp11-k8s-contrail/swarm/slave.yml
+++ /dev/null
@@ -1,11 +0,0 @@
-classes:
-- system.docker.host
-- system.docker.swarm.manager
-- cluster.virtual-mcp11-k8s-calico.infra
-parameters:
-  _param:
-    cluster_public_host: ${_param:docker_swarm_hostname}
-  docker:
-    swarm:
-      master:
-        host: ${_param:docker_swarm_node01_address}