From 0d907098ae3c3b4ca1be9aceace469bcccd27bea Mon Sep 17 00:00:00 2001 From: Zack Brenton Date: Thu, 2 Apr 2020 12:53:17 -0300 Subject: [PATCH 1/3] remove version label from node-exporter selectors --- .../kube-prometheus/node-exporter/node-exporter.libsonnet | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/jsonnet/kube-prometheus/node-exporter/node-exporter.libsonnet b/jsonnet/kube-prometheus/node-exporter/node-exporter.libsonnet index 264f4a08..c5004cdb 100644 --- a/jsonnet/kube-prometheus/node-exporter/node-exporter.libsonnet +++ b/jsonnet/kube-prometheus/node-exporter/node-exporter.libsonnet @@ -69,6 +69,11 @@ local k = import 'ksonnet/ksonnet.beta.4/k.libsonnet'; local containerEnv = container.envType; local podLabels = $._config.nodeExporter.labels; + local selectorLabels = { + [labelName]: $._config.nodeExporter.labels[labelName] + for labelName in std.objectFields($._config.nodeExporter.labels) + if !std.setMember(labelName, ['app.kubernetes.io/version']) + }; local existsToleration = toleration.new() + toleration.withOperator('Exists'); @@ -133,7 +138,7 @@ local k = import 'ksonnet/ksonnet.beta.4/k.libsonnet'; daemonset.mixin.metadata.withName('node-exporter') + daemonset.mixin.metadata.withNamespace($._config.namespace) + daemonset.mixin.metadata.withLabels(podLabels) + - daemonset.mixin.spec.selector.withMatchLabels(podLabels) + + daemonset.mixin.spec.selector.withMatchLabels(selectorLabels) + daemonset.mixin.spec.template.metadata.withLabels(podLabels) + daemonset.mixin.spec.template.spec.withTolerations([existsToleration]) + daemonset.mixin.spec.template.spec.withNodeSelector({ 'kubernetes.io/os': 'linux' }) + From 432db2c79935e4afc5f7336dd0bec35a8f6eaab1 Mon Sep 17 00:00:00 2001 From: Zack Brenton Date: Mon, 6 Apr 2020 13:54:17 -0300 Subject: [PATCH 2/3] use top-level config for all nodeExporter selector labels --- .../node-exporter/node-exporter.libsonnet | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/jsonnet/kube-prometheus/node-exporter/node-exporter.libsonnet b/jsonnet/kube-prometheus/node-exporter/node-exporter.libsonnet index c5004cdb..cf55c02a 100644 --- a/jsonnet/kube-prometheus/node-exporter/node-exporter.libsonnet +++ b/jsonnet/kube-prometheus/node-exporter/node-exporter.libsonnet @@ -20,6 +20,11 @@ local k = import 'ksonnet/ksonnet.beta.4/k.libsonnet'; 'app.kubernetes.io/name': 'node-exporter', 'app.kubernetes.io/version': $._config.versions.nodeExporter, }, + selectorLabels: { + [labelName]: $._config.nodeExporter.labels[labelName] + for labelName in std.objectFields($._config.nodeExporter.labels) + if !std.setMember(labelName, ['app.kubernetes.io/version']) + }, }, }, @@ -69,11 +74,7 @@ local k = import 'ksonnet/ksonnet.beta.4/k.libsonnet'; local containerEnv = container.envType; local podLabels = $._config.nodeExporter.labels; - local selectorLabels = { - [labelName]: $._config.nodeExporter.labels[labelName] - for labelName in std.objectFields($._config.nodeExporter.labels) - if !std.setMember(labelName, ['app.kubernetes.io/version']) - }; + local selectorLabels = $._config.nodeExporter.selectorLabels; local existsToleration = toleration.new() + toleration.withOperator('Exists'); @@ -168,7 +169,7 @@ local k = import 'ksonnet/ksonnet.beta.4/k.libsonnet'; spec: { jobLabel: 'app.kubernetes.io/name', selector: { - matchLabels: $._config.nodeExporter.labels, + matchLabels: $._config.nodeExporter.selectorLabels, }, endpoints: [ { @@ -199,7 +200,7 @@ local k = import 'ksonnet/ksonnet.beta.4/k.libsonnet'; local nodeExporterPort = servicePort.newNamed('https', $._config.nodeExporter.port, 'https'); - service.new('node-exporter', $.nodeExporter.daemonset.spec.selector.matchLabels, nodeExporterPort) + + service.new('node-exporter', $._config.nodeExporter.selectorLabels, nodeExporterPort) + service.mixin.metadata.withNamespace($._config.namespace) + service.mixin.metadata.withLabels($._config.nodeExporter.labels) + service.mixin.spec.withClusterIp('None'), From 46aa9554d18ec2c815be1706509d32433e3c3aca Mon Sep 17 00:00:00 2001 From: Zack Brenton Date: Tue, 7 Apr 2020 11:06:30 -0300 Subject: [PATCH 3/3] updated generated manifests --- manifests/node-exporter-daemonset.yaml | 1 - manifests/node-exporter-service.yaml | 1 - manifests/node-exporter-serviceMonitor.yaml | 1 - 3 files changed, 3 deletions(-) diff --git a/manifests/node-exporter-daemonset.yaml b/manifests/node-exporter-daemonset.yaml index 3e61863a..1ed3478e 100644 --- a/manifests/node-exporter-daemonset.yaml +++ b/manifests/node-exporter-daemonset.yaml @@ -10,7 +10,6 @@ spec: selector: matchLabels: app.kubernetes.io/name: node-exporter - app.kubernetes.io/version: v0.18.1 template: metadata: labels: diff --git a/manifests/node-exporter-service.yaml b/manifests/node-exporter-service.yaml index 174bc0fe..7dfbef63 100644 --- a/manifests/node-exporter-service.yaml +++ b/manifests/node-exporter-service.yaml @@ -14,4 +14,3 @@ spec: targetPort: https selector: app.kubernetes.io/name: node-exporter - app.kubernetes.io/version: v0.18.1 diff --git a/manifests/node-exporter-serviceMonitor.yaml b/manifests/node-exporter-serviceMonitor.yaml index c74c4700..357164d9 100644 --- a/manifests/node-exporter-serviceMonitor.yaml +++ b/manifests/node-exporter-serviceMonitor.yaml @@ -25,4 +25,3 @@ spec: selector: matchLabels: app.kubernetes.io/name: node-exporter - app.kubernetes.io/version: v0.18.1