kubernetes/kops · error
network load balancers do not support modifying address sett
Error message
network load balancers do not support modifying address settings
What it means
The AllocationID/PrivateIPv4Address of an existing NLB subnet mapping differs from the expected value; NLB address settings cannot be modified in place, so kOps refuses the diff rather than emitting an unappliable change.
Source
Thrown at upup/pkg/fi/cloudup/awstasks/network_load_balancer.go:463
} else if s.PrivateIPv4Address != nil {
expectedSubnets[subnetID] = s.PrivateIPv4Address
} else {
expectedSubnets[subnetID] = nil
}
}
for _, s := range a.SubnetMappings {
subnetID := fi.ValueOf(s.Subnet.ID)
if subnetID == "" {
return fmt.Errorf("Subnet ID is required for subnet name=%v", fi.ValueOf(s.Subnet.Name))
}
eIP, ok := expectedSubnets[subnetID]
if !ok {
return fmt.Errorf("network load balancers do not support detaching subnets")
}
if fi.ValueOf(eIP) != fi.ValueOf(s.PrivateIPv4Address) || fi.ValueOf(eIP) != fi.ValueOf(s.AllocationID) {
return fmt.Errorf("network load balancers do not support modifying address settings")
}
}
}
}
return nil
}
func (_ *NetworkLoadBalancer) RenderAWS(t *awsup.AWSAPITarget, a, e, changes *NetworkLoadBalancer) error {
ctx := context.TODO()
loadBalancerArn := ""
revision := e.revision
tags := maps.Clone(e.Tags)
if tags == nil {
tags = make(map[string]string)
}View on GitHub (pinned to 4c8573c808)
Solutions
- Align the spec's subnet-mapping addresses with the existing NLB, or recreate the NLB with the new addresses
- Detach and re-attach the ElasticIP in AWS manually, then re-run to converge
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at upup/pkg/fi/cloudup/awstasks/network_load_balancer.go:463 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/21b43c4c7aa75066.
Report an issue: GitHub.