[sheepdog] [PATCH 0/3] sheep, dog: configurable vid space

藤枝崇史 fujieda.takafumi at lab.ntt.co.jp
Mon Mar 2 05:23:45 CET 2015


> To be honest, it is hard for me to understand the motivation of expanding VID space.
> As you pointed, cutting relation between VDIs enables fine grained VID GC. Is this not enough?

I understand, if I want to operate a sheepdog cluster with periodical snapshot
for a long term, I have to do following maintenance once in several years.

1. stop VDI clients (e.g. tgt, qemu)
2. create clones for VID recycling
    $ dog vdi snapshot <current VDI name>
    $ dog vdi clone --no-share -s <latest sid> <current VDI name> <new VDI name>
3. update clients (e.g. re-create targets, update the startup scripts of VM)
4. restart clients
5. delete old snapshots

Thanks,
Takafumi

> -----Original Message-----
> From: Hitoshi Mitake <mitake.hitoshi at lab.ntt.co.jp>
> Sent: Monday, February 02, 2015 06:23 PM
> To: Takafumi Fujieda <fujieda.takafumi at lab.ntt.co.jp>
> Cc: sheepdog at lists.wpkg.org
> Subject: Re: [sheepdog] [PATCH 0/3] sheep, dog: configurable vid space
> 
> At Mon,  2 Feb 2015 14:58:18 +0900,
> Takafumi Fujieda wrote:
> > 
> > Current, deleted vids are not reused, without cutting relations.
> > If snapshots of many online vdis in a cluster are created continuously,
> > the vid space will be exhausted.
> 
> To be honest, it is hard for me to understand the motivation of
> expanding VID space. As you pointed, cutting relation between VDIs
> enables fine grained VID GC. Is this not enough?
> 
> Thanks,
> Hitoshi
> 
> > 
> > These patches make vid space size configurable from 24 bits to 26 bits
> > by using the reserved bits in the oid.
> > A new option "-s <bits>" is added to dog cluster format for specify the vid space size.
> > (The default vid space size is 24 bits)
> > 
> > These patches don't care compatibility of object files and cluster snapshot data
> > created under different vid spaces.
> > If you want to change your cluster's vid space keeping existing vdis,
> > the cluster must be shutdowned and all vdis should be outputted
> > by using qemu-img and "dog vdi backup".
> > 
> > Takafumi Fujieda (3):
> >   sheep, dog: add vid space variables to the structs
> >   sheep, dog: make vid space size variable
> >   dog: add a new option to specify the vid space
> > 
> >  dog/cluster.c             |   67 +++++++++++++++++++++++++++++++++++++++-----
> >  dog/common.c              |   32 +++++++++++++++++-----
> >  dog/dog.h                 |    3 +-
> >  dog/farm/farm.c           |   16 ++++++++++-
> >  dog/farm/farm.h           |    3 +-
> >  dog/node.c                |    3 +-
> >  dog/vdi.c                 |   22 ++++++++++-----
> >  include/internal_proto.h  |    6 +++-
> >  include/sheepdog_proto.h  |   18 +++++++-----
> >  sheep/config.c            |   20 ++++++++++++-
> >  sheep/gateway.c           |   23 +++++++++-------
> >  sheep/group.c             |   10 +++++-
> >  sheep/journal.c           |    3 +-
> >  sheep/nfs/fs.c            |    4 +-
> >  sheep/nfs/nfs.c           |    4 +-
> >  sheep/object_cache.c      |   13 +++++----
> >  sheep/object_list_cache.c |    2 +-
> >  sheep/ops.c               |   35 +++++++++++++++++++-----
> >  sheep/plain_store.c       |   25 ++++++++++-------
> >  sheep/recovery.c          |   10 ++++---
> >  sheep/request.c           |    3 +-
> >  sheep/sheep_priv.h        |    6 +++-
> >  sheep/vdi.c               |   43 +++++++++++++++++-----------
> >  sheepfs/volume.c          |    2 +-
> >  24 files changed, 269 insertions(+), 104 deletions(-)
> > 
> > -- 
> > sheepdog mailing list
> > sheepdog at lists.wpkg.org
> > https://lists.wpkg.org/mailman/listinfo/sheepdog





More information about the sheepdog mailing list