Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: Consistent Integration scale status #2662

Merged
merged 6 commits into from
Oct 1, 2021
Merged

feat: Consistent Integration scale status #2662

merged 6 commits into from
Oct 1, 2021

Conversation

astefanutti
Copy link
Member

@astefanutti astefanutti commented Sep 28, 2021

This PR provides a more robust Integration scaling status, by directly reconciling Integration Pods, rather than relying on owned resources, like Deployment, KnativeService and CronJob, that do not provide a minimal common denominator.

It fixes several issues, for which the reported number of replicas was incorrect, when the wrong ReplicaSet was selected for example.

It also restricts the caching of Pods by Integration label selector, in order to limit memory requirement for the operator, when scaling the number of Integrations.

Last but not least, It prepares better error handling, for which proper replicas reporting is a pre-requisite.

Release Note

feat: Consistent Integration scale status

@astefanutti astefanutti added kind/feature New feature or request status/wip Work in progress labels Sep 28, 2021
@astefanutti astefanutti removed the status/wip Work in progress label Sep 30, 2021
@astefanutti
Copy link
Member Author

I think this is ready.

So besides fixing the scale status issues, it also removes the watches for Pods, that could lead to receiving all the updates for all the Pods on the entire cluster, except but for the Integration Pods, which should improve scalability by multiple orders of magnitude. This is strictly enforced by the label selector sets on the operator manager cache, so care must be taken to use a non-cached client when getting non Integration Pods, otherwise nil or an empty list is returned.

@astefanutti astefanutti merged commit 98a0809 into apache:main Oct 1, 2021
@astefanutti astefanutti deleted the pr-301 branch October 1, 2021 12:14
@nicolaferraro nicolaferraro mentioned this pull request Nov 10, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/feature New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants