Project

General

Profile

Actions

Feature #21306

closed

Reduce RBD filestore/bluestore fragmentation throught fallocate

Added by Марк Коренберг over 6 years ago. Updated about 6 years ago.

Status:
Rejected
Priority:
Normal
Assignee:
-
Target version:
-
% Done:

0%

Source:
Tags:
Backport:
Reviewed:
Affected Versions:
Pull request ID:

Description

It is well know fact that RBD images make XFS filesystem heavily fragmented on Filestore OSDs.

So I propose a way to eliminate this:

1. rados,osd: implement fallocate() for objects.
2. Implement FALLOC_FL_KEEP_SIZE both in rados,osd
3. Add an option to RBD (clients or maybe image itself) to call fallocate(FALLOC_FL_KEEP_SIZE, chunk_size) on newly created objects.

Actions #1

Updated by Sage Weil over 6 years ago

  • Project changed from Ceph to bluestore
Actions #2

Updated by Sage Weil about 6 years ago

  • Status changed from New to Rejected

We already have a function like this for filestore: librbd does a hint and filestore calls the xfs ioctl to set the default allocation size. By default hte alloc size is capped at 1MB.. see filestore_max_alloc_hint_size

Actions

Also available in: Atom PDF