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

Ignore known Kubernetes internal resources by default with resource.exclusions #20013

Open
agaudreault opened this issue Sep 19, 2024 · 2 comments · Fixed by #20251
Open

Ignore known Kubernetes internal resources by default with resource.exclusions #20013

agaudreault opened this issue Sep 19, 2024 · 2 comments · Fixed by #20251
Labels
component:sync enhancement New feature or request
Milestone

Comments

@agaudreault
Copy link
Member

Summary

Exclude Endpoints and EndpointSlices by default.

Motivation

Endpoints and EndpointSlices are Kubernetes internal resources that most users will never directly create. They can clutter the UI and decrease Argo performance due to high churn.

Proposal

Specify the resources by default in the resource.exclusions configuration.

@ChristianCiach
Copy link
Contributor

ChristianCiach commented Oct 10, 2024

To add my two cents: I would love to hide Endpoints and EndpointSlices from the UI, but only those that I did not directly deploy.

For example, the kube-prometheus-stack deploys some Endpoint resources (for example when configuring the helm value kubeEtcd.endpoints) that I absolutely want to see in the UI. But the transitive EPs and EPSlices automatically created by Kubernetes for Services with selectors are annoying and clutter the UI.

@agaudreault
Copy link
Member Author

agaudreault commented Oct 10, 2024

@ChristianCiach +1 I think this would be a new feature that makes sense and it is not necessary to wait for 3.0

To implement / configure it:

  • resources.exclusions should not include Endpoints
  • add a new resources.hide ??? (better names are welcomed!)
    • configure endpoint/endpoint slices the same way it would have been configured in resources.exclusions
  • Argo does not add the resource to the Application resource tree / UI when
    • resource is included in resources.hide AND it does not contain the tracking annotation/label.

Alternative:

  • Implement this as a UI user preference (settings/appearance) and it is the UI that filters these resources from the different views. 🤔

Note that this has no improvements on performance, but it will improve the UX.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component:sync enhancement New feature or request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants