3

I am facing issues with Dynamic Storage provisioner. I have created storage class (edited)

kubectl get sc
NAME                 PROVISIONER             AGE
slow                 kubernetes.io/aws-ebs   12m
standard (default)   kubernetes.io/aws-ebs   14m

when i create a pvc referring to one of the storage classes, it fails

kubectl describe pvc mypvc
Name:          mypvc
Namespace:     default
StorageClass:  slow
Status:        Pending
Volume:
Labels:        <none>
Annotations:   <none>
Finalizers:    []
Capacity:
Access Modes:
Events:
Type     Reason              Age   From                         Message
----     ------              ----  ----                         -------
Warning  ProvisioningFailed  8s    persistentvolume-controller  
storageclass.storage.k8s.io "slow" not found

Any idea why it fails with

storageclass.storage.k8s.io "slow" not found

Here is the describe of slow sc

apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  creationTimestamp: 2018-04-27T22:19:49Z
  name: slow
  resourceVersion: "665900"
  selfLink: /apis/storage.k8s.io/v1/storageclasses/slow
  uid: 19ab37b5-4a69-11e8-8f68-021e47d98090
parameters:
  fsType: ext4
  iopsPerGB: "10"
  type: io1
provisioner: kubernetes.io/aws-ebs
reclaimPolicy: Delete
Prashant
  • 73
  • 1
  • 1
  • 6
  • Can you update your question with `kubectl get -o yaml sc slow`; my hypothesis is that `slow` might be in a different `apiVersion` from `storageclass.storage.k8s.io` – mdaniel May 01 '18 at 04:34
  • `kubectl get sc slow -o yaml apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: creationTimestamp: 2018-04-27T22:19:49Z name: slow resourceVersion: "665900" selfLink: /apis/storage.k8s.io/v1/storageclasses/slow uid: 19ab37b5-4a69-11e8-8f68-021e47d98090 parameters: fsType: ext4 iopsPerGB: "10" type: io1 provisioner: kubernetes.io/aws-ebs reclaimPolicy: Delete` – Prashant May 01 '18 at 18:56
  • @MatthewLDaniel Updated the question with the `get -o yaml` for slow storageclass – Prashant May 01 '18 at 19:07
  • Do you have [`DefaultStorageClass`](https://kubernetes.io/docs/concepts/storage/persistent-volumes/#dynamic) in the `--enable-admission-plugins` for your apiservers? – mdaniel May 02 '18 at 06:09
  • @MatthewLDaniel Yes, i have it enabled. `--admission-control=DefaultStorageClass,NamespaceLifecycle,LimitRanger,ServiceAccount,ResourceQuota,PodPreset,Initializers,MutatingAdmissionWebhook,ValidatingAdmissionWebhook` – Prashant May 03 '18 at 17:58

1 Answers1

2

ok. I found the answer. I didnt enable the storage api as part of runtimeconfigs for apiserver

--runtime-config=storage.k8s.io/v1=true

Adding the above line solved the issue

Prashant
  • 73
  • 1
  • 1
  • 6