[Openstack] swift ringbuilder and disk size/capacity relationship

Peter Brouwer peter.brouwer at oracle.com
Tue Mar 15 11:51:37 UTC 2016



On 15/03/2016 10:29, Mark Kirkwood wrote:
> On 15/03/16 22:21, Peter Brouwer wrote:
>> PArtitions is used in the swift context, i.e. the partitions scheme the
>> ring-builder uses. 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?
>> 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?
>
> Ah sorry, I see you are in fact (correctly) talking about swift 
> partitions and *not* disk partitions (confusing in your initial email).
>
> So you are essentially saying what happens when the particular target 
> disk is full. Swift tries to write objects or containers to a 
> sufficient number of storage server devices (the exact number or 
> proportion may depend on the schema defined for the specific profile - 
> replicated or erasure...I haven't checked recent code ...John will 
> know I think)...however if enough copies (or segments) are written 
> then all is ok (so *some* disks can be full), however eventually too 
> many will be full and you will get an error [1].
Ah, good info. Followup question, assume worse case ( just to emphasis 
the situation) , one copy ( replication = 1 ) , disk approaching its max 
capacity.
How can you monitor this situation, i.e. to avoid the disk full scenario and
if the disk is full, what type of error is returned?

BTW, thanks for the patience for sticking with me in this.
>
> regards
>
> Mark
>
> [1] tested this with 4 servers and 8 devices.

-- 
Regards,

Peter Brouwer, Principal Software Engineer,
Oracle Application Integration Engineering.
Phone:  +44 1506 672767, Mobile +44 7720 598 226
E-Mail: Peter.Brouwer at Oracle.com





More information about the Openstack mailing list