kubernetes/kops · error
error creating PersistentVolume: %v
Error message
error creating PersistentVolume: %v
What it means
The Cinder volume create for the PersistentVolume task failed. The wrapped error identifies the rejection; common causes are quota exhaustion, invalid size or volume type, or AZ unavailability.
Source
Thrown at upup/pkg/fi/cloudup/openstacktasks/volume.go:142
if a == nil {
klog.V(2).Infof("Creating PersistentVolume with Name:%q", fi.ValueOf(e.Name))
storageAZ, err := t.Cloud.GetStorageAZFromCompute(fi.ValueOf(e.AvailabilityZone))
if err != nil {
return fmt.Errorf("Failed to get storage availability zone: %s", err)
}
opt := cinderv3.CreateOpts{
Size: int(*e.SizeGB),
AvailabilityZone: storageAZ.ZoneName,
Metadata: e.Tags,
Name: fi.ValueOf(e.Name),
VolumeType: fi.ValueOf(e.VolumeType),
}
v, err := t.Cloud.CreateVolume(opt)
if err != nil {
return fmt.Errorf("error creating PersistentVolume: %v", err)
}
e.ID = new(v.ID)
e.AvailabilityZone = new(v.AvailabilityZone)
return nil
}
if changes != nil && changes.Tags != nil {
klog.V(2).Infof("Update the tags on volume %q: %v, the differences are %v", fi.ValueOf(e.ID), e.Tags, changes.Tags)
err := t.Cloud.SetVolumeTags(fi.ValueOf(e.ID), e.Tags)
if err != nil {
return fmt.Errorf("error updating the tags on volume %q: %v", fi.ValueOf(e.ID), err)
}
}
klog.V(2).Infof("Openstack task Volume::RenderOpenstack did nothing")
return nilView on GitHub (pinned to 4c8573c808)
Solutions
- Inspect the wrapped Cinder error
- Check volume quotas, size, type and AZ
- Fix the configuration and retry
Defensive patterns
Strategy: retry
When it happens
Trigger: Thrown at upup/pkg/fi/cloudup/openstacktasks/volume.go:142 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/20ff1fc4a4bf0b47.
Report an issue: GitHub.