Skip to content

Commit cfa5ae7

Browse files
chenk008deads2k
authored andcommitted
update to target alpha release
1 parent ca35a04 commit cfa5ae7

File tree

2 files changed

+37
-18
lines changed

2 files changed

+37
-18
lines changed

keps/sig-api-machinery/4346-informer-metrics/README.md

Lines changed: 36 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -428,6 +428,9 @@ extending the production code to implement this enhancement.
428428

429429
- `<package>`: `<date>` - `<test coverage>`
430430

431+
- Unit tests to ensure that the metrics output meets expectations.
432+
- Unit tests to ensure that the metrics deletion is functioning properly.
433+
431434
##### Integration tests
432435

433436
<!--
@@ -529,6 +532,21 @@ in back-to-back releases.
529532
- Deprecate the flag
530533
-->
531534

535+
#### Alpha
536+
537+
- Feature implemented behind a feature gate flag
538+
- Add related integration and unit tests to ensure functionality and make sure there is no memory leak in
539+
existing behavior
540+
541+
#### Beta
542+
543+
- Gather feedback from developers and surveys
544+
- Work on feedback and add additional tests as needed
545+
546+
#### GA
547+
548+
- Decision on GA will be made based on beta feedback
549+
532550
### Upgrade / Downgrade Strategy
533551

534552
<!--
@@ -543,6 +561,8 @@ enhancement:
543561
cluster required to make on upgrade, in order to make use of the enhancement?
544562
-->
545563

564+
N/A
565+
546566
### Version Skew Strategy
547567

548568
<!--
@@ -602,16 +622,10 @@ well as the [existing list] of feature gates.
602622
[existing list]: https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/
603623
-->
604624

605-
- [ ] Feature gate (also fill in values in `kep.yaml`)
625+
- [X] Feature gate (also fill in values in `kep.yaml`)
606626
- Feature gate name: InformerMetrics
607627
- Components depending on the feature gate:
608628
- components via client-go library
609-
- [ ] Other
610-
- Describe the mechanism:
611-
- Will enabling / disabling the feature require downtime of the control
612-
plane?
613-
- Will enabling / disabling the feature require downtime or reprovisioning
614-
of a node?
615629

616630
###### Does enabling the feature change any default behavior?
617631

@@ -655,7 +669,7 @@ You can take a look at one potential example of such test in:
655669
https://github.com/kubernetes/kubernetes/pull/97058/files#diff-7826f7adbc1996a05ab52e3f5f02429e94b68ce6bce0dc534d1be636154fded3R246-R282
656670
-->
657671

658-
For now, there is no tests for feature enablement/disablement. The unit tests will be added.
672+
For now, there is no tests for feature enablement/disablement. The unit / integration tests will be added.
659673

660674
### Rollout, Upgrade and Rollback Planning
661675

@@ -713,6 +727,8 @@ checking if there are objects with field X set) may be a last resort. Avoid
713727
logs or events for this purpose.
714728
-->
715729

730+
- [x] Informer / Reflector (e.g., `lists_total`, `watches_total`) metrics returned by the operator are populated
731+
716732
###### How can someone using this feature know that it is working for their instance?
717733

718734
<!--
@@ -724,13 +740,13 @@ and operation of this feature.
724740
Recall that end users cannot usually observe component logs or access metrics.
725741
-->
726742

727-
- [ ] Events
728-
- Event Reason:
729-
- [ ] API .status
730-
- Condition name:
731-
- Other field:
732-
- [ ] Other (treat as last resort)
743+
- [X] Other (treat as last resort)
733744
- Details:
745+
- The following metrics are available when `InformerMetrics` is enabled:
746+
- lists_total
747+
- watches_total
748+
- last_resource_version
749+
- etc.
734750

735751
###### What are the reasonable SLOs (Service Level Objectives) for the enhancement?
736752

@@ -749,18 +765,19 @@ These goals will help you determine what you need to measure (SLIs) in the next
749765
question.
750766
-->
751767

768+
The feature gate will increase memory usage. The memory usage should not continuously grow.
769+
The informerMetrics / eventHandlerMetrics / reflectorMetrics memory consumption is in a stable state.
770+
752771
###### What are the SLIs (Service Level Indicators) an operator can use to determine the health of the service?
753772

754773
<!--
755774
Pick one more of these and delete the rest.
756775
-->
757776

758-
- [ ] Metrics
777+
- [X] Metrics
759778
- Metric name: Memory usage
760779
- [Optional] Aggregation method:
761780
- Components exposing the metric: Operating System/golang pprof
762-
- [ ] Other (treat as last resort)
763-
- Details:
764781

765782
###### Are there any missing metrics that would be useful to have to improve observability of this feature?
766783

@@ -769,6 +786,8 @@ Describe the metrics themselves and the reasons why they weren't added (e.g., co
769786
implementation difficulties, etc.).
770787
-->
771788

789+
Not at the moment.
790+
772791
### Dependencies
773792

774793
<!--

keps/sig-api-machinery/4346-informer-metrics/kep.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ authors:
44
- "@chenk008"
55
owning-sig: api-machinery
66
participating-sigs: []
7-
status: provisional
7+
status: implementable
88
creation-date: 2023-11-27
99
reviewers:
1010
- "@deads2k"

0 commit comments

Comments
 (0)