[Sheepdog] Configuring simple cluster on CentOS 5.5 x86_64

Yuriy Kohut ykohut at onapp.com
Fri Oct 15 15:55:56 CEST 2010


Cool, that works.

Thanks
---
Yura

On Oct 15, 2010, at 3:52 PM, MORITA Kazutaka wrote:

> At Fri, 15 Oct 2010 13:38:16 +0300,
> Yuriy Kohut wrote:
>> 
>> Hi,
>> 
>> I'm using the following 'Getting Started' guide to configure simple cluster:
>> http://www.osrg.net/sheepdog/usage.html
>> 
>> I have configured cluster on 1 node/box, so the first questions are:
>> Can I configure cluster on single node (1 box) under CentOS 5.5 x86_64 ? 
>> Is it required at least 3 nodes/boxes ... ?
>> 
>> I have faced with the following issue on my single-node cluster. I have rebooted the box after my first image creation. The following done for that:
>> - corosync is up and running
>> udp        0      0 192.168.128.195:5404        0.0.0.0:*                               3541/corosync       
>> udp        0      0 192.168.128.195:5405        0.0.0.0:*                               3541/corosync       
>> udp        0      0 226.94.1.1:5405             0.0.0.0:*                               3541/corosync 
>> 
>> - sheep is up and running
>> tcp        0      0 0.0.0.0:7000                0.0.0.0:*                   LISTEN      3561/sheep
>> 
>> - cluster is formatted with 1 copy only
>> #collie cluster format --copies=1
>> 
>> - the image with prelocated data is created
>> # qemu-img create sheepdog:test0 -o preallocation=data 4G
>> 
>> 
>> So after such siple steps I got:
>> # collie vdi list
>>  name        id    size    used  shared    creation time   vdi id
>> ------------------------------------------------------------------
>>  test0        1  4.0 GB  4.0 GB  0.0 MB 2010-10-15 12:42   fd34af
>> 
>> 
>> Then I rebooted the box, and no image(s) are available for me after box came back. The vdi list just show nothing:
>> # collie vdi list
>>  name        id    size    used  shared    creation time   vdi id
>> ------------------------------------------------------------------
>> 
>> and 'collie vdi list' never ends ...
>> corosync and sheep are still running.
>> 
>> 
>> Could somebody assist me with that.
> 
> Sorry, the following patch will fixes the problem.
> 
> =
> From: MORITA Kazutaka <morita.kazutaka at lab.ntt.co.jp>
> Subject: [PATCH] sheep: call start_recovery when cluster restarts with one node
> 
> Sheepdog recovers objects before starting a storage service, and the
> routine is called when nodes are joined.  However If sheepdog consists
> of only one node, no node doesn't send join messages, so
> start_recovery doesn't called.  This patch fixes the problem.
> 
> Signed-off-by: MORITA Kazutaka <morita.kazutaka at lab.ntt.co.jp>
> ---
> sheep/group.c |    3 +++
> 1 files changed, 3 insertions(+), 0 deletions(-)
> 
> diff --git a/sheep/group.c b/sheep/group.c
> index ba8cdfb..86cbdb8 100644
> --- a/sheep/group.c
> +++ b/sheep/group.c
> @@ -1226,6 +1226,9 @@ static void __sd_confchg_done(struct cpg_event *cevent)
> 
> 		update_cluster_info(&msg);
> 
> +		if (sys->status == SD_STATUS_OK) /* sheepdog starts with one node */
> +			start_recovery(sys->epoch, NULL, 0);
> +
> 		return;
> 	}
> 
> -- 
> 1.5.6.5
> 




More information about the sheepdog mailing list