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.

Reply via email to