Skip to content

Commit 5eb2453

Browse files
Nitish Bhatsajmera-pensando
authored andcommitted
Change ServiceMonitor default labels
1 parent 6e1abbf commit 5eb2453

File tree

12 files changed

+23
-17
lines changed

12 files changed

+23
-17
lines changed

bundle/manifests/amd-gpu-operator.clusterserviceversion.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ metadata:
3232
capabilities: Seamless Upgrades
3333
categories: AI/Machine Learning,Monitoring
3434
containerImage: docker.io/rocm/gpu-operator:v1.2.0
35-
createdAt: "2025-05-04T02:40:22Z"
35+
createdAt: "2025-05-08T06:33:46Z"
3636
description: |-
3737
Operator responsible for deploying AMD GPU kernel drivers, device plugin, device test runner and device metrics exporter
3838
For more information, visit [documentation](https://instinct.docs.amd.com/projects/gpu-operator/en/latest/)
@@ -461,7 +461,7 @@ spec:
461461
x-descriptors:
462462
- urn:alm:descriptor:com.amd.deviceconfigs:enable
463463
- description: HonorLabels chooses the metric's labels on collisions with target
464-
labels (default false)
464+
labels (default true)
465465
displayName: HonorLabels
466466
path: metricsExporter.prometheus.serviceMonitor.honorLabels
467467
x-descriptors:

bundle/manifests/amd.com_deviceconfigs.yaml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -653,8 +653,9 @@ spec:
653653
(default false)
654654
type: boolean
655655
honorLabels:
656+
default: true
656657
description: HonorLabels chooses the metric's labels on
657-
collisions with target labels (default false)
658+
collisions with target labels (default true)
658659
type: boolean
659660
honorTimestamps:
660661
description: HonorTimestamps controls whether the scrape

config/crd/bases/amd.com_deviceconfigs.yaml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -649,8 +649,9 @@ spec:
649649
(default false)
650650
type: boolean
651651
honorLabels:
652+
default: true
652653
description: HonorLabels chooses the metric's labels on
653-
collisions with target labels (default false)
654+
collisions with target labels (default true)
654655
type: boolean
655656
honorTimestamps:
656657
description: HonorTimestamps controls whether the scrape

config/manifests/bases/amd-gpu-operator.clusterserviceversion.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -432,7 +432,7 @@ spec:
432432
x-descriptors:
433433
- urn:alm:descriptor:com.amd.deviceconfigs:enable
434434
- description: HonorLabels chooses the metric's labels on collisions with target
435-
labels (default false)
435+
labels (default true)
436436
displayName: HonorLabels
437437
path: metricsExporter.prometheus.serviceMonitor.honorLabels
438438
x-descriptors:

docs/sphinx/_toc.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ subtrees:
3636
entries:
3737
- file: metrics/exporter
3838
- file: metrics/kube-rbac-proxy
39+
- file: metrics/prometheus
3940
- file: metrics/health
4041
title: Health Checks
4142
- caption: Test Runner

docs/sphinx/_toc.yml.in

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ subtrees:
3636
entries:
3737
- file: metrics/exporter
3838
- file: metrics/kube-rbac-proxy
39+
- file: metrics/prometheus
3940
- file: metrics/health
4041
title: Health Checks
4142
- caption: Test Runner

helm-charts-k8s/Chart.lock

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,4 +6,4 @@ dependencies:
66
repository: file://./charts/kmm
77
version: v1.0.0
88
digest: sha256:f9a315dd2ce3d515ebf28c8e9a6a82158b493ca2686439ec381487761261b597
9-
generated: "2025-05-04T02:28:56.201802096Z"
9+
generated: "2025-05-08T06:33:22.365680047Z"

helm-charts-k8s/README.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,8 @@ helm repo update
6666
```bash
6767
helm install amd-gpu-operator rocm/gpu-operator-charts \
6868
--namespace kube-amd-gpu \
69-
--create-namespace
69+
--create-namespace \
70+
--version=v1.2.0
7071
```
7172

7273
#### Installation Options

helm-charts-k8s/crds/deviceconfig-crd.yaml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -656,8 +656,9 @@ spec:
656656
false)
657657
type: boolean
658658
honorLabels:
659+
default: true
659660
description: HonorLabels chooses the metric's labels on
660-
collisions with target labels (default false)
661+
collisions with target labels (default true)
661662
type: boolean
662663
honorTimestamps:
663664
description: HonorTimestamps controls whether the scrape

helm-charts-openshift/Chart.lock

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,4 +6,4 @@ dependencies:
66
repository: file://./charts/kmm
77
version: v1.0.0
88
digest: sha256:25200c34a5cc846a1275e5bf3fc637b19e909dc68de938189c5278d77d03f5ac
9-
generated: "2025-04-30T04:46:12.083919622Z"
9+
generated: "2025-05-08T06:33:43.637209508Z"

helm-charts-openshift/crds/deviceconfig-crd.yaml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -656,8 +656,9 @@ spec:
656656
false)
657657
type: boolean
658658
honorLabels:
659+
default: true
659660
description: HonorLabels chooses the metric's labels on
660-
collisions with target labels (default false)
661+
collisions with target labels (default true)
661662
type: boolean
662663
honorTimestamps:
663664
description: HonorTimestamps controls whether the scrape

internal/metricsexporter/metricsexporter.go

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -56,14 +56,15 @@ const (
5656
defaultInitContainerImage = "busybox:1.36"
5757
servicePort int32 = 5000
5858
nobodyUser = 65532
59-
ExporterName = "amd-device-metrics-exporter"
59+
ExporterName = "metrics-exporter"
6060
KubeRbacName = "kube-rbac-proxy"
6161
StaticAuthSecretName = ExporterName + "-static-auth-config"
6262
defaultSAName = "amd-gpu-operator-metrics-exporter"
6363
kubeRbacSAName = "amd-gpu-operator-metrics-exporter-rbac-proxy"
6464
svcLabel = "app.kubernetes.io/service"
6565
)
6666

67+
var serviceMonitorLabelPair = []string{"app", "amd-device-metrics-exporter"}
6768
var metricsExporterLabelPair = []string{"app.kubernetes.io/name", ExporterName}
6869

6970
//go:generate mockgen -source=metricsexporter.go -package=metricsexporter -destination=mock_metricsexporter.go MetricsExporter
@@ -585,18 +586,16 @@ func (nl *metricsExporter) SetServiceMonitorAsDesired(sm *monitoringv1.ServiceMo
585586
AttachMetadata: devConfig.Spec.MetricsExporter.Prometheus.ServiceMonitor.AttachMetadata,
586587
}
587588

588-
// Set custom labels or use default
589-
if sm.Labels == nil {
590-
sm.Labels = make(map[string]string)
589+
// Set custom labels
590+
sm.Labels = map[string]string{
591+
serviceMonitorLabelPair[0]: serviceMonitorLabelPair[1],
591592
}
593+
592594
if len(devConfig.Spec.MetricsExporter.Prometheus.ServiceMonitor.Labels) > 0 {
593595
// Use custom labels from the CRD
594596
for k, v := range devConfig.Spec.MetricsExporter.Prometheus.ServiceMonitor.Labels {
595597
sm.Labels[k] = v
596598
}
597-
} else {
598-
// Use default labels
599-
sm.Labels["release"] = "prometheus-operator"
600599
}
601600

602601
return controllerutil.SetControllerReference(devConfig, sm, nl.scheme)

0 commit comments

Comments
 (0)