Skip to content

Controller "error retrieving resource lock karpenter/karpenter-leader-election" #8843

@Fran-Rg

Description

@Fran-Rg

Description

Observed Behavior:
Controller keeps restarting with a panic crash. The panic is related to the management of the karpenter-leader-election lease:

{"level":"INFO","time":"2026-01-14T10:31:20.376Z","logger":"controller","message":"attempting to acquire leader lease karpenter/karpenter-leader-election...","commit":"f15a737"}
{"level":"INFO","time":"2026-01-14T10:31:35.638Z","logger":"controller","message":"successfully acquired lease karpenter/karpenter-leader-election","commit":"f15a737"}
...
later
...
{"level":"ERROR","time":"2026-01-14T10:32:28.778Z","logger":"controller","message":"Failed to update lock optimistically: Put \"https://172.20.0.1:443/apis/coordination.k8s.io/v1/namespaces/karpenter/leases/karpenter-leader-election?timeout=5s\": net/http: request canceled (Client.Timeout exceeded while awaiting headers), falling back to slow path","commit":"f15a737"}
{"level":"ERROR","time":"2026-01-14T10:32:37.534Z","logger":"controller","message":"error retrieving resource lock karpenter/karpenter-leader-election: context deadline exceeded","commit":"f15a737"}
{"level":"INFO","time":"2026-01-14T10:32:37.535Z","logger":"controller","message":"failed to renew lease karpenter/karpenter-leader-election: context deadline exceeded","commit":"f15a737"}
{"level":"ERROR","time":"2026-01-14T10:33:07.036Z","logger":"controller","message":"error retrieving resource lock karpenter/karpenter-leader-election: Get \"https://172.20.0.1:443/apis/coordination.k8s.io/v1/namespaces/karpenter/leases/karpenter-leader-election?timeout=5s\": context deadline exceeded (Client.Timeout exceeded while awaiting headers)","commit":"f15a737"}
{"level":"INFO","time":"2026-01-14T10:33:01.720Z","logger":"controller.controller-runtime.healthz","message":"healthz check failed","commit":"f15a737","statuses":[{},{},{}]}
{"level":"INFO","time":"2026-01-14T10:33:20.988Z","logger":"controller","message":"Stopping and waiting for non leader election runnables","commit":"f15a737"}
panic: leader election lost

goroutine 239 [running]:
github.com/samber/lo.must({0x1ae3e00, 0xc0134ae9e0}, {0x0, 0x0, 0x0})
	github.com/samber/lo@v1.51.0/errors.go:55 +0x1df
github.com/samber/lo.Must0(...)
	github.com/samber/lo@v1.51.0/errors.go:74
sigs.k8s.io/karpenter/pkg/operator.(*Operator).Start.func1()
	sigs.k8s.io/karpenter@v1.8.1/pkg/operator/operator.go:246 +0x75
created by sigs.k8s.io/karpenter/pkg/operator.(*Operator).Start in goroutine 1
	sigs.k8s.io/karpenter@v1.8.1/pkg/operator/operator.go:244 +0xa5

Expected Behavior:
Lock management doesn't cause panic

Reproduction Steps (Please include YAML):
Unsure, installed karpenter-crd and karpenter both on 1.8.4. Some of my managers are fine but 1 isn't.

I checked:

> kubectl -n karpenter get lease
NAME                        HOLDER                                                            AGE
karpenter-leader-election   karpenter-666f7d78f6-2bn26_0002b9e8-4ba3-4105-a553-fe691db3451f   17h

Then deleted the lease and restarted karpenter, a new lease got created:

> kubectl -n karpenter get lease
NAME                        HOLDER                                                            AGE
karpenter-leader-election   karpenter-666f7d78f6-2bn26_f70fc46d-2cba-4acf-af3b-5d2bb5cb3061   78s

Then same crash happened.

Versions:

  • Chart Version: 1.8.4
  • Kubernetes Version (kubectl version): v1.34.1-eks-3025e55
  • 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

Metadata

Metadata

Assignees

No one assigned

    Labels

    lifecycle/stalequestionIssues that are support related questionstriage/solvedMark the issue as solved by a Karpenter maintainer. This gives time for the issue author to confirm.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions