XFS aggressively preallocates blocks to prevent fragmentation.
Try du --apparent-size. You can tune preallocation for xfs filesystem with
'allocsize' mount option.

Check out this
http://serverfault.com/questions/406069/why-are-my-xfs-filesystems-suddenly-consuming-more-space-and-full-of-sparse-file


On Thu, Apr 10, 2014 at 5:41 AM, Mark Kirkwood <
mark.kirkw...@catalyst.net.nz> wrote:

> Redoing (attached, 1st file is for 2x space, 2nd for normal). I'm seeing:
>
> $ diff osd-du.0.txt osd-du.1.txt
> 924,925c924,925
> < 2048 /var/lib/ceph/osd/ceph-1/current/5.1a_head/file__head_2E6FB49A__5
> < 2048    /var/lib/ceph/osd/ceph-1/current/5.1a_head
> ---
> > 1024 /var/lib/ceph/osd/ceph-1/current/5.1a_head/file__head_2E6FB49A__5
> > 1024    /var/lib/ceph/osd/ceph-1/current/5.1a_head
> 931c931
> < 2054    /var/lib/ceph/osd/ceph-1/current
> ---
> > 1030    /var/lib/ceph/osd/ceph-1/current
> 936c936
> < 2054    /var/lib/ceph/osd/ceph-1/
> ---
> > 1030    /var/lib/ceph/osd/ceph-1/
>
> Looks like the actual object has twice the disk footprint. Interestingly,
> comparing du vs ls info for it at that point shows:
>
> $ ls -l
> total 2097088
> -rw-r--r-- 1 root root 1073741824 Apr 10 15:33 file__head_2E6FB49A__5
>
> $ du file__head_2E6FB49A__5
> 2097088 file__head_2E6FB49A__5
>
> ...which is interesting.
>
> Regards
>
> Mark
>
>
> On 10/04/14 15:11, Mark Kirkwood wrote:
>
>> Ah right - sorry, I didn't realize that my 'du' was missing the files! I
>> will retest and post updated output.
>>
>> Cheers
>>
>> Mark
>>
>> On 10/04/14 15:04, Gregory Farnum wrote:
>>
>>> Right, but I'm interested in the space allocation within the PG. The
>>> best guess I can come up with without trawling through the code is
>>> that some layer in the stack is preallocated and then trimmed the
>>> objects back down once writing stops, but I'd like some more data
>>> points before I dig.
>>> -Greg
>>> Software Engineer #42 @ http://inktank.com | http://ceph.com
>>>
>>>
>>> On Wed, Apr 9, 2014 at 7:59 PM, Mark Kirkwood
>>> <mark.kirkw...@catalyst.net.nz> wrote:
>>>
>>>> It is only that single pg using the space (see attached) - but
>>>> essentially:
>>>>
>>>> $ du -m /var/lib/ceph/osd/ceph-1
>>>> ...
>>>> 2048    /var/lib/ceph/osd/ceph-1/current/5.1a_head
>>>> 2053    /var/lib/ceph/osd/ceph-1/current
>>>> 2053    /var/lib/ceph/osd/ceph-1/
>>>>
>>>> Which is resized to 1025 soon after. Interestingly I am not seeing this
>>>> effect (same ceph version) on a single host setup with 2 osds using
>>>> preexisting partitions... it's only on these multi host configurations
>>>> that
>>>> have osd's using whole devices (both setups installed using
>>>> ceph-deploy, so
>>>> in theory nothing exotic about 'em except for the multi 'hosts' are
>>>> actually
>>>> VMs).
>>>>
>>>> Regards
>>>>
>>>> Mark
>>>>
>>>> On 10/04/14 02:27, Gregory Farnum wrote:
>>>>
>>>>> I don't think the backing store should be seeing any effects like
>>>>> that. What are the filenames which are using up that space inside the
>>>>> folders?
>>>>> -Greg
>>>>> Software Engineer #42 @ http://inktank.com | http://ceph.com
>>>>>
>>>>>
>>>>> On Wed, Apr 9, 2014 at 1:58 AM, Mark Kirkwood
>>>>> <mark.kirkw...@catalyst.net.nz> wrote:
>>>>>
>>>>>> Hi all,
>>>>>>
>>>>>> I've noticed that objects are using twice their actual space for a few
>>>>>> minutes after they are 'put' via rados:
>>>>>>
>>>>>> $ ceph -v
>>>>>> ceph version 0.79-42-g010dff1 (010dff12c38882238591bb042f8e49
>>>>>> 7a1f7ba020)
>>>>>>
>>>>>> $ ceph osd tree
>>>>>> # id    weight  type name       up/down reweight
>>>>>> -1      0.03998 root default
>>>>>> -2      0.009995                host ceph1
>>>>>> 0       0.009995                        osd.0   up      1
>>>>>> -3      0.009995                host ceph2
>>>>>> 1       0.009995                        osd.1   up      1
>>>>>> -4      0.009995                host ceph3
>>>>>> 2       0.009995                        osd.2   up      1
>>>>>> -5      0.009995                host ceph4
>>>>>> 3       0.009995                        osd.3   up      1
>>>>>>
>>>>>> $ ceph osd dump|grep repool
>>>>>> pool 5 'repool' replicated size 3 min_size 2 crush_ruleset 0
>>>>>> object_hash
>>>>>> rjenkins pg_num 64 pgp_num 64 last_change 57 owner 0 flags hashpspool
>>>>>> stripe_width 0
>>>>>>
>>>>>> $ du -m  file
>>>>>> 1025    file
>>>>>>
>>>>>> $ rados put -p repool file file
>>>>>>
>>>>>> $ cd /var/lib/ceph/osd/ceph-1/current/
>>>>>> $ du -m 5.1a_head
>>>>>> 2048          5.1a_head
>>>>>>
>>>>>> [later]
>>>>>>
>>>>>> $ du -m 5.1a_head
>>>>>> 1024          5.1a_head
>>>>>>
>>>>>> The above situation is repeated on the other two OSD's where this pg
>>>>>> is
>>>>>> mapped. So after about 5 minutes or so we have (as expected) that the
>>>>>> 1G
>>>>>> file is using 1G on each of the 3 OSD's it is mapped to, however for a
>>>>>> short
>>>>>> period of time it is using twice this! I very interested to know what
>>>>>> activity is happening that causes the 2x space use - as this could be
>>>>>> a
>>>>>> significant foot gun if uploading large files when we don't have 2x
>>>>>> the
>>>>>> space available on each OSD.
>>>>>>
>>>>>> Regards
>>>>>>
>>>>>> Mark
>>>>>> _______________________________________________
>>>>>> ceph-users mailing list
>>>>>> ceph-users@lists.ceph.com
>>>>>> http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com
>>>>>>
>>>>>
>>>>
>> _______________________________________________
>> ceph-users mailing list
>> ceph-users@lists.ceph.com
>> http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com
>>
>
>
> _______________________________________________
> ceph-users mailing list
> ceph-users@lists.ceph.com
> http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com
>
>
_______________________________________________
ceph-users mailing list
ceph-users@lists.ceph.com
http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com

Reply via email to