-
Epic
-
Resolution: Done
-
Major
-
None
-
None
-
Collector Rollout and KubeAPI Caching
-
Incidents & Support
-
False
-
-
False
-
Green
-
NEW
-
Administer, API
-
In Progress
-
NEW
-
0% To Do, 29% In Progress, 71% Done
-
-
Enhancement
-
M
Goals
- Enable read from kube-apiserver list cache by default for container inputs
- Allow tuning of the collector rollout strategy
- Declare the existing annotations as deprecated
- Declare the new api (for rollout) and new default config setting (for cache) as GA
- Drop support for the annotations in release N+1 (e.g. 6.5)
Non-Goals
- To provide a tunable knob to modify the kubernetes_log api cache setting
Motivation
Several customers with large clusters experienced significant cluster performance issues upon upgrade due to log collection. Resolution to those issues were fixed as a bug that introduced a tech preview feature. This epic captures the work necessary for these features to become GA
Alternatives
- Continue to depend upon the annotations and graduate them to GA
Acceptance Criteria
- Verify collector deployments are configured to make read list requests from the api server cache
- Verify the collector rollout strategy is configurable through the CLF API
Risk and Assumptions
- Upstream issue claims it is possible for "inconsistencies" but does not elaborate. We are assuming the responses from the kube-apiserver will converge to a "consistent" state and the collectors will be informed of the changes.
Documentation Considerations
- API update
- API field MaxUnavailable takes precedence over annotation
- `observability.openshift.io/max-unavailable-rollout` annotation is deprecated and subject to being removed in a future release
- `observability.openshift.io/use-apiserver-cache` annotation is no longer honored being replaced by always enabled
Open Questions
Additional Notes
- There was mention by support of introducing a deprecation alert
- causes
-
LOG-7588 Investigate kubernetes_source interactions with the kube-apiserver
-
- To Do
-
- links to