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

Better logging for hitting provisioner memory limit #3426

Closed
bwmetcalf opened this issue Feb 20, 2023 · 2 comments
Closed

Better logging for hitting provisioner memory limit #3426

bwmetcalf opened this issue Feb 20, 2023 · 2 comments
Labels
chore Issues that are refactors or code cleanup tasks v1 Issues requiring resolution by the v1 milestone

Comments

@bwmetcalf
Copy link

Version

Karpenter Version: v0.22.1
Kubernetes Version: v1.24.0

This is similar to #3267. The log message karpenter generates when it fails to launch a node due to hitting a provisioner memory limit is (masking provisioner names for security):

Could not schedule pod, incompatible with provisioner "*****-provisioner", did not tolerate ******-dedicated=:NoSchedule; incompatible with provisioner "karpenter-provisioner", incompatible requirements, label "********-dedicated" does not have known values; incompatible with provisioner "**********-provisioner", no instance type satisfied resources {"cpu":"1","memory":"50Gi","pods":"1"} and requirements kubernetes.io/arch In [amd64], karpenter.sh/capacity-type In [on-demand spot], node.kubernetes.io/instance-type In [m5.2xlarge m5.4xlarge m5.large m5.xlarge], kubernetes.io/os In [linux], karpenter.sh/provisioner-name In [*******-provisioner], node.umbra.space/exclude-from-external-load-balancers In [true], *******-dedicated In [true] {"commit": "c4a4efd-dirty", "pod": "********/**********"}

Karpenter used to log using the following line of code which was much clearer in this situation: https://github.com/aws/karpenter-core/blob/0613466c72cfbc836d0df4c0f2bb54c790358978/pkg/apis/v1alpha5/limits.go#L36

Expected Behavior

Karpenter should use a clearer error message when hitting provisioner limits.

Actual Behavior

Karpenter logs an ambiguous error message.

Steps to Reproduce the Problem

Cause karpenter fail to provision a node due to memory limits.

Resource Specs and Logs

See about for logs.

Community Note

  • 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
@bwmetcalf bwmetcalf added the bug Something isn't working label Feb 20, 2023
@sourcedelica
Copy link

I recently ran into a similar issue where the problem was the instance type that was needed was currently not available in the region. The log message was basically the same as the one in this issue - very generic. I had to manually try to launch an instance with that type to see what the real problem was. And like @bwmetcalf pointed out in that #3267, that one has the same problem.

@billrayburn billrayburn added v1 Issues requiring resolution by the v1 milestone chore Issues that are refactors or code cleanup tasks and removed bug Something isn't working labels Mar 29, 2023
@njtran
Copy link
Contributor

njtran commented May 31, 2023

This is similar to kubernetes-sigs/karpenter#744. Since this came first and has more discussion, I'll close this one out in favor of that.

@njtran njtran closed this as completed May 31, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
chore Issues that are refactors or code cleanup tasks v1 Issues requiring resolution by the v1 milestone
Projects
None yet
Development

No branches or pull requests

4 participants