From eb7f83a4071ea3aa8f98d0c8129fe6e6ac88bf34 Mon Sep 17 00:00:00 2001
From: Damien Grisonnet <dgrisonn@redhat.com>
Date: Thu, 5 Sep 2024 09:45:00 +0200
Subject: [PATCH] Drop process start time from SLI endpoints (#2501)

* jsonnet: drop process start time metric from SLI

Signed-off-by: Damien Grisonnet <dgrisonn@redhat.com>

* manifests: regenerate

Signed-off-by: Damien Grisonnet <dgrisonn@redhat.com>

---------

Signed-off-by: Damien Grisonnet <dgrisonn@redhat.com>
---
 .../components/k8s-control-plane.libsonnet    | 38 ++++++++++++++++---
 ...sControlPlane-serviceMonitorApiserver.yaml |  5 +++
 ...e-serviceMonitorKubeControllerManager.yaml |  5 +++
 ...trolPlane-serviceMonitorKubeScheduler.yaml |  5 +++
 ...tesControlPlane-serviceMonitorKubelet.yaml |  4 ++
 5 files changed, 52 insertions(+), 5 deletions(-)

diff --git a/jsonnet/kube-prometheus/components/k8s-control-plane.libsonnet b/jsonnet/kube-prometheus/components/k8s-control-plane.libsonnet
index 8692f38d..c7fd3b41 100644
--- a/jsonnet/kube-prometheus/components/k8s-control-plane.libsonnet
+++ b/jsonnet/kube-prometheus/components/k8s-control-plane.libsonnet
@@ -86,6 +86,13 @@ function(params) {
           path: '/metrics/slis',
           bearerTokenFile: '/var/run/secrets/kubernetes.io/serviceaccount/token',
           tlsConfig: { insecureSkipVerify: true },
+          metricRelabelings: [
+            {
+              sourceLabels: ['__name__'],
+              regex: 'process_start_time_seconds',
+              action: 'drop',
+            },
+          ],
         },
       ],
       selector: {
@@ -192,11 +199,18 @@ function(params) {
           honorLabels: true,
           tlsConfig: { insecureSkipVerify: true },
           bearerTokenFile: '/var/run/secrets/kubernetes.io/serviceaccount/token',
-          relabelings: [{
-            action: 'replace',
-            sourceLabels: ['__metrics_path__'],
-            targetLabel: 'metrics_path',
-          }],
+          relabelings: [
+            {
+              action: 'replace',
+              sourceLabels: ['__metrics_path__'],
+              targetLabel: 'metrics_path',
+            },
+            {
+              sourceLabels: ['__name__'],
+              regex: 'process_start_time_seconds',
+              action: 'drop',
+            },
+          ],
         },
       ],
       selector: {
@@ -243,6 +257,13 @@ function(params) {
           tlsConfig: {
             insecureSkipVerify: true,
           },
+          metricRelabelings: [
+            {
+              sourceLabels: ['__name__'],
+              regex: 'process_start_time_seconds',
+              action: 'drop',
+            },
+          ],
         },
       ],
       selector: {
@@ -315,6 +336,13 @@ function(params) {
             serverName: 'kubernetes',
           },
           bearerTokenFile: '/var/run/secrets/kubernetes.io/serviceaccount/token',
+          metricRelabelings: [
+            {
+              sourceLabels: ['__name__'],
+              regex: 'process_start_time_seconds',
+              action: 'drop',
+            },
+          ],
         },
       ],
     },
diff --git a/manifests/kubernetesControlPlane-serviceMonitorApiserver.yaml b/manifests/kubernetesControlPlane-serviceMonitorApiserver.yaml
index 75fe828d..991257d3 100644
--- a/manifests/kubernetesControlPlane-serviceMonitorApiserver.yaml
+++ b/manifests/kubernetesControlPlane-serviceMonitorApiserver.yaml
@@ -67,6 +67,11 @@ spec:
       serverName: kubernetes
   - bearerTokenFile: /var/run/secrets/kubernetes.io/serviceaccount/token
     interval: 5s
+    metricRelabelings:
+    - action: drop
+      regex: process_start_time_seconds
+      sourceLabels:
+      - __name__
     path: /metrics/slis
     port: https
     scheme: https
diff --git a/manifests/kubernetesControlPlane-serviceMonitorKubeControllerManager.yaml b/manifests/kubernetesControlPlane-serviceMonitorKubeControllerManager.yaml
index e8955d20..c5c9a7aa 100644
--- a/manifests/kubernetesControlPlane-serviceMonitorKubeControllerManager.yaml
+++ b/manifests/kubernetesControlPlane-serviceMonitorKubeControllerManager.yaml
@@ -53,6 +53,11 @@ spec:
       insecureSkipVerify: true
   - bearerTokenFile: /var/run/secrets/kubernetes.io/serviceaccount/token
     interval: 5s
+    metricRelabelings:
+    - action: drop
+      regex: process_start_time_seconds
+      sourceLabels:
+      - __name__
     path: /metrics/slis
     port: https-metrics
     scheme: https
diff --git a/manifests/kubernetesControlPlane-serviceMonitorKubeScheduler.yaml b/manifests/kubernetesControlPlane-serviceMonitorKubeScheduler.yaml
index 19a6626f..ea18c02a 100644
--- a/manifests/kubernetesControlPlane-serviceMonitorKubeScheduler.yaml
+++ b/manifests/kubernetesControlPlane-serviceMonitorKubeScheduler.yaml
@@ -16,6 +16,11 @@ spec:
       insecureSkipVerify: true
   - bearerTokenFile: /var/run/secrets/kubernetes.io/serviceaccount/token
     interval: 5s
+    metricRelabelings:
+    - action: drop
+      regex: process_start_time_seconds
+      sourceLabels:
+      - __name__
     path: /metrics/slis
     port: https-metrics
     scheme: https
diff --git a/manifests/kubernetesControlPlane-serviceMonitorKubelet.yaml b/manifests/kubernetesControlPlane-serviceMonitorKubelet.yaml
index 23213917..79651864 100644
--- a/manifests/kubernetesControlPlane-serviceMonitorKubelet.yaml
+++ b/manifests/kubernetesControlPlane-serviceMonitorKubelet.yaml
@@ -106,6 +106,10 @@ spec:
       sourceLabels:
       - __metrics_path__
       targetLabel: metrics_path
+    - action: drop
+      regex: process_start_time_seconds
+      sourceLabels:
+      - __name__
     scheme: https
     tlsConfig:
       insecureSkipVerify: true
-- 
GitLab