kubernetes/kops · error
delete server %s: getting infos for volume %s
Error message
delete server %s: getting infos for volume %s
What it means
In DeleteServer, while detaching etcd volumes before terminating, the GetVolume call for one of the server's volumes failed. Note this error message omits the underlying error (%w is not used), so the SDK cause is lost — only the server and volume IDs are reported.
Source
Thrown at upup/pkg/fi/cloudup/scaleway/cloud.go:611
Zone: s.zone,
ServerID: server.ID,
})
if err != nil {
if is404Error(err) {
klog.V(4).Infof("delete server %s: instance %q was already deleted", server.ID, server.Name)
return nil
}
return err
}
// We detach the etcd volumes
for _, volume := range srv.Server.Volumes {
volumeResponse, err := s.instanceAPI.GetVolume(&instance.GetVolumeRequest{
Zone: s.zone,
VolumeID: volume.ID,
})
if err != nil {
return fmt.Errorf("delete server %s: getting infos for volume %s", server.ID, volume.ID)
}
for _, tag := range volumeResponse.Volume.Tags {
if strings.HasPrefix(tag, TagNameEtcdClusterPrefix) {
_, err = s.instanceAPI.DetachVolume(&instance.DetachVolumeRequest{
Zone: s.zone,
VolumeID: volume.ID,
})
if err != nil {
return fmt.Errorf("delete server %s: detaching volume %s", server.ID, volume.ID)
}
}
}
}
// We terminate the server. This stops and deletes the machine immediately
_, err = s.instanceAPI.ServerAction(&instance.ServerActionRequest{
Zone: s.zone,
ServerID: server.ID,View on GitHub (pinned to 4c8573c808)
Solutions
- Check the volume exists in the Scaleway console using the logged volume ID
- Verify IAM permissions for volume reads
- Re-run deletion after investigating manually, since the cause is not wrapped
Defensive patterns
Strategy: try-catch
When it happens
Trigger: Thrown at upup/pkg/fi/cloudup/scaleway/cloud.go:611 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/94925d2d44d48963.
Report an issue: GitHub.