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.

> 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.

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

Reply via email to