kubernetes/kops · error
error getting ingress status: %v
Error message
error getting ingress status: %v
What it means
Describing the load balancer (ingress) status to discover the API endpoint failed while building kubeconfig; a cloud API error (permissions, throttling, or the LB not yet existing) for the cluster's ELB/NLB.
Source
Thrown at pkg/kubeconfig/create_kubecfg.go:105
var server string
if options.OverrideAPIServer != "" {
server = options.OverrideAPIServer
} else if options.Internal {
server = "https://" + cluster.APIInternalName()
} else {
if cluster.Spec.API.PublicName != "" {
server = "https://" + wrapIPv6Address(cluster.Spec.API.PublicName)
} else {
server = "https://api." + clusterName
}
// If a load balancer exists we use it, except for when an SSL certificate is set.
// This should avoid a lot of pain with DNS pre-creation.
if cluster.Spec.API.LoadBalancer != nil && (cluster.Spec.API.LoadBalancer.SSLCertificate == "" || options.Admin != 0) {
ingresses, err := cloud.GetApiIngressStatus(cluster)
if err != nil {
return nil, fmt.Errorf("error getting ingress status: %v", err)
}
var targets []string
for _, useInternalEndpoint := range []bool{false, true} {
for _, ingress := range ingresses {
if !useInternalEndpoint && ingress.InternalEndpoint {
continue
}
if ingress.Hostname != "" {
targets = append(targets, ingress.Hostname)
}
if ingress.IP != "" {
targets = append(targets, ingress.IP)
}
}
if len(targets) > 0 {
// Prefer external addressesView on GitHub (pinned to 4c8573c808)
Solutions
- Verify cloud credentials can describe load balancers
- Check for cloud API throttling and retry
- Use the --api-server override or wait for the LB if the cluster is mid-create
Defensive patterns
Strategy: retry
When it happens
Trigger: Thrown at pkg/kubeconfig/create_kubecfg.go:105 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/c4cf7aa15ddc34d8.
Report an issue: GitHub.