Skip to content

Use transforming informer for cluster cache #19199

@crenshaw-dev

Description

@crenshaw-dev

Summary

Today we use custom list/watch logic in the cluster cache component of gitops-engine to monitor resources. We did that originally to avoid storing a bunch of state in memory that we don't actually need (we just need resource metadata, not contents, in the cluster cache).

0.29 Kubernetes libraries introduced a transforming informer which could allow us to implement the same logic but using standardized tooling.

Motivation

We get the benefits of using upstream Kubernetes libraries instead of rolling our own. An example of a benefit is randomized watch timeouts. In the current cluster cache, we hardcode watch timeouts at 10min. The informer randomizes the timeout to spread load. We could re-implement the randomization, but it's nice to take advantage of upstream functionality.

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions