On Mon, Jan 16, 2017 at 10:11 AM Jason Dillaman <[email protected]> wrote:

> On Sun, Jan 15, 2017 at 2:56 PM, Shawn Edwards <[email protected]>
> wrote:
> > If I, say, have 10 rbd attached to the same box using librbd, all 10 of
> the
> > rbd are clones of the same snapshot, and I have caching turned on, will
> each
> > rbd be caching blocks from the parent snapshot individually, or will the
> 10
> > rbd processes be building up their own cache, ignorant of the other
> > process's caching?
>
> Each process will utilize its own, independent cache for the parent
> image. There is no interprocess coordination to share the cache bits.
>
>
That's what I figured.  A shared, interprocess cache would be Hard, and not
have many use cases.


> > The use case I have is a lot of rbd-nbd mounted rbd used as VM boot disks
> > all based on the same clone.  It would be great if the parent clone
> could be
> > cached once and then only blocks which were copy-on-write were in each
> > individual process's cache.
>
> If you are worried about the footprint, you could disable the use of
> the cache within just the parent image by running "rbd metadata set
> <image spec> conf_rbd_cache false" against the parent image. Since you
> are using a VM on top of librbd, the librbd cache is effectively a L2
> cache so you probably aren't gaining much by caching reads for the
> parent image since the VM will most likely cache the reads as well.
>
>
Ah, interesting.  I'll give that a shot and see if that helps.  Thanks for
the suggestion.


> --
> Jason
>
_______________________________________________
ceph-users mailing list
[email protected]
http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com

Reply via email to