*: regenerate

This commit is contained in:
paulfantom
2021-02-22 16:38:34 +01:00
parent bf9a917cfa
commit 66e4a7ba15
11 changed files with 51 additions and 30 deletions

View File

@@ -243,7 +243,7 @@ local kp =
{ ['blackbox-exporter-' + name]: kp.blackboxExporter[name] for name in std.objectFields(kp.blackboxExporter) } + { ['blackbox-exporter-' + name]: kp.blackboxExporter[name] for name in std.objectFields(kp.blackboxExporter) } +
{ ['grafana-' + name]: kp.grafana[name] for name in std.objectFields(kp.grafana) } + { ['grafana-' + name]: kp.grafana[name] for name in std.objectFields(kp.grafana) } +
{ ['kube-state-metrics-' + name]: kp.kubeStateMetrics[name] for name in std.objectFields(kp.kubeStateMetrics) } + { ['kube-state-metrics-' + name]: kp.kubeStateMetrics[name] for name in std.objectFields(kp.kubeStateMetrics) } +
{ ['kubernetes-' + name]: kp.kubernetesMixin[name] for name in std.objectFields(kp.kubernetesMixin) } { ['kubernetes-' + name]: kp.kubernetesControlPlane[name] for name in std.objectFields(kp.kubernetesControlPlane) }
{ ['node-exporter-' + name]: kp.nodeExporter[name] for name in std.objectFields(kp.nodeExporter) } + { ['node-exporter-' + name]: kp.nodeExporter[name] for name in std.objectFields(kp.nodeExporter) } +
{ ['prometheus-' + name]: kp.prometheus[name] for name in std.objectFields(kp.prometheus) } + { ['prometheus-' + name]: kp.prometheus[name] for name in std.objectFields(kp.prometheus) } +
{ ['prometheus-adapter-' + name]: kp.prometheusAdapter[name] for name in std.objectFields(kp.prometheusAdapter) } { ['prometheus-adapter-' + name]: kp.prometheusAdapter[name] for name in std.objectFields(kp.prometheusAdapter) }
@@ -586,7 +586,7 @@ In the above example the configuration has been inlined, but can just as well be
[embedmd]:# (examples/alertmanager-config-external.jsonnet) [embedmd]:# (examples/alertmanager-config-external.jsonnet)
```jsonnet ```jsonnet
((import 'kube-prometheus/main.libsonnet') + { ((import 'kube-prometheus/main.libsonnet') + {
_config+:: { values+:: {
alertmanager+: { alertmanager+: {
config: importstr 'alertmanager-config.yaml', config: importstr 'alertmanager-config.yaml',
}, },
@@ -606,7 +606,7 @@ local kp = (import 'kube-prometheus/main.libsonnet') + {
namespace: 'monitoring', namespace: 'monitoring',
}, },
prometheus+:: { prometheus+: {
namespaces+: ['my-namespace', 'my-second-namespace'], namespaces+: ['my-namespace', 'my-second-namespace'],
}, },
}, },
@@ -640,7 +640,7 @@ local kp = (import 'kube-prometheus/main.libsonnet') + {
namespaces+: ['my-namespace', 'my-second-namespace'], namespaces+: ['my-namespace', 'my-second-namespace'],
}, },
}, },
prometheus+: { exampleApplication: {
serviceMonitorMyNamespace: { serviceMonitorMyNamespace: {
apiVersion: 'monitoring.coreos.com/v1', apiVersion: 'monitoring.coreos.com/v1',
kind: 'ServiceMonitor', kind: 'ServiceMonitor',
@@ -672,7 +672,8 @@ local kp = (import 'kube-prometheus/main.libsonnet') + {
{ ['kube-state-metrics-' + name]: kp.kubeStateMetrics[name] for name in std.objectFields(kp.kubeStateMetrics) } + { ['kube-state-metrics-' + name]: kp.kubeStateMetrics[name] for name in std.objectFields(kp.kubeStateMetrics) } +
{ ['alertmanager-' + name]: kp.alertmanager[name] for name in std.objectFields(kp.alertmanager) } + { ['alertmanager-' + name]: kp.alertmanager[name] for name in std.objectFields(kp.alertmanager) } +
{ ['prometheus-' + name]: kp.prometheus[name] for name in std.objectFields(kp.prometheus) } + { ['prometheus-' + name]: kp.prometheus[name] for name in std.objectFields(kp.prometheus) } +
{ ['grafana-' + name]: kp.grafana[name] for name in std.objectFields(kp.grafana) } { ['grafana-' + name]: kp.grafana[name] for name in std.objectFields(kp.grafana) } +
{ ['example-application-' + name]: kp.exampleApplication[name] for name in std.objectFields(kp.exampleApplication) }
``` ```
> NOTE: make sure your service resources have the right labels (eg. `'app': 'myapp'`) applied. Prometheus uses kubernetes labels to discover resources inside the namespaces. > NOTE: make sure your service resources have the right labels (eg. `'app': 'myapp'`) applied. Prometheus uses kubernetes labels to discover resources inside the namespaces.

View File

@@ -14,7 +14,7 @@ local kp = (import 'kube-prometheus/main.libsonnet') +
namespace: 'monitoring', namespace: 'monitoring',
}, },
}, },
prometheus+: { kubernetesControlPlane+: {
prometheusRuleEksCNI+: { prometheusRuleEksCNI+: {
spec+: { spec+: {
groups+: [ groups+: [

View File

@@ -41,7 +41,7 @@ local kp =
{ ['blackbox-exporter-' + name]: kp.blackboxExporter[name] for name in std.objectFields(kp.blackboxExporter) } + { ['blackbox-exporter-' + name]: kp.blackboxExporter[name] for name in std.objectFields(kp.blackboxExporter) } +
{ ['grafana-' + name]: kp.grafana[name] for name in std.objectFields(kp.grafana) } + { ['grafana-' + name]: kp.grafana[name] for name in std.objectFields(kp.grafana) } +
{ ['kube-state-metrics-' + name]: kp.kubeStateMetrics[name] for name in std.objectFields(kp.kubeStateMetrics) } + { ['kube-state-metrics-' + name]: kp.kubeStateMetrics[name] for name in std.objectFields(kp.kubeStateMetrics) } +
{ ['kubernetes-' + name]: kp.kubernetesMixin[name] for name in std.objectFields(kp.kubernetesMixin) } { ['kubernetes-' + name]: kp.kubernetesControlPlane[name] for name in std.objectFields(kp.kubernetesControlPlane) }
{ ['node-exporter-' + name]: kp.nodeExporter[name] for name in std.objectFields(kp.nodeExporter) } + { ['node-exporter-' + name]: kp.nodeExporter[name] for name in std.objectFields(kp.nodeExporter) } +
{ ['prometheus-' + name]: kp.prometheus[name] for name in std.objectFields(kp.prometheus) } + { ['prometheus-' + name]: kp.prometheus[name] for name in std.objectFields(kp.prometheus) } +
{ ['prometheus-adapter-' + name]: kp.prometheusAdapter[name] for name in std.objectFields(kp.prometheusAdapter) } { ['prometheus-adapter-' + name]: kp.prometheusAdapter[name] for name in std.objectFields(kp.prometheusAdapter) }
@@ -65,10 +65,16 @@ local kp = (import 'kube-prometheus/main.libsonnet') + {
namespace: 'monitoring', namespace: 'monitoring',
}, },
}, },
prometheus+: { exampleApplication: {
prometheusRule+: { prometheusRuleExample: {
spec+: { apiVersion: 'monitoring.coreos.com/v1',
groups+: [ kind: 'PrometheusRule',
metadata: {
name: 'my-prometheus-rule',
namespace: $.values.common.namespace,
},
spec: {
groups: [
{ {
name: 'example-group', name: 'example-group',
rules: [ rules: [
@@ -97,7 +103,8 @@ local kp = (import 'kube-prometheus/main.libsonnet') + {
{ ['alertmanager-' + name]: kp.alertmanager[name] for name in std.objectFields(kp.alertmanager) } + { ['alertmanager-' + name]: kp.alertmanager[name] for name in std.objectFields(kp.alertmanager) } +
{ ['prometheus-' + name]: kp.prometheus[name] for name in std.objectFields(kp.prometheus) } + { ['prometheus-' + name]: kp.prometheus[name] for name in std.objectFields(kp.prometheus) } +
{ ['prometheus-adapter-' + name]: kp.prometheusAdapter[name] for name in std.objectFields(kp.prometheusAdapter) } + { ['prometheus-adapter-' + name]: kp.prometheusAdapter[name] for name in std.objectFields(kp.prometheusAdapter) } +
{ ['grafana-' + name]: kp.grafana[name] for name in std.objectFields(kp.grafana) } { ['grafana-' + name]: kp.grafana[name] for name in std.objectFields(kp.grafana) } +
{ ['example-application-' + name]: kp.exampleApplication[name] for name in std.objectFields(kp.exampleApplication) }
``` ```
### Recording rules ### Recording rules
@@ -114,10 +121,16 @@ local kp = (import 'kube-prometheus/main.libsonnet') + {
namespace: 'monitoring', namespace: 'monitoring',
}, },
}, },
prometheus+: { exampleApplication: {
prometheusRule+: { prometheusRuleExample: {
spec+: { apiVersion: 'monitoring.coreos.com/v1',
groups+: [ kind: 'PrometheusRule',
metadata: {
name: 'my-prometheus-rule',
namespace: $.values.common.namespace,
},
spec: {
groups: [
{ {
name: 'example-group', name: 'example-group',
rules: [ rules: [
@@ -140,7 +153,8 @@ local kp = (import 'kube-prometheus/main.libsonnet') + {
{ ['alertmanager-' + name]: kp.alertmanager[name] for name in std.objectFields(kp.alertmanager) } + { ['alertmanager-' + name]: kp.alertmanager[name] for name in std.objectFields(kp.alertmanager) } +
{ ['prometheus-' + name]: kp.prometheus[name] for name in std.objectFields(kp.prometheus) } + { ['prometheus-' + name]: kp.prometheus[name] for name in std.objectFields(kp.prometheus) } +
{ ['prometheus-adapter-' + name]: kp.prometheusAdapter[name] for name in std.objectFields(kp.prometheusAdapter) } + { ['prometheus-adapter-' + name]: kp.prometheusAdapter[name] for name in std.objectFields(kp.prometheusAdapter) } +
{ ['grafana-' + name]: kp.grafana[name] for name in std.objectFields(kp.grafana) } { ['grafana-' + name]: kp.grafana[name] for name in std.objectFields(kp.grafana) } +
{ ['example-application-' + name]: kp.exampleApplication[name] for name in std.objectFields(kp.exampleApplication) }
``` ```
### Pre-rendered rules ### Pre-rendered rules
@@ -167,10 +181,16 @@ local kp = (import 'kube-prometheus/main.libsonnet') + {
namespace: 'monitoring', namespace: 'monitoring',
}, },
}, },
prometheus+: { exampleApplication: {
prometheusRule+: { prometheusRuleExample: {
spec+: { apiVersion: 'monitoring.coreos.com/v1',
groups+: (import 'existingrule.json').groups, kind: 'PrometheusRule',
metadata: {
name: 'my-prometheus-rule',
namespace: $.values.common.namespace,
},
spec: {
groups: (import 'existingrule.json').groups,
}, },
}, },
}, },
@@ -183,7 +203,8 @@ local kp = (import 'kube-prometheus/main.libsonnet') + {
{ ['alertmanager-' + name]: kp.alertmanager[name] for name in std.objectFields(kp.alertmanager) } + { ['alertmanager-' + name]: kp.alertmanager[name] for name in std.objectFields(kp.alertmanager) } +
{ ['prometheus-' + name]: kp.prometheus[name] for name in std.objectFields(kp.prometheus) } + { ['prometheus-' + name]: kp.prometheus[name] for name in std.objectFields(kp.prometheus) } +
{ ['prometheus-adapter-' + name]: kp.prometheusAdapter[name] for name in std.objectFields(kp.prometheusAdapter) } + { ['prometheus-adapter-' + name]: kp.prometheusAdapter[name] for name in std.objectFields(kp.prometheusAdapter) } +
{ ['grafana-' + name]: kp.grafana[name] for name in std.objectFields(kp.grafana) } { ['grafana-' + name]: kp.grafana[name] for name in std.objectFields(kp.grafana) } +
{ ['example-application-' + name]: kp.exampleApplication[name] for name in std.objectFields(kp.exampleApplication) }
``` ```
### Changing default rules ### Changing default rules

View File

@@ -24,7 +24,7 @@ local kp = (import 'kube-prometheus/main.libsonnet') +
namespace: 'monitoring', namespace: 'monitoring',
}, },
}, },
prometheus+: { kubernetesControlPlane+: {
prometheusRuleWeaveNet+: { prometheusRuleWeaveNet+: {
spec+: { spec+: {
groups: std.map( groups: std.map(

View File

@@ -30,6 +30,11 @@ resources:
- ./manifests/kube-state-metrics-serviceAccount.yaml - ./manifests/kube-state-metrics-serviceAccount.yaml
- ./manifests/kube-state-metrics-serviceMonitor.yaml - ./manifests/kube-state-metrics-serviceMonitor.yaml
- ./manifests/kubernetes-prometheusRule.yaml - ./manifests/kubernetes-prometheusRule.yaml
- ./manifests/kubernetes-serviceMonitorApiserver.yaml
- ./manifests/kubernetes-serviceMonitorCoreDNS.yaml
- ./manifests/kubernetes-serviceMonitorKubeControllerManager.yaml
- ./manifests/kubernetes-serviceMonitorKubeScheduler.yaml
- ./manifests/kubernetes-serviceMonitorKubelet.yaml
- ./manifests/node-exporter-clusterRole.yaml - ./manifests/node-exporter-clusterRole.yaml
- ./manifests/node-exporter-clusterRoleBinding.yaml - ./manifests/node-exporter-clusterRoleBinding.yaml
- ./manifests/node-exporter-daemonset.yaml - ./manifests/node-exporter-daemonset.yaml
@@ -62,11 +67,6 @@ resources:
- ./manifests/prometheus-service.yaml - ./manifests/prometheus-service.yaml
- ./manifests/prometheus-serviceAccount.yaml - ./manifests/prometheus-serviceAccount.yaml
- ./manifests/prometheus-serviceMonitor.yaml - ./manifests/prometheus-serviceMonitor.yaml
- ./manifests/prometheus-serviceMonitorApiserver.yaml
- ./manifests/prometheus-serviceMonitorCoreDNS.yaml
- ./manifests/prometheus-serviceMonitorKubeControllerManager.yaml
- ./manifests/prometheus-serviceMonitorKubeScheduler.yaml
- ./manifests/prometheus-serviceMonitorKubelet.yaml
- ./manifests/setup/0namespace-namespace.yaml - ./manifests/setup/0namespace-namespace.yaml
- ./manifests/setup/prometheus-operator-0alertmanagerConfigCustomResourceDefinition.yaml - ./manifests/setup/prometheus-operator-0alertmanagerConfigCustomResourceDefinition.yaml
- ./manifests/setup/prometheus-operator-0alertmanagerCustomResourceDefinition.yaml - ./manifests/setup/prometheus-operator-0alertmanagerCustomResourceDefinition.yaml

View File

@@ -2,12 +2,11 @@ apiVersion: monitoring.coreos.com/v1
kind: PrometheusRule kind: PrometheusRule
metadata: metadata:
labels: labels:
app.kubernetes.io/component: exporter
app.kubernetes.io/name: kube-prometheus app.kubernetes.io/name: kube-prometheus
app.kubernetes.io/part-of: kube-prometheus app.kubernetes.io/part-of: kube-prometheus
prometheus: k8s prometheus: k8s
role: alert-rules role: alert-rules
name: kubernetes-rules name: kubernetes-monitoring-rules
namespace: monitoring namespace: monitoring
spec: spec:
groups: groups: