[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