Open thelabdude opened 1 year ago
This is an interesting one. I definitely think that it makes sense from a migration perspective.
you can't find pods by annotation
I'm curious what the path looks like for migration here in your opinion. Do you plan to eventually migrate away from the CAS annotation and start adding the Karpenter annotation with the OPA mutation webhooks.
Tell us about your request
Would be great if Karpenter treated pods with the
cluster-autoscaler.kubernetes.io/safe-to-evict
annotation as the same as thekarpenter.sh/do-not-evict
annotation.
I like the idea; I think it should be off by default and easy to opt in to. Perhaps a configuration option for each Provisioner? Something a bit like a selector, but for annotations and only matching the value as be "true"
, "false"
or neither.
The Kubernetes project currently lacks enough contributors to adequately respond to all issues.
This bot triages un-triaged issues according to the following rules:
lifecycle/stale
is appliedlifecycle/stale
was applied, lifecycle/rotten
is appliedlifecycle/rotten
was applied, the issue is closedYou can:
/remove-lifecycle stale
/close
Please send feedback to sig-contributor-experience at kubernetes/community.
/lifecycle stale
/remove-lifecycle stale
The Kubernetes project currently lacks enough contributors to adequately respond to all issues.
This bot triages un-triaged issues according to the following rules:
lifecycle/stale
is appliedlifecycle/stale
was applied, lifecycle/rotten
is appliedlifecycle/rotten
was applied, the issue is closedYou can:
/remove-lifecycle stale
/close
Please send feedback to sig-contributor-experience at kubernetes/community.
/lifecycle stale
The Kubernetes project currently lacks enough active contributors to adequately respond to all issues.
This bot triages un-triaged issues according to the following rules:
lifecycle/stale
is appliedlifecycle/stale
was applied, lifecycle/rotten
is appliedlifecycle/rotten
was applied, the issue is closedYou can:
/remove-lifecycle rotten
/close
Please send feedback to sig-contributor-experience at kubernetes/community.
/lifecycle rotten
The Kubernetes project currently lacks enough active contributors to adequately respond to all issues and PRs.
This bot triages issues according to the following rules:
lifecycle/stale
is appliedlifecycle/stale
was applied, lifecycle/rotten
is appliedlifecycle/rotten
was applied, the issue is closedYou can:
/reopen
/remove-lifecycle rotten
Please send feedback to sig-contributor-experience at kubernetes/community.
/close not-planned
@k8s-triage-robot: Closing this issue, marking it as "Not Planned".
/reopen
@jonathan-innis: Reopened this issue.
/remove-lifecycle rotten
This issue is currently awaiting triage.
If Karpenter contributors determines this is a relevant issue, they will accept it by applying the triage/accepted
label and provide further guidance.
The triage/accepted
label can be added by org members by writing /triage accepted
in a comment.
The Kubernetes project currently lacks enough contributors to adequately respond to all issues.
This bot triages un-triaged issues according to the following rules:
lifecycle/stale
is appliedlifecycle/stale
was applied, lifecycle/rotten
is appliedlifecycle/rotten
was applied, the issue is closedYou can:
/remove-lifecycle stale
/close
Please send feedback to sig-contributor-experience at kubernetes/community.
/lifecycle stale
The Kubernetes project currently lacks enough active contributors to adequately respond to all issues.
This bot triages un-triaged issues according to the following rules:
lifecycle/stale
is appliedlifecycle/stale
was applied, lifecycle/rotten
is appliedlifecycle/rotten
was applied, the issue is closedYou can:
/remove-lifecycle rotten
/close
Please send feedback to sig-contributor-experience at kubernetes/community.
/lifecycle rotten
Tell us about your request
Would be great if Karpenter treated pods with the
cluster-autoscaler.kubernetes.io/safe-to-evict
annotation as the same as thekarpenter.sh/do-not-evict
annotation.Basically,
cluster-autoscaler.kubernetes.io/safe-to-evict: "false"
is equivalent tokarpenter.sh/do-not-evict: "true"
Tell us about the problem you're trying to solve. What are you trying to do, and why is it hard?
This would help teams migrate from CAS to Karpenter w/o requiring re-config.
The other wrinkle here is it's not possible to write a generic OPA assign metadata mutator to add the
karpenter.sh/do-not-evict
annotation b/c you can't find pods by annotation (only by label).Are you currently working around this issue?
We use OPA assign metadata mutators but have to know all the possible label selectors to find pods in our clusters with the
cluster-autoscaler.kubernetes.io/safe-to-evict: "false"
annotation.Additional Context
No response
Attachments
No response
Community Note