The secret reference declared in an ephemeral inline volume can only be used with namespaces from pods where it is referenced.
--
You received this message because you are subscribed to the Google Groups "container-storage-interface-community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interf...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/container-storage-interface-community/00ca8f90-6564-485c-828e-74791d237bb1%40googlegroups.com.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interface-community+unsubscribe@googlegroups.com.
The downside here is that we have to redeploy our bits every time the secret changes.
Or worse yet, if we have multiple arrays with different secrets we have to pass all of them in during startup.
And we have to "know" which one to use each time. That's not so dynamic.
On Monday, August 19, 2019 at 2:01:09 PM UTC-4, Saad Ali wrote:
George,The NodePublishSecretRef is intended for "per CSI operation" or "per volume" which make sense to limit to the users namespace.If a CSI Driver (ephemeral or persistent) requires a secret for a backend (a service account, for example), and this secret is required at the "per driver" granularity (not "per CSI operation" or "per volume"), then the secret can (and should) be injected directly in to CSI driver pods via standard Kubernetes secret distribution mechanisms during deployment. So, you could have a secret in some admin controlled namespace, and when you deploy the CSI driver it can have the secret injected as an env variable or file (you just need to ensure the driver is deployed with the correct permissions to read that secret).Regards,Saad Ali
On Mon, Aug 19, 2019 at 8:39 AM George Costea <rgco...@gmail.com> wrote:
Hi all,--Reading through the CSI inline volume proposal (https://github.com/kubernetes/enhancements/blob/master/keps/sig-storage/20190122-csi-inline-volumes.md), there's a Secret Reference section that states the following:The secret reference declared in an ephemeral inline volume can only be used with namespaces from pods where it is referenced.This would imply that the secret needs to be visible to the user that is creating the pod. The user would be able to read any secret within the namespace the pod is created in after all. What if the admin doesn't necessarily want to provide the secret to the user? Can we enhance the proposal to also require the secret namespace? This way the admin can create the secret in kube-system (for example) and just provide a reference to it to the user creating the pod.Thanks,George
You received this message because you are subscribed to the Google Groups "container-storage-interface-community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interf...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/container-storage-interface-community/00ca8f90-6564-485c-828e-74791d237bb1%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "container-storage-interface-community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interf...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/container-storage-interface-community/dfb8bf2c-a383-4350-a5a2-c623f260a6c1%40googlegroups.com.
If you have multiple storage arrays, I recommend injecting the credential for each array the CSI driver will support at driver deployment time, and then in the StorageClasses for the driver, cluster admin can pick which array to use. Based on the selected array, the driver should use the correct injected secret.
What does dynamic mean here? Does it mean automatic discovery of a new storage array? Does it mean automatic provisioning of a new storage array?
Inline.
On Mon, Aug 19, 2019 at 11:22 AM George Costea <rgco...@gmail.com> wrote:The downside here is that we have to redeploy our bits every time the secret changes.You shouldn't have to redeploy your CSI driver to pick up new secrets. As long as you design you driver to handle secret updates. For example, if you inject the secret as a file, k8s will automatically update the content of the file when the secret changes, if your driver can handle this, it doesn't need a redeployment for credential change.Or worse yet, if we have multiple arrays with different secrets we have to pass all of them in during startup.If you have multiple storage arrays, I recommend injecting the credential for each array the CSI driver will support at driver deployment time, and then in the StorageClasses for the driver, cluster admin can pick which array to use. Based on the selected array, the driver should use the correct injected secret.And we have to "know" which one to use each time. That's not so dynamic.What does dynamic mean here? Does it mean automatic discovery of a new storage array? Does it mean automatic provisioning of a new storage array?
On Monday, August 19, 2019 at 2:01:09 PM UTC-4, Saad Ali wrote:
George,The NodePublishSecretRef is intended for "per CSI operation" or "per volume" which make sense to limit to the users namespace.If a CSI Driver (ephemeral or persistent) requires a secret for a backend (a service account, for example), and this secret is required at the "per driver" granularity (not "per CSI operation" or "per volume"), then the secret can (and should) be injected directly in to CSI driver pods via standard Kubernetes secret distribution mechanisms during deployment. So, you could have a secret in some admin controlled namespace, and when you deploy the CSI driver it can have the secret injected as an env variable or file (you just need to ensure the driver is deployed with the correct permissions to read that secret).Regards,Saad Ali
On Mon, Aug 19, 2019 at 8:39 AM George Costea <rgco...@gmail.com> wrote:
Hi all,--Reading through the CSI inline volume proposal (https://github.com/kubernetes/enhancements/blob/master/keps/sig-storage/20190122-csi-inline-volumes.md), there's a Secret Reference section that states the following:The secret reference declared in an ephemeral inline volume can only be used with namespaces from pods where it is referenced.This would imply that the secret needs to be visible to the user that is creating the pod. The user would be able to read any secret within the namespace the pod is created in after all. What if the admin doesn't necessarily want to provide the secret to the user? Can we enhance the proposal to also require the secret namespace? This way the admin can create the secret in kube-system (for example) and just provide a reference to it to the user creating the pod.Thanks,George
You received this message because you are subscribed to the Google Groups "container-storage-interface-community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interface-community+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/container-storage-interface-community/00ca8f90-6564-485c-828e-74791d237bb1%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "container-storage-interface-community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interface-community+unsubscribe@googlegroups.com.
So what if we add a second array later? Won't we have to redeploy our CSI driver to be aware of a second secret?
If you have multiple storage arrays, I recommend injecting the credential for each array the CSI driver will support at driver deployment time, and then in the StorageClasses for the driver, cluster admin can pick which array to use. Based on the selected array, the driver should use the correct injected secret.This works for normal PVC creation clearly. But not so much with the inline volume design. If we inject the credentials for each array, we still need to specify which credentials to use for an inline volume. Are you suggesting we specify that in the volume attributes of the pod specification?
Inline.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interf...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/container-storage-interface-community/00ca8f90-6564-485c-828e-74791d237bb1%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "container-storage-interface-community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interf...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/container-storage-interface-community/dfb8bf2c-a383-4350-a5a2-c623f260a6c1%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "container-storage-interface-community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interf...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/container-storage-interface-community/909d2783-1b4a-48ed-9755-784dbe915d9f%40googlegroups.com.
Yes, the user would select the storage array they want for an ephemeral volume via inline volumeAttributes.
Inline.
Inline.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interface-community+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/container-storage-interface-community/00ca8f90-6564-485c-828e-74791d237bb1%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "container-storage-interface-community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interface-community+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/container-storage-interface-community/dfb8bf2c-a383-4350-a5a2-c623f260a6c1%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "container-storage-interface-community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interface-community+unsubscribe@googlegroups.com.
Yes, the user would select the storage array they want for an ephemeral volume via inline volumeAttributes.This is essentially what we're looking for without all of the added complexity. The secret is a great place to keep the storage array details. When you deploy a new array, you can add a new secret, configure some new storage classes, then start using them without having to build a "discovery" mechanism into the CSI driver.
Inline.
Inline.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interf...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/container-storage-interface-community/00ca8f90-6564-485c-828e-74791d237bb1%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "container-storage-interface-community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interf...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/container-storage-interface-community/dfb8bf2c-a383-4350-a5a2-c623f260a6c1%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "container-storage-interface-community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interf...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/container-storage-interface-community/909d2783-1b4a-48ed-9755-784dbe915d9f%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "container-storage-interface-community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interf...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/container-storage-interface-community/28aba844-13a1-489b-aa8f-c6a3517cc1a8%40googlegroups.com.
Storing configuration storage array config info in a secret seems wrong.
It sounds like you do not want the end user to have to select the storage array (via inline volumeAttributes)?
Instead you want a cluster admin to set it somewhere "global"? And StorageClass would be a good place to specify it, but ephemeral volumes don't have StorageClass, so a "namespaced secret" for ephemeral inline volumes sounds like it would get you that? Is that accurate?
Inline.
Inline.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interface-community+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/container-storage-interface-community/00ca8f90-6564-485c-828e-74791d237bb1%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "container-storage-interface-community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interface-community+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/container-storage-interface-community/dfb8bf2c-a383-4350-a5a2-c623f260a6c1%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "container-storage-interface-community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interface-community+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/container-storage-interface-community/909d2783-1b4a-48ed-9755-784dbe915d9f%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "container-storage-interface-community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interface-community+unsubscribe@googlegroups.com.
Yes, the volume follows the life of the pod. It is created when the pod is created and deleted when the pod is deleted.Storing configuration storage array config info in a secret seems wrong.That seems to be the purpose of the secrets. The spec states "Secrets required by the plugin to complete volume create/delete/etc. operation". Why wouldn't we store username and password here?
It sounds like you do not want the end user to have to select the storage array (via inline volumeAttributes)?We do. We want the user to select the storage array indirectly by selecting the secret. This is one option. I'm sure there are others. We just noticed that NodePublishSecretRef is part of the Volume definition for the inline volume. We are just looking for a way to allow secrets configured by an admin to allow volume creation rather than having to expose the secret details to the user.
Inline.
Inline.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interf...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/container-storage-interface-community/00ca8f90-6564-485c-828e-74791d237bb1%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "container-storage-interface-community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interf...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/container-storage-interface-community/dfb8bf2c-a383-4350-a5a2-c623f260a6c1%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "container-storage-interface-community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interf...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/container-storage-interface-community/909d2783-1b4a-48ed-9755-784dbe915d9f%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "container-storage-interface-community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interf...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/container-storage-interface-community/28aba844-13a1-489b-aa8f-c6a3517cc1a8%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "container-storage-interface-community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interf...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/container-storage-interface-community/fb51d942-e029-46a8-b82d-90886443c14e%40googlegroups.com.
The logical result of that is a user could point to any secret, in any namespace, and have that secret passed to a CSI Driver.
Inline.
Inline.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interface-community+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/container-storage-interface-community/00ca8f90-6564-485c-828e-74791d237bb1%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "container-storage-interface-community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interface-community+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/container-storage-interface-community/dfb8bf2c-a383-4350-a5a2-c623f260a6c1%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "container-storage-interface-community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interface-community+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/container-storage-interface-community/909d2783-1b4a-48ed-9755-784dbe915d9f%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "container-storage-interface-community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interface-community+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/container-storage-interface-community/28aba844-13a1-489b-aa8f-c6a3517cc1a8%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "container-storage-interface-community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interface-community+unsubscribe@googlegroups.com.
The logical result of that is a user could point to any secret, in any namespace, and have that secret passed to a CSI Driver.Right. But the same is true for a storage class referencing an "unknown" CSI provisioner. I think the CSI driver would just have to report that the secret didn't work or adhere to what was expected.
Inline.
Inline.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interf...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/container-storage-interface-community/00ca8f90-6564-485c-828e-74791d237bb1%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "container-storage-interface-community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interf...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/container-storage-interface-community/dfb8bf2c-a383-4350-a5a2-c623f260a6c1%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "container-storage-interface-community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interf...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/container-storage-interface-community/909d2783-1b4a-48ed-9755-784dbe915d9f%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "container-storage-interface-community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interf...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/container-storage-interface-community/28aba844-13a1-489b-aa8f-c6a3517cc1a8%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "container-storage-interface-community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interf...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/container-storage-interface-community/fb51d942-e029-46a8-b82d-90886443c14e%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "container-storage-interface-community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interf...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/container-storage-interface-community/3775241d-af61-4cb4-ae54-6cfebb5047e8%40googlegroups.com.
Inline.
Inline.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interface-community+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/container-storage-interface-community/00ca8f90-6564-485c-828e-74791d237bb1%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "container-storage-interface-community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interface-community+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/container-storage-interface-community/dfb8bf2c-a383-4350-a5a2-c623f260a6c1%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "container-storage-interface-community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interface-community+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/container-storage-interface-community/909d2783-1b4a-48ed-9755-784dbe915d9f%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "container-storage-interface-community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interface-community+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/container-storage-interface-community/28aba844-13a1-489b-aa8f-c6a3517cc1a8%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "container-storage-interface-community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interface-community+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/container-storage-interface-community/fb51d942-e029-46a8-b82d-90886443c14e%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "container-storage-interface-community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interface-community+unsubscribe@googlegroups.com.
Ok. So then how would you propose we provide the secret necessary to the CSI driver without inadvertently granting access to it to the user?One thought we had was to just present the secret namespace in the volume attributes if it can't be part of the secret reference.
Inline.
Inline.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interf...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/container-storage-interface-community/00ca8f90-6564-485c-828e-74791d237bb1%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "container-storage-interface-community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interf...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/container-storage-interface-community/dfb8bf2c-a383-4350-a5a2-c623f260a6c1%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "container-storage-interface-community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interf...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/container-storage-interface-community/909d2783-1b4a-48ed-9755-784dbe915d9f%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "container-storage-interface-community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interf...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/container-storage-interface-community/28aba844-13a1-489b-aa8f-c6a3517cc1a8%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "container-storage-interface-community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interf...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/container-storage-interface-community/fb51d942-e029-46a8-b82d-90886443c14e%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "container-storage-interface-community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interf...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/container-storage-interface-community/3775241d-af61-4cb4-ae54-6cfebb5047e8%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "container-storage-interface-community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to container-storage-interf...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/container-storage-interface-community/456a82b8-1862-4309-a781-ac02e51e07de%40googlegroups.com.