It's fundamentally a limitation of kernel filesystems, which is enforced by GCE's PD stack. Hypothetically if a filesystem came along that *could* be multi-mounted safely, PD would then become a problem. No such filesystem exists as far as I know.
On Wed, Feb 15, 2017 at 5:07 AM, <[email protected]> wrote: > Thx Tim. I also found this limitation written elsewhere after posting this: > > Important! A volume can only be mounted using one access mode at a time, even > if it supports many. For example, a GCEPersistentDisk can be mounted as > ReadWriteOnce by a single node or ReadOnlyMany by many nodes, but not at the > same time. > from: https://kubernetes.io/docs/user-guide/persistent-volumes/#gce > > I'm going to presume this is a fundamental limitation in the underlying > infrastructure (GCE/AWS whatever) under GKE and will not change. > > Rather than looking into NFS or disk cache tuning [its been a long time :P], > or diverting this thread I will post a new Q with my root issues that led me > here. > > > On Tuesday, 14 February 2017 22:12:31 UTC, Tim Hockin wrote: >> PD can mount read-only EVERYWHERE or read-write once. No mixing. The >> problem is that every filesystem keeps state in memory, even in >> read-only mode. If the on-disk state changes while readers have >> cached state you will get corruption. >> >> On Tue, Feb 14, 2017 at 9:15 AM, <[email protected]> wrote: >> > >> > Use case: I was hoping to run a k8s Deployment volume mounting a common >> > PD as readOnly and then use a single k8s (cron)Job to manage the content >> > of the PD. But alas it s not working. Any ideas please, details below ? >> > >> > GKE: Master & Node versions: 1.5.2 [not using alpha features, hence Job >> > not cronJob] >> > >> > 1. SUCCESS: Mounting a PD xyz as gcePersistentDisk readOnly into a k8s >> > deployment running on node-pool 123, all pods can mount the volume. >> > >> > 2. SUCCESS: Mounting a PD xyz as gcePersistentDisk readWrite into a k8s >> > Job running on node-pool 456, the Pod created for the job can mount the >> > volume. >> > >> > 3. FAIL: Being able to do both #1 & #2 simultaneously. >> > >> > I was hoping since I've segregated the Deployment & the Job onto different >> > nodes that this would work. >> > >> > -- >> > You received this message because you are subscribed to the Google Groups >> > "Kubernetes user discussion and Q&A" group. >> > To unsubscribe from this group and stop receiving emails from it, send an >> > email to [email protected]. >> > To post to this group, send email to [email protected]. >> > Visit this group at https://groups.google.com/group/kubernetes-users. >> > For more options, visit https://groups.google.com/d/optout. > > -- > You received this message because you are subscribed to the Google Groups > "Kubernetes user discussion and Q&A" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To post to this group, send email to [email protected]. > Visit this group at https://groups.google.com/group/kubernetes-users. > For more options, visit https://groups.google.com/d/optout. -- You received this message because you are subscribed to the Google Groups "Kubernetes user discussion and Q&A" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/kubernetes-users. For more options, visit https://groups.google.com/d/optout.
