mirror of
https://github.com/prometheus-operator/kube-prometheus.git
synced 2025-11-02 09:01:02 +01:00
use alertmanager-mixin instead of alerts baked in kube-prometheus
This commit is contained in:
parent
25f88e8132
commit
d4ca837790
@ -1,57 +0,0 @@
|
|||||||
{
|
|
||||||
prometheusAlerts+:: {
|
|
||||||
groups+: [
|
|
||||||
{
|
|
||||||
name: 'alertmanager.rules',
|
|
||||||
rules: [
|
|
||||||
{
|
|
||||||
alert: 'AlertmanagerConfigInconsistent',
|
|
||||||
annotations: {
|
|
||||||
message: |||
|
|
||||||
The configuration of the instances of the Alertmanager cluster `{{ $labels.namespace }}/{{ $labels.service }}` are out of sync.
|
|
||||||
{{ range printf "alertmanager_config_hash{namespace=\"%s\",service=\"%s\"}" $labels.namespace $labels.service | query }}
|
|
||||||
Configuration hash for pod {{ .Labels.pod }} is "{{ printf "%.f" .Value }}"
|
|
||||||
{{ end }}
|
|
||||||
|||,
|
|
||||||
},
|
|
||||||
expr: |||
|
|
||||||
count by(namespace,service) (count_values by(namespace,service) ("config_hash", alertmanager_config_hash{%(alertmanagerSelector)s})) != 1
|
|
||||||
||| % $._config,
|
|
||||||
'for': '5m',
|
|
||||||
labels: {
|
|
||||||
severity: 'critical',
|
|
||||||
},
|
|
||||||
},
|
|
||||||
{
|
|
||||||
alert: 'AlertmanagerFailedReload',
|
|
||||||
annotations: {
|
|
||||||
message: "Reloading Alertmanager's configuration has failed for {{ $labels.namespace }}/{{ $labels.pod}}.",
|
|
||||||
},
|
|
||||||
expr: |||
|
|
||||||
alertmanager_config_last_reload_successful{%(alertmanagerSelector)s} == 0
|
|
||||||
||| % $._config,
|
|
||||||
'for': '10m',
|
|
||||||
labels: {
|
|
||||||
severity: 'warning',
|
|
||||||
},
|
|
||||||
},
|
|
||||||
{
|
|
||||||
alert: 'AlertmanagerMembersInconsistent',
|
|
||||||
annotations: {
|
|
||||||
message: 'Alertmanager has not found all other members of the cluster.',
|
|
||||||
},
|
|
||||||
expr: |||
|
|
||||||
alertmanager_cluster_members{%(alertmanagerSelector)s}
|
|
||||||
!= on (service) GROUP_LEFT()
|
|
||||||
count by (service) (alertmanager_cluster_members{%(alertmanagerSelector)s})
|
|
||||||
||| % $._config,
|
|
||||||
'for': '5m',
|
|
||||||
labels: {
|
|
||||||
severity: 'critical',
|
|
||||||
},
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
}
|
|
||||||
@ -1,3 +1,2 @@
|
|||||||
(import 'alertmanager.libsonnet') +
|
|
||||||
(import 'general.libsonnet') +
|
(import 'general.libsonnet') +
|
||||||
(import 'node.libsonnet')
|
(import 'node.libsonnet')
|
||||||
|
|||||||
@ -83,6 +83,16 @@
|
|||||||
"version": "release-2.22",
|
"version": "release-2.22",
|
||||||
"name": "prometheus"
|
"name": "prometheus"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"source": {
|
||||||
|
"git": {
|
||||||
|
"remote": "https://github.com/prometheus/alertmanager",
|
||||||
|
"subdir": "doc/alertmanager-mixin"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"version": "master",
|
||||||
|
"name": "alertmanager"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"source": {
|
"source": {
|
||||||
"git": {
|
"git": {
|
||||||
|
|||||||
@ -6,6 +6,7 @@ local kubeRbacProxyContainer = import './kube-rbac-proxy/container.libsonnet';
|
|||||||
(import './node-exporter/node-exporter.libsonnet') +
|
(import './node-exporter/node-exporter.libsonnet') +
|
||||||
(import 'github.com/prometheus/node_exporter/docs/node-mixin/mixin.libsonnet') +
|
(import 'github.com/prometheus/node_exporter/docs/node-mixin/mixin.libsonnet') +
|
||||||
(import './alertmanager/alertmanager.libsonnet') +
|
(import './alertmanager/alertmanager.libsonnet') +
|
||||||
|
(import 'github.com/prometheus/alertmanager/doc/alertmanager-mixin/mixin.libsonnet') +
|
||||||
(import 'github.com/prometheus-operator/prometheus-operator/jsonnet/prometheus-operator/prometheus-operator.libsonnet') +
|
(import 'github.com/prometheus-operator/prometheus-operator/jsonnet/prometheus-operator/prometheus-operator.libsonnet') +
|
||||||
(import 'github.com/prometheus-operator/prometheus-operator/jsonnet/mixin/mixin.libsonnet') +
|
(import 'github.com/prometheus-operator/prometheus-operator/jsonnet/mixin/mixin.libsonnet') +
|
||||||
(import './prometheus/prometheus.libsonnet') +
|
(import './prometheus/prometheus.libsonnet') +
|
||||||
@ -160,6 +161,8 @@ local kubeRbacProxyContainer = import './kube-rbac-proxy/container.libsonnet';
|
|||||||
coreDNSSelector: 'job="kube-dns"',
|
coreDNSSelector: 'job="kube-dns"',
|
||||||
podLabel: 'pod',
|
podLabel: 'pod',
|
||||||
|
|
||||||
|
alertmanagerName: '{{ $labels.namespace }}/{{ $labels.pod}}',
|
||||||
|
alertmanagerClusterLabels: 'namespace,service',
|
||||||
alertmanagerSelector: 'job="alertmanager-' + $._config.alertmanager.name + '",namespace="' + $._config.namespace + '"',
|
alertmanagerSelector: 'job="alertmanager-' + $._config.alertmanager.name + '",namespace="' + $._config.namespace + '"',
|
||||||
prometheusSelector: 'job="prometheus-' + $._config.prometheus.name + '",namespace="' + $._config.namespace + '"',
|
prometheusSelector: 'job="prometheus-' + $._config.prometheus.name + '",namespace="' + $._config.namespace + '"',
|
||||||
prometheusName: '{{$labels.namespace}}/{{$labels.pod}}',
|
prometheusName: '{{$labels.namespace}}/{{$labels.pod}}',
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user