[root@vm-10-75-145-71 ~]# kubectl describe pvc datadir-belk-efkc-belk-elasticsearch-data-1 -nheema
Name: datadir-belk-efkc-belk-elasticsearch-data-1
Namespace: heema
StorageClass: cinder-az-nova
Status: Pending
Volume:
Labels: component=elasticsearch
release=belk-efkc
role=data
Annotations: volume.beta.kubernetes.io/storage-provisioner=kubernetes.io/cinder
Finalizers: [kubernetes.io/pvc-protection]
Capacity:
Access Modes:
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
>Warning ProvisioningFailed 4m (x3261 over 13h) persistentvolume-controller Failed to provision volume with StorageClass "cinder-az-nova": failed to create a 50 GB volume: Invalid request due to incorrect syntax or missing required parameters.
yml file is like this:
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: pvc001
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 2Gi
storageClassName: cinder-az-nova
This yml file will create an pending pvc with the same Exception.
It might be a completely different reason but try checking your "availability" parameter. Through a kubespray installation you will get a default storage template that uses availability=nova. Your openstack provider might name the zones differently. In my case the zones were "eu-de-01/2"