← Back to team overview

openstack team mailing list archive

Re: Re-balancing of RING does not level up my objects in old devices

 

Hi,

Is there any Swift command to know if replication task is completed after rebalance?
After ring rebalance (adding new device to the ring), the replicator moves data around to fit new map.
So how can I check the graceful completion of this task?

Thanks,
Tushar

-----Original Message-----
From: David Hadas [mailto:DAVIDH@xxxxxxxxxx] 
Sent: Friday, June 28, 2013 3:04 AM
To: Vengurlekar, Tushar V (USD-SWD)
Cc: openstack@xxxxxxxxxxxxxxxxxxx; Openstack
Subject: RE: [Openstack] Re-balancing of RING does not level up my objects in old devices

Ok so you have a single replica indicated by the ring.

Beyond other potential issues with a single replica configuration (e.g.
intolerance to faults and not being able to access data after ring balancing as will be described below), I dont think there is much experience with such a setup, maybe others can say something about how ring rebalancing would work when there is a single replica defined - but even if the new ring is well formed, you do need to activate the replicators to get the data moving to its new location - further, until data is moved, you will have no ability to access any of the partitions that were moved by the ring (which is due to your use of a single replica  - not a recommended configuration for swift).

rebabalncing a ring does not move data. Think of the ring as a map - once you change parts of the map (i.e. perform rebalancing), it does not mean that any data had moved - instead it means that you no longer can reach some of the data because it is not according to the map...  - the replicator is the one moving the data around to fit the new map. After it
is done, you will be able to reach all data as before.   Not being able to
access the dtaa is due to the fact that you have only one replica. If you had 3, and you could not reach one, you could still reach the other two (and the ring makes sure not to move more than one replica at  a time...)

DH


Regards,
David Hadas,
Openstack Swift ATC, Architect, Master Inventor IBM Research Labs, Haifa
Tel:    Int+972-4-829-6104
Fax:   Int+972-4-829-6112




From:	"Vengurlekar, Tushar V (USD-SWD)" <tushar.vengurlekar@xxxxxx>
To:	David Hadas/Haifa/IBM@IBMIL,
Cc:	"openstack@xxxxxxxxxxxxxxxxxxx"
            <openstack@xxxxxxxxxxxxxxxxxxx>, Openstack
            <openstack-bounces+davidh=il.ibm.com@xxxxxxxxxxxxxxxxxxx>
Date:	27/06/2013 06:40 PM
Subject:	RE: [Openstack] Re-balancing of RING does not level up my
            objects in	old devices



David,
Thanks for the quick reply.

My configuration is little different. The replication level is set to 1 (single copy). The ring database is stored in common share (so I need not copy it to all servers) So do you mean the replicator service is responsible for object movement?
(I have replicator service not running in my setup) Does rebalancing of Ring DB will move my objects too in the devices? Or it will just mark the partitions to the new devices?

Regards,
Tushar

-----Original Message-----
From: David Hadas [mailto:DAVIDH@xxxxxxxxxx]
Sent: Thursday, June 27, 2013 8:38 PM
To: Vengurlekar, Tushar V (USD-SWD)
Cc: openstack@xxxxxxxxxxxxxxxxxxx; Openstack
Subject: Re: [Openstack] Re-balancing of RING does not level up my objects in old devices

You need the daemons running 24/7 not only when you change the ring :) Specifically the replicators must be running to get the objects to their eventual place (which may have changed by the ring rebalancing you had performed).

(You also need to copy the ring to all you servers)

DH


Regards,
David Hadas,
Openstack Swift ATC, Architect, Master Inventor IBM Research Labs, Haifa
Tel:    Int+972-4-829-6104
Fax:   Int+972-4-829-6112




From:		 "Vengurlekar, Tushar V (USD-SWD)" <tushar.vengurlekar@xxxxxx>
To:		 "openstack@xxxxxxxxxxxxxxxxxxx"
            <openstack@xxxxxxxxxxxxxxxxxxx>,
Date:		 27/06/2013 05:43 PM
Subject:		 [Openstack] Re-balancing of RING does not level up my
objects
            in		 old devices
Sent by:		 "Openstack" <openstack-bounces
            +davidh=il.ibm.com@xxxxxxxxxxxxxxxxxxx>



Hello,

I have a question related to balancing swift objects across devices added to the ring.

I have Swift setup which initially created with 2 devices in it (weight
100) and partition power 12.
These devices now started filling up to its capacity (~90% of its size).
So now I added 2 new devices (weight 100) to the ring and performed rebalance.
The ring shows me all new configurations with correct partitions mapped to each device.

But even after running ring rebalance command I do not see my objects are balanced (level up) to the newer devices.
(i.e. older devices still consume 90% of space, while new devices are
empty) So do I need to perform any additional action (run object updater
once) to achieve this?

Thanks,
Tushar



-----Original Message-----
From: bounces@xxxxxxxxxxxxx [mailto:bounces@xxxxxxxxxxxxx] On Behalf Of Tushar
Sent: Thursday, June 27, 2013 6:26 PM
To: Vengurlekar, Tushar V (USD-SWD)
Subject: [Question #231472]: Re-balancing of RING does not level up my objects in old devices

New question #231472 on OpenStack Object Storage (swift):
https://answers.launchpad.net/swift/+question/231472
--
You received this question notification because you asked the question.
_______________________________________________
Mailing list: https://launchpad.net/~openstack
Post to     : openstack@xxxxxxxxxxxxxxxxxxx
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp







Follow ups

References