Add support for prometheus

Change-Id: I205facb4287fac83252ea10b4c9d82f4508c067d
diff --git a/kubernetes/meta/prometheus.yml b/kubernetes/meta/prometheus.yml
new file mode 100644
index 0000000..12cfa32
--- /dev/null
+++ b/kubernetes/meta/prometheus.yml
@@ -0,0 +1,121 @@
+{% raw %}
+server:
+  recording:
+    - name: cluster_namespace_controller_pod_container:spec_memory_limit_bytes
+      query: >-
+        sum by (cluster,namespace,controller,pod_name,container_name) (
+          label_replace(
+            container_spec_memory_limit_bytes{container_name!=""},
+            "controller", "$1",
+            "pod_name", "^(.*)-[a-z0-9]+"
+          )
+        )
+    - name: cluster_namespace_controller_pod_container:spec_cpu_shares
+      query: >-
+        sum by (cluster,namespace,controller,pod_name,container_name) (
+          label_replace(
+            container_spec_cpu_shares{container_name!=""},
+            "controller", "$1",
+            "pod_name", "^(.*)-[a-z0-9]+"
+          )
+        )
+    - name: cluster_namespace_controller_pod_container:cpu_usage:rate
+      query: >-
+        sum by (cluster,namespace,controller,pod_name,container_name) (
+          label_replace(
+            irate(
+              container_cpu_usage_seconds_total{container_name!=""}[5m]
+            ),
+            "controller", "$1",
+            "pod_name", "^(.*)-[a-z0-9]+"
+          )
+        )
+    - name: cluster_namespace_controller_pod_container:memory_usage:bytes
+      query: >-
+        sum by (cluster,namespace,controller,pod_name,container_name) (
+          label_replace(
+            container_memory_usage_bytes{container_name!=""},
+            "controller", "$1",
+            "pod_name", "^(.*)-[a-z0-9]+"
+          )
+        )
+    - name: cluster_namespace_controller_pod_container:memory_working_set:bytes
+      query: >-
+        sum by (cluster,namespace,controller,pod_name,container_name) (
+          label_replace(
+            container_memory_working_set_bytes{container_name!=""},
+            "controller", "$1",
+            "pod_name", "^(.*)-[a-z0-9]+"
+          )
+        )
+    - name: cluster_namespace_controller_pod_container:memory_rss:bytes
+      query: >-
+        sum by (cluster,namespace,controller,pod_name,container_name) (
+          label_replace(
+            container_memory_rss{container_name!=""},
+            "controller", "$1",
+            "pod_name", "^(.*)-[a-z0-9]+"
+          )
+        )
+    - name: cluster_namespace_controller_pod_container:memory_cache:bytes
+      query: >-
+        sum by (cluster,namespace,controller,pod_name,container_name) (
+          label_replace(
+            container_memory_cache{container_name!=""},
+            "controller", "$1",
+            "pod_name", "^(.*)-[a-z0-9]+"
+          )
+        )
+    - name: cluster_namespace_controller_pod_container:disk_usage:bytes
+      query: >-
+        sum by (cluster,namespace,controller,pod_name,container_name) (
+          label_replace(
+            container_fs_usage_bytes{container_name!=""},
+            "controller", "$1",
+            "pod_name", "^(.*)-[a-z0-9]+"
+          )
+        )
+    - name: cluster_namespace_controller_pod_container:memory_pagefaults:rate
+      query: >-
+        sum by (cluster,namespace,controller,pod_name,container_name,scope,type) (
+          label_replace(
+            irate(
+              container_memory_failures_total{container_name!=""}[5m]
+            ),
+            "controller", "$1",
+            "pod_name", "^(.*)-[a-z0-9]+"
+          )
+        )
+    - name: cluster_namespace_controller_pod_container:memory_oom:rate
+      query: >-
+        sum by (cluster,namespace,controller,pod_name,container_name,scope,type) (
+          label_replace(
+            irate(
+              container_memory_failcnt{container_name!=""}[5m]
+            ),
+            "controller", "$1",
+            "pod_name", "^(.*)-[a-z0-9]+"
+          )
+        )
+    - name: cluster:memory_allocation:percent
+      query: >-
+        100 * sum by (cluster) (
+          container_spec_memory_limit_bytes{pod_name!=""}
+        ) / sum by (cluster) (
+          machine_memory_bytes
+        )
+    - name: cluster:memory_used:percent
+      query: >-
+        100 * sum by (cluster) (
+          container_memory_usage_bytes{pod_name!=""}
+        ) / sum by (cluster) (
+          machine_memory_bytes
+        )
+    - name: cluster:cpu_allocation:percent
+      query: >-
+        100 * sum by (cluster) (
+          container_spec_cpu_shares{pod_name!=""}
+        ) / sum by (cluster) (
+          container_spec_cpu_shares{id="/"} * on(cluster,instance) machine_cpu_cores
+        )
+{% endraw %}
diff --git a/metadata/service/support.yml b/metadata/service/support.yml
index 5e589d2..655bb27 100644
--- a/metadata/service/support.yml
+++ b/metadata/service/support.yml
@@ -1,6 +1,8 @@
 parameters:
   kubernetes:
     _support:
+      prometheus:
+        enabled: true
       telegraf:
         enabled: true
       collectd: