diff --git a/jsonnet/kube-prometheus/components/prometheus.libsonnet b/jsonnet/kube-prometheus/components/prometheus.libsonnet index 701537d1d63321024d7bb311be2f5cb19743da32..321ddbcfc5af0d916403da268c27594949a2423b 100644 --- a/jsonnet/kube-prometheus/components/prometheus.libsonnet +++ b/jsonnet/kube-prometheus/components/prometheus.libsonnet @@ -2,20 +2,21 @@ local defaults = { local defaults = self, // Convention: Top-level fields related to CRDs are public, other fields are hidden // If there is no CRD for the component, everything is hidden in defaults. + name:: error 'must provide name', namespace:: error 'must provide namespace', version: error 'must provide version', image: error 'must provide image', resources: { requests: { memory: '400Mi' }, }, - - name:: error 'must provide name', - //TODO: remove alertmanagerName and convert to plain 'alerting' object - alertmanagerName:: error 'must provide alertmanagerName', + //TODO(paulfantom): remove alertmanagerName after release-0.10 and convert to plain 'alerting' object. + alertmanagerName:: '', + alerting: {}, namespaces:: ['default', 'kube-system', defaults.namespace], replicas: 2, externalLabels: {}, enableFeatures: [], + ruleSelector: {}, commonLabels:: { 'app.kubernetes.io/name': 'prometheus', 'app.kubernetes.io/version': defaults.version, @@ -27,7 +28,6 @@ local defaults = { for labelName in std.objectFields(defaults.commonLabels) if !std.setMember(labelName, ['app.kubernetes.io/version']) } + { prometheus: defaults.name }, - ruleSelector: {}, mixin:: { ruleLabels: {}, _config: { @@ -273,7 +273,7 @@ function(params) { serviceMonitorNamespaceSelector: {}, nodeSelector: { 'kubernetes.io/os': 'linux' }, resources: p._config.resources, - alerting: { + alerting: if p._config.alerting != {} then p._config.alerting else { alertmanagers: [{ namespace: p._config.namespace, name: 'alertmanager-' + p._config.alertmanagerName, diff --git a/jsonnet/kube-prometheus/main.libsonnet b/jsonnet/kube-prometheus/main.libsonnet index 659be66505d5d41cd918491bed3d00feba2a693f..9dc5a334c508b935c13f1f50df6b8ef91f30ac89 100644 --- a/jsonnet/kube-prometheus/main.libsonnet +++ b/jsonnet/kube-prometheus/main.libsonnet @@ -91,7 +91,14 @@ local utils = import './lib/utils.libsonnet'; version: $.values.common.versions.prometheus, image: $.values.common.images.prometheus, name: 'k8s', - alertmanagerName: $.values.alertmanager.name, + alerting: { + alertmanagers: [{ + namespace: $.values.common.namespace, + name: 'alertmanager-' + $.values.alertmanager.name, + port: $.alertmanager.service.spec.ports[0].name, + apiVersion: 'v2', + }], + }, mixin+: { ruleLabels: $.values.common.ruleLabels }, }, prometheusAdapter: {