mirror of
https://github.com/prometheus-operator/kube-prometheus.git
synced 2025-10-28 14:41:02 +01:00
35 lines
1.1 KiB
Jsonnet
35 lines
1.1 KiB
Jsonnet
// On managed Kubernetes clusters some of the control plane components are not exposed to customers.
|
|
// Disable scrape jobs, service monitors, and alert groups for these components by overwriting 'main.libsonnet' defaults
|
|
|
|
{
|
|
values+:: {
|
|
// This snippet walks the original object (super.jobs, set as temp var j) and creates a replacement jobs object
|
|
// excluding any members of the set specified (eg: controller and scheduler).
|
|
local j = super.jobs,
|
|
jobs: {
|
|
[k]: j[k]
|
|
for k in std.objectFields(j)
|
|
if !std.setMember(k, ['KubeControllerManager', 'KubeScheduler'])
|
|
},
|
|
},
|
|
|
|
local k = super.kubernetesControlPlane,
|
|
|
|
kubernetesControlPlane+: {
|
|
[q]: null
|
|
for q in std.objectFields(k)
|
|
if std.setMember(q, ['serviceMonitorKubeControllerManager', 'serviceMonitorKubeScheduler'])
|
|
} + {
|
|
prometheusRule+: {
|
|
spec+: {
|
|
local g = super.groups,
|
|
groups: [
|
|
h
|
|
for h in g
|
|
if !std.setMember(h.name, ['kubernetes-system-controller-manager', 'kubernetes-system-scheduler'])
|
|
],
|
|
},
|
|
},
|
|
},
|
|
}
|