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
kubectl get managed
takes a long time to gain results
#3459
Comments
Yeah, I thought we had an issue tracking this already but apparently not - thanks for raising it. This is a really tough one to fix thanks to the very request-heavy nature of CRD category queries. I can't imagine there's much that could be done other than server-side aggregation, such that the API server exposed a single endpoint allowing folks to list a category of resources rather than a single type. Short of changing Kubernetes, one option would be to use https://github.com/upbound/xgql and a client thereof. It's able to make and cache this kind of inefficient queries on clients behalf. |
I think that this is closely related to this: #2869 . The performance degradation is tied with the bloat that crossplane needs to go through. I faced the same thing when working with compositions and wanted to have a congested view of related resources, so using |
Crossplane does not currently have enough maintainers to address every issue and pull request. This issue has been automatically marked as |
/fresh |
What problem are you facing?
On a test cluster I have the aws and gcp provider installed. I have a single composition for an encrypted storage bucket that generates 6 gcp provider resources. I created one instance of such a bucket.
If I try to list the generated resources via
kubectl get managed
, it takes over 1 minute to gather the results:That is due to the fact that kubectl makes an API request to every single
VersionKind
combination that is in themanaged
category, which happens to be all cloud provider resources, which is a lot. The-v 8
parameter in thekubectl get
query reveals 100s of API calls like the following:How could Crossplane help solve your problem?
Maybe there is another way to see all managed resources? Maybe via the
kubectl crossplane
cli?The text was updated successfully, but these errors were encountered: