Add telemetry into pipeline

Redis is needed as storage and/or coordination backend,
Gnocchi is default dispatcher in ceilometer

Change-Id: I1e12a216bf8dc46920bb226a1507d361a2514da3
Related-Prod: https://mirantis.jira.com/browse/PROD-17719
diff --git a/src/com/mirantis/mk/Orchestrate.groovy b/src/com/mirantis/mk/Orchestrate.groovy
index 080c0b1..e73be78 100644
--- a/src/com/mirantis/mk/Orchestrate.groovy
+++ b/src/com/mirantis/mk/Orchestrate.groovy
@@ -145,6 +145,14 @@
             salt.cmdRun(master, 'I@etcd:server', '. /var/lib/etcd/configenv && etcdctl cluster-health')
         }
     }
+
+    // Install redis
+    if (salt.testTarget(master, 'I@redis:server')) {
+        if (salt.testTarget(master, 'I@redis:cluster:role:master')) {
+            salt.enforceState(master, 'I@redis:cluster:role:master', 'redis')
+        }
+        salt.enforceState(master, 'I@redis:server', 'redis')
+    }
 }
 
 def installOpenstackInfra(master) {
@@ -319,6 +327,21 @@
         salt.enforceState(master, 'I@barbican:client', 'barbican.client')
     }
 
+    // Install gnocchi server
+    if (salt.testTarget(master, 'I@gnocchi:server')) {
+        salt.enforceState(master, 'I@gnocchi:server', 'gnocchi.server')
+    }
+
+    // Install gnocchi statsd
+    if (salt.testTarget(master, 'I@gnocchi:statsd')) {
+        salt.enforceState(master, 'I@gnocchi:statsd', 'gnocchi.statsd')
+    }
+
+    // Install panko server
+    if (salt.testTarget(master, 'I@panko:server')) {
+        salt.enforceState(master, 'I@panko:server', 'panko')
+    }
+
     // Install ceilometer server
     if (salt.testTarget(master, 'I@ceilometer:server')) {
         salt.enforceState(master, 'I@ceilometer:server', 'ceilometer')