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

KEP-1397: descheduler integration with evacuation API as an alternative to eviction API #1397

Open
ingvagabund opened this issue May 11, 2024 · 2 comments · Fixed by #1354
Open
Assignees
Labels
kind/feature Categorizes issue or PR as related to a new feature.

Comments

@ingvagabund
Copy link
Contributor

Is your feature request related to a problem? Please describe.

The descheduler eviction policy is built on top of the eviction API. The API currently does not support eviction requests that are not completed right away. Instead, any eviction needs to either succeed or be rejected in response. Nevertheless, there are cases where an eviction request is expected to only initiate eviction. While getting confirmation or rejection of the eviction initiation (or its promise).

User Stories:

  • As a cluster admin running a K8s cluster with a descheduler, I want to evict KubeVirt pods that may require live migration of VMs before a pod can be evicted. A VM live migration can take minutes to complete or may require retries.
  • As an end user deploying my application on a K8s cluster with a descheduler, I want to evict pods while performing pod live migration to persist pod's state without storing any necessary data into pod-independent persistent storage.
  • As a developer I want to be able to implement a custom eviction policy to address various company use cases that are not supported by default when running a descheduler instance.
  • As a descheduler plugin developer I want to be aware of evictions in progress to improve pod nomination and thus avoid unnecessary disruptions.
  • As a security professional I want to make sure any live migration adhers to security policies and protects sensitive data.

Describe the solution you'd like

Utilize evacuation API as an alternative to eviction API. As an interim solution (until the evacuation API is available) allow to interpret pods with a special annotation as a request for eviction initiation instead of expecting an immediate eviction.

Describe alternatives you've considered

Part of the upcoming proposal.

What version of descheduler are you using?

descheduler version: 0.29

Additional context

@ingvagabund ingvagabund added the kind/feature Categorizes issue or PR as related to a new feature. label May 11, 2024
@ingvagabund ingvagabund changed the title KEP-NNNN: descheduler integration with evacuation API as an alternative to eviction API KEP-1397: descheduler integration with evacuation API as an alternative to eviction API May 11, 2024
@ingvagabund ingvagabund self-assigned this May 12, 2024
@ingvagabund ingvagabund reopened this Jul 24, 2024
@ingvagabund
Copy link
Contributor Author

Implementation PR: #1466

@k8s-triage-robot
Copy link

The Kubernetes project currently lacks enough contributors to adequately respond to all issues.

This bot triages un-triaged issues according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the issue is closed

You can:

  • Mark this issue as fresh with /remove-lifecycle stale
  • Close this issue with /close
  • Offer to help out with Issue Triage

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle stale

@k8s-ci-robot k8s-ci-robot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Oct 22, 2024
@ingvagabund ingvagabund removed the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Oct 23, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/feature Categorizes issue or PR as related to a new feature.
Projects
None yet
3 participants