[Openstack] swift ringbuilder and disk size/capacity relationship

Mark Kirkwood mark.kirkwood at catalyst.net.nz
Tue Mar 15 09:51:44 UTC 2016


On 15/03/16 22:21, Peter Brouwer wrote:

> On 10/03/2016 05:14, Mark Kirkwood wrote:
>> Hmm, I'm confused by the phrase 'partitions that point to the same disk':

> PArtitions is used in the swift context, i.e. the partitions scheme the
> ring-builder uses.

I'm sorry but that does not make sense. The ring builder lets you add 
*devices*. Now a device could be a partition (e.g /dev/sdc1) as opposed 
to a complete disk (/dev/sdc) but I'm at a loss to see where you are 
going with this, as the ring builder is essentially partition un-aware.

I'm assuming a whole physical disk is used, i.e.
> filesystem created on a disk using the whole physical disk.
> So the ring structure provides a reference to a swift partition and a
> disk location, right?

Hmm...this partition word again...you are talking about a whole disk, so 
there is no partition (or the 'partition is = the entire disk - you have 
added a whole disk after all).

> What happens if the disk it is pointing to is full, does swift returns
> an error to the app/client or does it try a re-lookup in an attempt to
> find space elsewhere?

I think I answered that previously. Swift can survive *some* of the 
disks being full, but eventually you'll get a PUT failure for 
objects/containers (a 50x http error), and you will be unable to add any 
more until you:

- add more disks to existing servers (or)
- add more servers and disks

and amend the ring with these additional devices.

regards

Mark




More information about the Openstack mailing list