@@ -244,13 +244,15 @@ The KEP targets a controller which allows for:
244
244
* Custom Resource metrics generation based on their schemata,
245
245
* using admission webhooks to avoid ingesting conflicting or bad configuration
246
246
from managed resources,
247
- * defining cluster-scoped managed resources (` ResourceMetricsMonitor ` ) that allows
248
- defining the collection configuration for generating metrics on-the-fly,
249
- * accommodating for multiple configuration parsing techniques and expression
250
- turing-incomplete (or turing-complete if Go-bindings are available) languages,
251
- * conforming to, and improving on existing Custom Resource State API offered by
252
- Kube State Metrics without hindering the maintainability and the scalability
253
- of the controller.
247
+ * defining cluster-scoped managed resources (` ResourceMetricsMonitor ` ) that
248
+ allows defining the collection configuration for generating metrics
249
+ on-the-fly,
250
+ * accommodating for multiple configuration parsing techniques and expressions
251
+ using turing-incomplete (or turing-complete if Go-bindings are available)
252
+ languages,
253
+ * conforming to, improving on, and eventually deprecating the existing Custom
254
+ Resource State API offered by Kube State Metrics without hindering the
255
+ maintainability and the scalability of the controller.
254
256
255
257
### Non-Goals
256
258
@@ -278,7 +280,7 @@ nitty-gritty.
278
280
279
281
The proposal targets the incubation and incorporation of a controller capable
280
282
of essentially doing all that Kube State Metrics' Custom Resource State API
281
- offers, in additional to various benefits of its own owing to the controller
283
+ offers, in addition to various benefits of its own owing to the controller
282
284
lifecycle it is based upon.
283
285
284
286
The controller aims to replace the existing Kube State Metrics' Custom Resource
@@ -366,7 +368,13 @@ Consider including folks who also work outside the SIG or subproject.
366
368
N/A since the managed resource offered by Resource State Metrics provides the
367
369
ability to define metric configurations that are a super-set of the
368
370
expressibility that Kube State Metrics' Custom Resource State configurations
369
- have to offer.
371
+ have to offer. However, users will need to familiarize themselves with the
372
+ supported DSLs to be able to translate their configuration into a format that
373
+ the controller can understand, missing which could result in invalid metrics.
374
+
375
+ Also, since this aims to deprecate the Custom Resource State API, a timeline and
376
+ its PSA will be published for users on the Kube State Metrics' repository, once
377
+ the controller graduates to stable.
370
378
371
379
## Design Details
372
380
@@ -399,7 +407,9 @@ support for some OpenMetrics-specified metrics' types, such as `Info` and
399
407
` StateSets ` .
400
408
401
409
At the moment, the ` spec ` houses a single ` configuration ` field, which defines
402
- the metric generation configuration as follows:
410
+ the metric generation configuration as follows (please note that the schema is
411
+ fast-moving at this point and may be subject to change based on the [ feedback
412
+ obtained] ( https://github.com/rexagod/resource-state-metrics/issues?q=sort%3Aupdated-desc+is%3Aissue+is%3Aopen ) ):
403
413
404
414
``` yaml
405
415
stores : # Set of metrics stores for each CR we want to generate metrics for.
@@ -480,6 +490,8 @@ status:
480
490
type : Processed
481
491
` ` `
482
492
493
+ Also, performance benchmarks are available in [tests/bench](https://github.com/rexagod/resource-state-metrics/tree/main/tests/bench).
494
+
483
495
[plural ambiguities]: https://github.com/kubernetes-sigs/kubebuilder/issues/3402
484
496
485
497
### Test Plan
0 commit comments