Collectd operator utilties
[demo.git] / vnfs / DAaaS / operator / charts / prometheus-operator / templates / prometheus / rules / kubernetes-apps.yaml
1 # Generated from 'kubernetes-apps' group from https://raw.githubusercontent.com/coreos/prometheus-operator/master/contrib/kube-prometheus/manifests/prometheus-rules.yaml
2 # Do not change in-place! In order to change this file first read following link:
3 # https://github.com/helm/charts/tree/master/stable/prometheus-operator/hack
4 {{- if and .Values.defaultRules.create .Values.kubeStateMetrics.enabled .Values.defaultRules.rules.kubernetesApps }}
5 apiVersion: {{ printf "%s/v1" (.Values.prometheusOperator.crdApiGroup | default "monitoring.coreos.com") }}
6 kind: PrometheusRule
7 metadata:
8   name: {{ printf "%s-%s" (include "prometheus-operator.fullname" .) "kubernetes-apps" | trunc 63 | trimSuffix "-" }}
9   labels:
10     app: {{ template "prometheus-operator.name" . }}
11 {{ include "prometheus-operator.labels" . | indent 4 }}
12 {{- if .Values.defaultRules.labels }}
13 {{ toYaml .Values.defaultRules.labels | indent 4 }}
14 {{- end }}
15 {{- if .Values.defaultRules.annotations }}
16   annotations:
17 {{ toYaml .Values.defaultRules.annotations | indent 4 }}
18 {{- end }}
19 spec:
20   groups:
21   - name: kubernetes-apps
22     rules:
23     - alert: KubePodCrashLooping
24       annotations:
25         message: Pod {{`{{ $labels.namespace }}`}}/{{`{{ $labels.pod }}`}} ({{`{{ $labels.container }}`}}) is restarting {{`{{ printf "%.2f" $value }}`}} times / 5 minutes.
26         runbook_url: https://github.com/kubernetes-monitoring/kubernetes-mixin/tree/master/runbook.md#alert-name-kubepodcrashlooping
27       expr: rate(kube_pod_container_status_restarts_total{job="kube-state-metrics"}[15m]) * 60 * 5 > 0
28       for: 1h
29       labels:
30         severity: critical
31     - alert: KubePodNotReady
32       annotations:
33         message: Pod {{`{{ $labels.namespace }}`}}/{{`{{ $labels.pod }}`}} has been in a non-ready state for longer than an hour.
34         runbook_url: https://github.com/kubernetes-monitoring/kubernetes-mixin/tree/master/runbook.md#alert-name-kubepodnotready
35       expr: sum by (namespace, pod) (kube_pod_status_phase{job="kube-state-metrics", phase=~"Pending|Unknown"}) > 0
36       for: 1h
37       labels:
38         severity: critical
39     - alert: KubeDeploymentGenerationMismatch
40       annotations:
41         message: Deployment generation for {{`{{ $labels.namespace }}`}}/{{`{{ $labels.deployment }}`}} does not match, this indicates that the Deployment has failed but has not been rolled back.
42         runbook_url: https://github.com/kubernetes-monitoring/kubernetes-mixin/tree/master/runbook.md#alert-name-kubedeploymentgenerationmismatch
43       expr: |-
44         kube_deployment_status_observed_generation{job="kube-state-metrics"}
45           !=
46         kube_deployment_metadata_generation{job="kube-state-metrics"}
47       for: 15m
48       labels:
49         severity: critical
50     - alert: KubeDeploymentReplicasMismatch
51       annotations:
52         message: Deployment {{`{{ $labels.namespace }}`}}/{{`{{ $labels.deployment }}`}} has not matched the expected number of replicas for longer than an hour.
53         runbook_url: https://github.com/kubernetes-monitoring/kubernetes-mixin/tree/master/runbook.md#alert-name-kubedeploymentreplicasmismatch
54       expr: |-
55         kube_deployment_spec_replicas{job="kube-state-metrics"}
56           !=
57         kube_deployment_status_replicas_available{job="kube-state-metrics"}
58       for: 1h
59       labels:
60         severity: critical
61     - alert: KubeStatefulSetReplicasMismatch
62       annotations:
63         message: StatefulSet {{`{{ $labels.namespace }}`}}/{{`{{ $labels.statefulset }}`}} has not matched the expected number of replicas for longer than 15 minutes.
64         runbook_url: https://github.com/kubernetes-monitoring/kubernetes-mixin/tree/master/runbook.md#alert-name-kubestatefulsetreplicasmismatch
65       expr: |-
66         kube_statefulset_status_replicas_ready{job="kube-state-metrics"}
67           !=
68         kube_statefulset_status_replicas{job="kube-state-metrics"}
69       for: 15m
70       labels:
71         severity: critical
72     - alert: KubeStatefulSetGenerationMismatch
73       annotations:
74         message: StatefulSet generation for {{`{{ $labels.namespace }}`}}/{{`{{ $labels.statefulset }}`}} does not match, this indicates that the StatefulSet has failed but has not been rolled back.
75         runbook_url: https://github.com/kubernetes-monitoring/kubernetes-mixin/tree/master/runbook.md#alert-name-kubestatefulsetgenerationmismatch
76       expr: |-
77         kube_statefulset_status_observed_generation{job="kube-state-metrics"}
78           !=
79         kube_statefulset_metadata_generation{job="kube-state-metrics"}
80       for: 15m
81       labels:
82         severity: critical
83     - alert: KubeStatefulSetUpdateNotRolledOut
84       annotations:
85         message: StatefulSet {{`{{ $labels.namespace }}`}}/{{`{{ $labels.statefulset }}`}} update has not been rolled out.
86         runbook_url: https://github.com/kubernetes-monitoring/kubernetes-mixin/tree/master/runbook.md#alert-name-kubestatefulsetupdatenotrolledout
87       expr: |-
88         max without (revision) (
89           kube_statefulset_status_current_revision{job="kube-state-metrics"}
90             unless
91           kube_statefulset_status_update_revision{job="kube-state-metrics"}
92         )
93           *
94         (
95           kube_statefulset_replicas{job="kube-state-metrics"}
96             !=
97           kube_statefulset_status_replicas_updated{job="kube-state-metrics"}
98         )
99       for: 15m
100       labels:
101         severity: critical
102     - alert: KubeDaemonSetRolloutStuck
103       annotations:
104         message: Only {{`{{ $value }}`}}% of the desired Pods of DaemonSet {{`{{ $labels.namespace }}`}}/{{`{{ $labels.daemonset }}`}} are scheduled and ready.
105         runbook_url: https://github.com/kubernetes-monitoring/kubernetes-mixin/tree/master/runbook.md#alert-name-kubedaemonsetrolloutstuck
106       expr: |-
107         kube_daemonset_status_number_ready{job="kube-state-metrics"}
108           /
109         kube_daemonset_status_desired_number_scheduled{job="kube-state-metrics"} * 100 < 100
110       for: 15m
111       labels:
112         severity: critical
113     - alert: KubeDaemonSetNotScheduled
114       annotations:
115         message: '{{`{{ $value }}`}} Pods of DaemonSet {{`{{ $labels.namespace }}`}}/{{`{{ $labels.daemonset }}`}} are not scheduled.'
116         runbook_url: https://github.com/kubernetes-monitoring/kubernetes-mixin/tree/master/runbook.md#alert-name-kubedaemonsetnotscheduled
117       expr: |-
118         kube_daemonset_status_desired_number_scheduled{job="kube-state-metrics"}
119           -
120         kube_daemonset_status_current_number_scheduled{job="kube-state-metrics"} > 0
121       for: 10m
122       labels:
123         severity: warning
124     - alert: KubeDaemonSetMisScheduled
125       annotations:
126         message: '{{`{{ $value }}`}} Pods of DaemonSet {{`{{ $labels.namespace }}`}}/{{`{{ $labels.daemonset }}`}} are running where they are not supposed to run.'
127         runbook_url: https://github.com/kubernetes-monitoring/kubernetes-mixin/tree/master/runbook.md#alert-name-kubedaemonsetmisscheduled
128       expr: kube_daemonset_status_number_misscheduled{job="kube-state-metrics"} > 0
129       for: 10m
130       labels:
131         severity: warning
132     - alert: KubeCronJobRunning
133       annotations:
134         message: CronJob {{`{{ $labels.namespace }}`}}/{{`{{ $labels.cronjob }}`}} is taking more than 1h to complete.
135         runbook_url: https://github.com/kubernetes-monitoring/kubernetes-mixin/tree/master/runbook.md#alert-name-kubecronjobrunning
136       expr: time() - kube_cronjob_next_schedule_time{job="kube-state-metrics"} > 3600
137       for: 1h
138       labels:
139         severity: warning
140     - alert: KubeJobCompletion
141       annotations:
142         message: Job {{`{{ $labels.namespace }}`}}/{{`{{ $labels.job_name }}`}} is taking more than one hour to complete.
143         runbook_url: https://github.com/kubernetes-monitoring/kubernetes-mixin/tree/master/runbook.md#alert-name-kubejobcompletion
144       expr: kube_job_spec_completions{job="kube-state-metrics"} - kube_job_status_succeeded{job="kube-state-metrics"}  > 0
145       for: 1h
146       labels:
147         severity: warning
148     - alert: KubeJobFailed
149       annotations:
150         message: Job {{`{{ $labels.namespace }}`}}/{{`{{ $labels.job_name }}`}} failed to complete.
151         runbook_url: https://github.com/kubernetes-monitoring/kubernetes-mixin/tree/master/runbook.md#alert-name-kubejobfailed
152       expr: kube_job_status_failed{job="kube-state-metrics"}  > 0
153       for: 1h
154       labels:
155         severity: warning
156 {{- end }}