-
Notifications
You must be signed in to change notification settings - Fork 4.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Creation of additional storage classes with dynamic volume provisioning: impossible or documentation lacking? #11947
Comments
@victor-sudakov in general, adding a new storage class to minikube is the same process as for regular kubernetes cluster. I guess, there's some specific for some SCs, related to minikube internal environment. If you have any issues, please feel free to report it here.
|
@ilya-zuyev I have a question. What is with this |
OK, I have created a SC like you advised
The storage class is there
but my PVCs using that storage class are in the Pending state with the message "waiting for a volume to be created, either by external provisioner "k8s.io/no-provisioner" or manually created by system administrator" Obviously I'm doing something wrong, or your advice is incomplete? |
Maybe it's useful to provide the complete output:
|
If I create a storage class with
Then PVCs fail with the failed to get target node: nodes "minikube" is forbidden: User "system:serviceaccount:kube-system:storage-provisioner" cannot get resource "nodes" in API group "" at the cluster scope error:
|
I have actually found a workaround. I've created many PVs, and several SCs named "gp2", "gp3" referring to those static PVs. So now I can use those SCs for testing purposes. But why cannot I have those PVs created dynamically for me by Minikube's dynamic storage controller? |
Attached |
So, how can I make non-default SCs use the minikube-hostpath provisioner (in order to allocate PVs dynamically)? |
@victor-sudakov tthanks for providing your experience and sharing the work arround ! this could be a tutorial on our website I would accept a PR to add it to our website and if you want you could make minikube storage provisioneer configurable @victor-sudakov the storage provisioner is implemented as an addon itself so you should be able to disable the default one
does that help ? |
/triage needs-information |
Actually, the bundled storage provisioner is a very nice thing to have, I don't want to disable it, I would prefer for it to support arbitrary storage classes transparently. |
Yeah this just isn't something our storage-provisioner/default-storageclass addons support currently, but there is no theoretical reason why we couldn't. We would happily accept a PR that does this. |
I'm afraid I'm not qualified enough to offer a PR for the issue. Thanks for the response that this is currently technically not possible and not a misconfiguration on my part. Shall we close the issue? |
I'd like to contribute, but I need someone with enough knowledge to point me to the right direction. Thanks! |
@victor-sudakov there is a PR that says could fix this here is the link to the binary from a PR that I think might fix this issue, do you mind trying it out ? #12797 do u mind trying the binary of that PR and see if that fixes the issue? http://storage.googleapis.com/minikube-builds/12797/minikube-linux-amd64 |
@medyagh Yes, with that minikube binary my test case (see above) is now working and pod running:
|
The Kubernetes project currently lacks enough contributors to adequately respond to all issues and PRs. This bot triages issues and PRs according to the following rules:
You can:
Please send feedback to sig-contributor-experience at kubernetes/community. /lifecycle stale |
/remove-lifecycle stale |
+1 from me. |
The Kubernetes project currently lacks enough contributors to adequately respond to all issues and PRs. This bot triages issues and PRs according to the following rules:
You can:
Please send feedback to sig-contributor-experience at kubernetes/community. /lifecycle stale |
/remove-lifecycle stale |
The Kubernetes project currently lacks enough contributors to adequately respond to all issues and PRs. This bot triages issues and PRs according to the following rules:
You can:
Please send feedback to sig-contributor-experience at kubernetes/community. /lifecycle stale |
The Kubernetes project currently lacks enough active contributors to adequately respond to all issues and PRs. This bot triages issues and PRs according to the following rules:
You can:
Please send feedback to sig-contributor-experience at kubernetes/community. /lifecycle rotten |
/remove-lifecycle rotten |
The Kubernetes project currently lacks enough contributors to adequately respond to all PRs. This bot triages PRs according to the following rules:
You can:
Please send feedback to sig-contributor-experience at kubernetes/community. /lifecycle stale |
I had the same issue/experience. Ultimately, here is what ended up working:
It seems like the |
To fix the
This will add a new |
Running minikube version: v1.20.0, commit: c61663e
There is only one storage class created when starting a minikube:
Dynamic Provisioning in this storage class works fine.
I would like to add more storage classes with dynamic volume provisioning, so that I could test my PersistentVolumeClaim manifests (written for EKS) on Minikube without modifications. These storage classes need not be different physically or programmatically from the standard Minikube sc, but I need to test manifests for other clusters without modifications. Those manifests have different "storageClassName" attributes, like "gp3", "sc1" etc.
If the creation of additional storage classes with dynamic volume provisioning is possible, I cannot find it anywhere if it's documented for Minikube.
The text was updated successfully, but these errors were encountered: