[sheepdog] [PATCH v2 00/11] add reweight support
Liu Yuan
namei.unix at gmail.com
Mon May 27 08:22:52 CEST 2013
v2:
- fix reweighting cluster with gateway only node
- use ext4 as mkfs format
- remove duplicate check in cluster_recovery_completion
This patch set mainly add reweight support after sizes of nodes get changed by
plug/unplug.
The rationale for reweighting instead of auto-reweighting for every plug/unplug
event is that, people don't want plug/unplug or disk crashes in one node put the
the whole cluster in recovery. Instead, people can do manual reweighting at
their will because md event doesn't degrade the data reliability or availibility.
Also fixes 'node info' output
usage:
$ collie cluster reweight # trigger reweighting and data rebalance across cluster
Liu Yuan (11):
sheep: reanme {set,get}_cluster_space as _node_space
tests: use mkfs.ext3 only for _make_device
sheep: remove '-s' option
collie: fix 'node info'
sheep: fix 'md info'
collie: show available command only for subcommand
recovery: don't assume old_epoch is sys->eopch - 1
gateway: don't skip start_recovery for gateway-only node
sheep: add 'cluster reweight' support
recovery: don't notify completion for md recovery
tests: add 063 to test reweight
collie/cluster.c | 14 +++++
collie/collie.c | 7 +--
collie/node.c | 13 +++--
include/internal_proto.h | 4 +-
sheep/config.c | 4 +-
sheep/group.c | 22 +++++++-
sheep/md.c | 27 +++++++---
sheep/ops.c | 133 ++++++++++++++++++++++++++++++++++------------
sheep/plain_store.c | 12 ++---
sheep/recovery.c | 36 ++++++++-----
sheep/sheep.c | 14 +----
sheep/sheep_priv.h | 9 ++--
sheep/store.c | 6 +--
tests/010 | 4 +-
tests/016 | 4 +-
tests/016.out | 8 +--
tests/042 | 2 +-
tests/042.out | 82 +++++++++++++++-------------
tests/044 | 4 +-
tests/044.out | 8 +--
tests/054 | 12 ++++-
tests/057.out | 48 ++++++++---------
tests/058 | 6 +--
tests/058.out | 16 +++---
tests/063 | 45 ++++++++++++++++
tests/063.out | 34 ++++++++++++
tests/common.filter | 7 ++-
tests/common.rc | 20 +------
tests/group | 1 +
29 files changed, 402 insertions(+), 200 deletions(-)
create mode 100755 tests/063
create mode 100644 tests/063.out
--
1.7.9.5
More information about the sheepdog
mailing list