Skip to content

Commit 99328cc

Browse files
committed
fix: allow opting-into upstream probes
Allow users to opt-into upstream probe definitions. Signed-off-by: Pranshu Srivastava <[email protected]>
1 parent eb7f83a commit 99328cc

16 files changed

+576
-32
lines changed

jsonnet/kube-prometheus/components/kube-rbac-proxy.libsonnet

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -49,11 +49,27 @@ function(params) {
4949

5050
name: krp._config.name,
5151
image: krp._config.image,
52+
/*
53+
`std.get` and `std.objectHas` does not recognize `null` values, for eg.,
54+
{
55+
x: null,
56+
get: std.get($, 'x', []),
57+
objectHas: std.objectHas($, 'x'),
58+
}
59+
yeilds,
60+
{
61+
"x": null
62+
"get": null,
63+
"objectHas": true,
64+
}
65+
*/
66+
local hasNonNullKey = function (key) std.objectHas(krp._config, key) && krp._config[key] != null,
5267
args: [
53-
'--secure-listen-address=' + krp._config.secureListenAddress,
54-
'--tls-cipher-suites=' + std.join(',', krp._config.tlsCipherSuites),
55-
'--upstream=' + krp._config.upstream,
56-
],
68+
'--secure-listen-address=' + krp._config.secureListenAddress,
69+
'--tls-cipher-suites=' + std.join(',', krp._config.tlsCipherSuites),
70+
'--upstream=' + krp._config.upstream,
71+
] // Optionals.
72+
+ if hasNonNullKey('ignorePaths') then ['--ignore-paths=' + std.join(',', krp._config.ignorePaths)] else [],
5773
resources: krp._config.resources,
5874
ports: krp._config.ports,
5975
securityContext: {

jsonnet/kube-prometheus/components/kube-state-metrics.libsonnet

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@ local defaults = {
4646
runbookURLPattern: 'https://runbooks.prometheus-operator.dev/runbooks/kube-state-metrics/%s',
4747
},
4848
},
49+
upstreamProbesOptIn:: true,
4950
};
5051

5152
function(params) (import 'github.com/kubernetes/kube-state-metrics/jsonnet/kube-state-metrics/kube-state-metrics.libsonnet') {
@@ -112,6 +113,7 @@ function(params) (import 'github.com/kubernetes/kube-state-metrics/jsonnet/kube-
112113
{ name: 'https-main', containerPort: 8443 },
113114
],
114115
image: ksm._config.kubeRbacProxyImage,
116+
ignorePaths: if ksm._config.upstreamProbesOptIn then ['/livez'],
115117
}),
116118

117119
local kubeRbacProxySelf = krp(ksm._config.kubeRbacProxySelf {
@@ -122,6 +124,7 @@ function(params) (import 'github.com/kubernetes/kube-state-metrics/jsonnet/kube-
122124
{ name: 'https-self', containerPort: 9443 },
123125
],
124126
image: ksm._config.kubeRbacProxyImage,
127+
ignorePaths: if ksm._config.upstreamProbesOptIn then ['/readyz'],
125128
}),
126129

127130
networkPolicy: {
@@ -162,13 +165,17 @@ function(params) (import 'github.com/kubernetes/kube-state-metrics/jsonnet/kube-
162165
automountServiceAccountToken: true,
163166
containers: std.map(function(c) c {
164167
ports:: null,
165-
livenessProbe:: null,
166-
readinessProbe:: null,
167168
securityContext+: {
168169
runAsGroup: 65534,
169170
},
170171
args: ['--host=127.0.0.1', '--port=8081', '--telemetry-host=127.0.0.1', '--telemetry-port=8082'],
171172
resources: ksm._config.resources,
173+
} + if ksm._config.upstreamProbesOptIn then {
174+
livenessProbe: super.livenessProbe,
175+
readinessProbe: super.readinessProbe,
176+
} else {
177+
livenessProbe:: null,
178+
readinessProbe:: null,
172179
}, super.containers) + [kubeRbacProxyMain, kubeRbacProxySelf],
173180
},
174181
},

