kubernetes/kops · error
error creating Disk: %v
Error message
error creating Disk: %v
What it means
Wrapped error from Disk.RenderGCE when the synchronous Disks.Insert call fails for a new disk (a == nil). GCE rejected the create request — typical causes are invalid disk type/size, zone issues, quota, or name conflicts.
Source
Thrown at upup/pkg/fi/cloudup/gcetasks/disk.go:135
*e.VolumeType)
disk := &compute.Disk{
Name: *e.Name,
SizeGb: *e.SizeGB,
Type: typeURL,
}
if e.VolumeIops != nil {
disk.ProvisionedIops = *e.VolumeIops
}
if e.VolumeThroughput != nil {
disk.ProvisionedThroughput = *e.VolumeThroughput
}
if a == nil {
op, err := cloud.Compute().Disks().Insert(t.Cloud.Project(), *e.Zone, disk)
if err != nil {
return fmt.Errorf("error creating Disk: %v", err)
}
err = cloud.WaitForOp(op)
if err != nil {
return fmt.Errorf("error during Disk creation: %v", err)
}
}
if changes.Labels != nil {
d, err := cloud.Compute().Disks().Get(t.Cloud.Project(), *e.Zone, disk.Name)
if err != nil {
return fmt.Errorf("error reading created Disk: %v", err)
}
labelsRequest := &compute.ZoneSetLabelsRequest{
LabelFingerprint: d.LabelFingerprint,
Labels: make(map[string]string),
}
// Danger: labels replace tags on instances; but thankfully volumes don't have tagsView on GitHub (pinned to 4c8573c808)
Solutions
- Check the wrapped error for the exact rejection reason
- Verify the disk type exists in the target zone and size/iops/throughput values are valid for that type
- Clear quota or naming conflicts, then re-run the apply
Defensive patterns
Strategy: try-catch
When it happens
Trigger: Thrown at upup/pkg/fi/cloudup/gcetasks/disk.go:135 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/344e7b734e018e99.
Report an issue: GitHub.