diff --git a/jsonnet/kube-prometheus/rules/general.libsonnet b/jsonnet/kube-prometheus/rules/general.libsonnet new file mode 100644 index 0000000000000000000000000000000000000000..231d5cb526990d5928e0e482e3bea12e6b8c1ca1 --- /dev/null +++ b/jsonnet/kube-prometheus/rules/general.libsonnet @@ -0,0 +1,19 @@ +{ + prometheusRules+:: { + groups+: [ + { + name: 'kube-prometheus-general.rules', + rules: [ + { + expr: 'count without(instance, pod, node) (up == 1)', + record: 'count:up1', + }, + { + expr: 'count without(instance, pod, node) (up == 0)', + record: 'count:up0', + }, + ], + }, + ], + }, +} diff --git a/jsonnet/kube-prometheus/rules/rules.libsonnet b/jsonnet/kube-prometheus/rules/rules.libsonnet index b0217aba8fbe77852d9a17c41f09553159165b04..79a5c0ab8d13d08c473d600c77eb349f57ecbd3b 100644 --- a/jsonnet/kube-prometheus/rules/rules.libsonnet +++ b/jsonnet/kube-prometheus/rules/rules.libsonnet @@ -1 +1,2 @@ -(import 'node-rules.libsonnet') +(import 'node-rules.libsonnet') + +(import 'general.libsonnet') diff --git a/manifests/prometheus-rules.yaml b/manifests/prometheus-rules.yaml index 952699ee0ac92bb402201bb5a7b5f6a030ac36de..422893cbe81afbef020793c326d83a3fba4ecdaa 100644 --- a/manifests/prometheus-rules.yaml +++ b/manifests/prometheus-rules.yaml @@ -265,6 +265,12 @@ spec: - expr: cluster:node_cpu_seconds_total:rate5m / count(sum(node_cpu_seconds_total) BY (instance, cpu)) record: cluster:node_cpu:ratio + - name: kube-prometheus-general.rules + rules: + - expr: count without(instance, pod, node) (up == 1) + record: count:up1 + - expr: count without(instance, pod, node) (up == 0) + record: count:up0 - name: node-exporter rules: - alert: NodeFilesystemSpaceFillingUp