jsonnetfile.lock.json

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
"subdir": "contrib/mixin"
1919
}
2020
},
21-
"version": "4bb9392289623e8bf05916281bd696fbbe42fd4d",
21+
"version": "4997a2bf931d0831f3a5c035933261af79441f0c",
2222
"sum": "IXI3LQIT9NmTPJAk8WLUJd5+qZfcGpeNCyWIK7oEpws="
2323
},
2424
{
@@ -88,7 +88,7 @@
8888
"subdir": "grafana-builder"
8989
}
9090
},
91-
"version": "1132fd721e4e97fbeeba24aeb0b45e9844c00e09",
91+
"version": "0cc405d0a188c6aacc74153e4ad065baafbd24f0",
9292
"sum": "yxqWcq/N3E/a/XreeU6EuE6X7kYPnG0AspAQFKOjASo="
9393
},
9494
{
@@ -98,7 +98,7 @@
9898
"subdir": "mixin-utils"
9999
}
100100
},
101-
"version": "1132fd721e4e97fbeeba24aeb0b45e9844c00e09",
101+
"version": "0cc405d0a188c6aacc74153e4ad065baafbd24f0",
102102
"sum": "LoYq5QxJmUXEtqkEG8CFUBLBhhzDDaNANHc7Gz36ZdM="
103103
},
104104
{
@@ -128,8 +128,8 @@
128128
"subdir": ""
129129
}
130130
},
131-
"version": "8c0479c02d05f479fafdcce56ad09ea7a264998a",
132-
"sum": "QTVAYskSzcQW3fp2NqH4frV2nlYA93x7VMQ/4515zsU="
131+
"version": "50150c585ebee6e4d9cb72218182da8f3c616515",
132+
"sum": "0g1pn3gGq2yZyeUTx+zniK/D7jMKbAnqJ83Lke+uJ6o="
133133
},
134134
{
135135
"source": {
@@ -138,7 +138,7 @@
138138
"subdir": "jsonnet/kube-state-metrics"
139139
}
140140
},
141-
"version": "e6f359db36ab62b0238aff20bf568ad69f998a87",
141+
"version": "aebbb390820496d46750697aa6956c57ff082d41",
142142
"sum": "lO7jUSzAIy8Yk9pOWJIWgPRhubkWzVh56W6wtYfbVH4="
143143
},
144144
{
@@ -148,7 +148,7 @@
148148
"subdir": "jsonnet/kube-state-metrics-mixin"
149149
}
150150
},
151-
"version": "e6f359db36ab62b0238aff20bf568ad69f998a87",
151+
"version": "aebbb390820496d46750697aa6956c57ff082d41",
152152
"sum": "qclI7LwucTjBef3PkGBkKxF0mfZPbHnn4rlNWKGtR4c="
153153
},
154154
{
@@ -158,7 +158,7 @@
158158
"subdir": "jsonnet/mixin"
159159
}
160160
},
161-
"version": "e7dd06566f3372d51144bffd51975806bcc14a7e",
161+
"version": "890b73a912ea9150c5804dd689f7677bad3d372c",
162162
"sum": "gi+knjdxs2T715iIQIntrimbHRgHnpM8IFBJDD1gYfs=",
163163
"name": "prometheus-operator-mixin"
164164
},
@@ -169,8 +169,8 @@
169169
"subdir": "jsonnet/prometheus-operator"
170170
}
171171
},
172-
"version": "e7dd06566f3372d51144bffd51975806bcc14a7e",
173-
"sum": "Sc4Iv+TmicXlurzRDJXlr3K1Z044VeKdzXTQ3hwEPi4="
172+
"version": "890b73a912ea9150c5804dd689f7677bad3d372c",
173+
"sum": "nkQ22KTboIYhXEnBiINtMw7M1ptoO3UK6+s7O/G5fK8="
174174
},
175175
{
176176
"source": {
@@ -179,7 +179,7 @@
179179
"subdir": "doc/alertmanager-mixin"
180180
}
181181
},
182-
"version": "9c711fc6d1d7613569f39bb86c41a64f1f7d254a",
182+
"version": "ccc1ed914dabc288e2111f745fadf8fff105eed8",
183183
"sum": "IpF46ZXsm+0wJJAPtAre8+yxTNZA57mBqGpBP/r7/kw=",
184184
"name": "alertmanager"
185185
},
@@ -200,7 +200,7 @@
200200
"subdir": "documentation/prometheus-mixin"
201201
}
202202
},
203-
"version": "a35b15cea8355c4e5c76440debfaeebb1eb6ef66",
203+
"version": "be0c0bd8476dbf6d4a008f0861b528f112cde1d7",
204204
"sum": "dYLcLzGH4yF3qB7OGC/7z4nqeTNjv42L7Q3BENU8XJI=",
205205
"name": "prometheus"
206206
},
@@ -222,7 +222,7 @@
222222
"subdir": "mixin"
223223
}
224224
},
225-
"version": "3270568f6b23fb81a58695d64fbc5c5716dcc449",
225+
"version": "153607f4bf20ab2468d8399fe55a33edbf6a286d",
226226
"sum": "ieCD4eMgGbOlrI8GmckGPHBGQDcLasE1rULYq56W/bs=",
227227
"name": "thanos-mixin"
228228
},

0 commit comments

Comments
 (0)