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

a drift behavior as an eventual disruption should documentation #7560

Open
flavono123 opened this issue Jan 2, 2025 · 1 comment
Open

a drift behavior as an eventual disruption should documentation #7560

flavono123 opened this issue Jan 2, 2025 · 1 comment
Assignees
Labels
documentation Improvements or additions to documentation triage/accepted Indicates that the issue has been accepted as a valid issue

Comments

@flavono123
Copy link
Contributor

Description

How can the docs be improved?

for now, the doc says drift is the one of method of graceful disruption with the other consolidation methods:
https://github.com/kubernetes-sigs/karpenter/blob/81481b742d64a91739c22290c042218244737896/pkg/controllers/disruption/types.go#L98-L99

actually a disruption by drift do not gracefully:
https://github.com/kubernetes-sigs/karpenter/blob/81481b742d64a91739c22290c042218244737896/pkg/controllers/disruption/types.go#L98-L99

the class is eventual(i think controller does 'immediately', btw) and other consolidation methods are graceful.

document should say that drift is not a graceful method.

  • Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request
  • Please do not leave "+1" or "me too" comments, they generate extra noise for issue followers and do not help prioritize the request
  • If you are interested in working on this issue or have submitted a pull request, please leave a comment
@flavono123 flavono123 added documentation Improvements or additions to documentation needs-triage Issues that need to be triaged labels Jan 2, 2025
@jmdeal
Copy link
Contributor

jmdeal commented Jan 10, 2025

Graceful disruption means something different in this context. In the docs we distinguish between graceful and forceful disruption. Forceful disruption will occur as soon as the triggering event occurs (e.g. the NodeClaim expired or there was a spot interruption message). Graceful disruption means that it can be blocked by other conditions (e.g. node disruption budgets, blocking PDBs, and the do-not-disrupt annotation). In this context, both drift and consolidation are graceful.

Drift does have some additional interactions with TerminationGracePeriod. If a NodeClaim has a TGP set and it has been drifted, Karpenter won't block disruption on PDBs or the do-not-disrupt annotation. Node disruption budgets are still respected, differentiating it from forceful disruption. This should have been documented in the disruption docs under the TGP and pod level controls docs, but does not appear to be. The "eventual" disruption class is an internal concept and shouldn't be documented directly, but the docs should be updated to clarify drift's interaction with TGP.

@jmdeal jmdeal added triage/accepted Indicates that the issue has been accepted as a valid issue and removed needs-triage Issues that need to be triaged labels Jan 10, 2025
@jmdeal jmdeal self-assigned this Jan 10, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation triage/accepted Indicates that the issue has been accepted as a valid issue
Projects
None yet
Development

No branches or pull requests

2 participants