Add Alerts to cinder-volume and cinder-scheduler

Change-Id: I6f9ee7f91beb2dd4c84858e1a1c7ecbff98d09db
diff --git a/cinder/meta/prometheus.yml b/cinder/meta/prometheus.yml
index d655a6f..79880cc 100644
--- a/cinder/meta/prometheus.yml
+++ b/cinder/meta/prometheus.yml
@@ -18,6 +18,39 @@
         summary: "Endpoint check for '{{ $labels.service }}' is down"
         description: >-
             Endpoint check for '{{ $labels.service }}' is down for 2 minutes
+    CinderSomeServicesDown:
+      if: >-
+          openstack_cinder_services{state="down",service="cinder-volume|cinder-scheduler"} > 0 and ignoring (state) openstack_cinder_services{state="up",services="cinder-volume|cinder-scheduler"} >= 2
+      for: 2m
+      labels:
+        severity: warning
+        service: "{{ $labels.service }}"
+      annotations:
+        summary: "Some {{ $labels.service }} services are down"
+        description: >-
+            {{ $value }} {{ $labels.service }} services are down for 2 minutes
+    CinderOnlyOneServiceUp:
+      if: >-
+          openstack_cinder_services{state="up",service="cinder-volume|cinder-scheduler"} == 1 and ignoring (state) openstack_cinder_services{state="down",service="cinder-volume|cinder-scheduler"} > 0
+      for: 2m
+      labels:
+        severity: critical
+        service: "{{ $labels.service }}"
+      annotations:
+        summary: "Only one {{ $labels.service }} service is up"
+        description: >-
+            Only one {{ $labels.service }} service is up for 2 minutes
+    CinderAllServicesDown:
+      if: >-
+        openstack_cinder_services{state="up",service="cinder-volume|cinder-scheduler"}) == 0
+      for: 2m
+      labels:
+        severity: down
+        service: "{{ $labels.service }}"
+      annotations:
+        summary: "All {{ $labels.service }} services are down"
+        description: >-
+            All {{ $labels.service }} services are down for 2 minutes
 {%- endraw %}
 {%- endif %}
     CinderErrorLogsTooHigh: