kubernetes/kops · error
instance group deletion is not yet implemented for Akamai (L
Error message
instance group deletion is not yet implemented for Akamai (Linode)
What it means
Cloud.DeleteGroup for the Akamai (Linode) provider is unimplemented: kOps cannot delete a Linode instance group (NodeBalancer/Linode group backing) via this interface, so every call returns this 'not yet implemented' error.
Source
Thrown at upup/pkg/fi/cloudup/linode/cloud.go:143
return fmt.Errorf("error parsing Akamai (Linode) instance ID %q: %w", instance.ID, err)
}
if err := c.client.DeleteInstance(context.Background(), instanceID); err != nil {
if linodego.IsNotFound(err) {
return nil
}
return fmt.Errorf("error deleting Akamai (Linode) instance %q: %w", instance.ID, err)
}
return nil
}
func (c *Cloud) DeregisterInstance(instance *cloudinstances.CloudInstance) error {
return nil
}
func (c *Cloud) DeleteGroup(group *cloudinstances.CloudInstanceGroup) error {
return fmt.Errorf("instance group deletion is not yet implemented for Akamai (Linode)")
}
func (c *Cloud) DetachInstance(instance *cloudinstances.CloudInstance) error {
return fmt.Errorf("instance detach is not yet implemented for Akamai (Linode)")
}
func (c *Cloud) GetCloudGroups(cluster *kops.Cluster, instancegroups []*kops.InstanceGroup, warnUnmatched bool, nodes []v1.Node) (map[string]*cloudinstances.CloudInstanceGroup, error) {
return map[string]*cloudinstances.CloudInstanceGroup{}, nil
}
func (c *Cloud) Region() string {
return c.region
}
func (c *Cloud) FindClusterStatus(cluster *kops.Cluster) (*kops.ClusterStatus, error) {
return &kops.ClusterStatus{}, nil
}
View on GitHub (pinned to 4c8573c808)
Solutions
- Delete the underlying Linodes/instance group manually in the Akamai Cloud Manager, then update the kops instance group to match.
- Drain and remove instances individually (DeleteInstance works) instead of relying on group deletion.
- Avoid group-shrinking rolling-update flags for Linode until upstream implements DeleteGroup.
Defensive patterns
Strategy: fallback
Validate before calling
// skip group deletion for Linode:
if provider == kops.CloudProviderLinode {
log.Printf("deleting Linode instance groups manually is required")
} Try / catch
if err := cloud.DeleteGroup(g); err != nil && strings.Contains(err.Error(), "not yet implemented for Akamai") {
// fall back to manual deletion / per-instance DeleteInstance
} Prevention
- Plan instance-group removal on Linode as a manual console operation
- Scale down via per-instance deletion rather than group deletion
- Review kops provider capability docs before automating group lifecycle
When it happens
Trigger: Rolling update with --cloud linode that needs to shrink/remove an instance group, or `kops delete instancegroup` flows that ask the cloud to delete the backing group.
Common situations: Users scaling down or removing machine pools on Linode clusters and expecting automated group deletion during rolling updates.
Related errors
- DNS is not yet implemented for Akamai (Linode)
- instance detach is not yet implemented for Akamai (Linode)
- InstanceGroupVFS Watch not implemented for vfs store
- InstanceGroupVFS Patch not implemented for vfs store
- expected exactly one subnet for InstanceGroup %q; subnets wa
AI-assisted analysis of kubernetes/kops@4c8573c808 (2026-09-05).
Data as JSON: /api/errors/da72fa434db5198a.
Report an issue: GitHub.