Revision history [back]

click to hide/show revision 1
initial version

Adding a new datacentre (swift object store)

Running swift v2.3.0. We currently have 1 region, 3 zones with 3 replicas. We have 3 physical machine each with 26 disks.

We are adding a new datacentre and eventually will go to : 2 regions, 3 zones in each region, giving us 6 replicas - with 6 physical machines each with 26 physical disks.

At the moment we have around 6Tb of data in our store (non replicated - 18Tb in total).

My question is - what is the best way to add the new system? Is it better to increase the replica count to 6 and add the new disks in the 2nd region all in one go - or will that result in "extended unavailability" for the data (accessing via a proxy node on the first region)? Or should I go through the pain of very slowly increasing the replica count and the weight of the disks in the second region?

The 2nd way will take months - but I can be sure that there won't be that many partitions in the wrong place.

The first way has the advantage that it shouldn't need to move any of the existing data - merely copy it to the second region - and yes, if we access local proxy nodes on 2nd region the data won't readily be available till it has all replicated.

I guess the real question is that if I do it "all at once" - will the existing partitions be moved around or not?

I copied my ring files to a safe location and did the "all in one" add and rebalanced - the system was in balance (0.01 balance) - but before I use these rings I need to be sure that my customers' data won't just go awol if I push them out...

Adding a new datacentre (swift object store)

Running swift v2.3.0. We currently have 1 region, 3 zones with 3 replicas. We have 3 physical machine each with 26 disks.

We are adding a new datacentre and eventually will go to : 2 regions, 3 zones in each region, giving us 6 replicas - with 6 physical machines each with 26 physical disks.

At the moment we have around 6Tb of data in our store (non replicated - 18Tb in total).

My question is - what is the best way to add the new system? Is it better to increase the replica count to 6 and add the new disks in the 2nd region all in one go - or will that result in "extended unavailability" for the data (accessing via a proxy node on the first region)? Or should I go through the pain of very slowly increasing the replica count and the weight of the disks in the second region?

The 2nd way will take months - but I can be sure that there won't be that many partitions in the wrong place.

The first way has the advantage that it shouldn't need to move any of the existing data - merely copy it to the second region - and yes, if we access local proxy nodes on 2nd region the data won't readily be available till it has all replicated.

I guess the real question is that if I do it "all at once" - will the existing partitions be moved around or not?

I copied my ring files to a safe location and did the "all in one" add and rebalanced - the system was in balance (0.01 balance) - but before I use these rings I need to be sure that my customers' data won't just go awol if I push them out...