kubernetes/kops · error
load balancer not ready (no ARN)
Error message
load balancer not ready (no ARN)
What it means
TargetGroup.Find found a matching target group but the in-memory NLB task has an empty loadBalancerArn — the network load balancer has not yet been created/registered in this run, so the target group cannot be compared or linked yet.
Source
Thrown at upup/pkg/fi/cloudup/awstasks/targetgroup.go:145
n, err := strconv.Atoi(revisionTag)
if err != nil {
klog.Warningf("ignoring target group %q with revision %d", targetGroup.ARN, revision)
continue
}
revision = n
}
if latest == nil || revision > latestRevision {
latestRevision = revision
latest = targetGroup
}
}
if latest != nil && e.networkLoadBalancer != nil {
matchRevision := e.networkLoadBalancer.revision
arn := e.networkLoadBalancer.loadBalancerArn
if arn == "" {
return nil, fmt.Errorf("load balancer not ready (no ARN)")
}
revisionTag, _ := latest.GetTag(awsup.KopsResourceRevisionTag)
if revisionTag != matchRevision {
klog.Warningf("found target group but revision %q does not match load balancer revision %q; will create a new target group", revisionTag, matchRevision)
latest = nil
}
}
// Record deletions for later
for _, targetGroup := range targetGroups {
if aws.ToString(targetGroup.TargetGroup.TargetGroupName) != name && targetGroup.NameTag() != name {
continue
}
if latest != nil && latest.ARN == targetGroup.ARN {
continue
}
View on GitHub (pinned to 4c8573c808)
Solutions
- Run `kops update cluster` so the NLB is created before target groups are reconciled
- Re-run the apply; task ordering usually resolves the ARN in the next pass
Defensive patterns
Strategy: retry
When it happens
Trigger: Thrown at upup/pkg/fi/cloudup/awstasks/targetgroup.go:145 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of kubernetes/kops@4c8573c808 (2026-09-05).
Data as JSON: /api/errors/69a558ec16d57a9d.
Report an issue: GitHub.