-
Notifications
You must be signed in to change notification settings - Fork 652
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
Support CSI ephemeral volumes #2985
Comments
Hi, just as a comment, there is another ephemeral volume type called "Generic Ephemeral Volumes" that essentially gives the capability of creating ephemeral volumes to any CSI driver capable of managing PVs and PVCs. This is documented in https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/#generic-ephemeral-volumes (Beta since v1.19). The main reason why this is very interesting is because it seems that the official aws-csi-ebs-driver will only support this approach for ephemeral volumes (or at least it is what the comments in that issue suggest) Is there any chance that this will be supported in Nextflow even although it breaks a bit with the PVC approach (it requires to use the so called PVC templates) |
@kanor1306 So you can provision an ephemeral CSI volume with this approach? If yes then maybe it would be better for Nextflow to use, otherwise we should consider it in a separate issue. |
@bentsherman Well, it is an ephemeral volume, but not an ephemeral CSI volume. My understanding is that the approach described in https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/#csi-ephemeral-volumes that is also what is being implemented here is meant to be used with drivers that fully adhere to the CSI specification. Like this:
The problem (and I am assuming that this is something the Kubernetes developers realized at some point) is that out there there are many drivers that only adhere partially to the CSI specification, and some of them don't support the standard approach to ephemeral volumes, most notably the
All this to say that you are right and this is probably for a different issue! |
Nextflow currently uses PersistentVolumeClaim to use any kind of persistent volume in a generic way, which is good.
However, there are also several types of ephemeral volumes:
Of these, Nextflow currently supports configMaps and secrets.
env
/fieldPath
which Nextflow supportsThese types of volumes don't fit in with the standard PVC model that Nextflow relies on, because you can't define them elsewhere and them reference them generically in the pod -- they're ephemeral! It only makes sense to define them in the pod itself. Therefore, Nextflow is already using the correct model with configMap and secret, and I think we should continue that pattern for the other ephemeral types. The most urgent one to add is
csi
, but I would supportemptyDir
as well. I will draft a PR forcsi
when I have some time.The text was updated successfully, but these errors were encountered: