Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

bluestore-block File size automatically grows, the actual only 20G, but a single node bluestore-block size of more than 80G #1463

Closed
limiao2008 opened this issue Jan 31, 2018 · 11 comments
Assignees
Labels
ceph-rados Ceph core components / functionality
Projects
Milestone

Comments

@limiao2008
Copy link

limiao2008 commented Jan 31, 2018

limisaodeMacBook-Pro:~ limisao$ kubectl get pvc
NAME           STATUS    VOLUME                                     CAPACITY   ACCESS MODES   STORAGECLASS   AGE
redis-master   Bound     pvc-f7122b7b-e180-11e7-a028-f23c9197deda   5Gi        RWO            rook-block     46d
redis-slave    Bound     pvc-67f51b96-e183-11e7-a028-f23c9197deda   5Gi        RWO            rook-block     46d
# du -sh *
4.0K	block
4.0K	block.db
4.0K	block.wal
8.0K	bluefs
79G	bluestore-block
27M	bluestore-db
576M	bluestore-wal
8.0K	ceph_fsid
8.0K	fsid
8.0K	keyring
8.0K	kv_backend
8.0K	magic
8.0K	mkfs_done
8.0K	ready
4.0K	rook-osd.3.asok
8.0K	rook.config
16K	tmp
8.0K	type
8.0K	whoami
@kokhang
Copy link
Member

kokhang commented Jan 31, 2018

Can you give us more information about your environment? How many nodes in the cluster? Also what is your cluster manifest? kubectl -n rook get cluster rook -o yaml?

@jbw976
Copy link
Member

jbw976 commented Jan 31, 2018

Just as a note, the bluestore-block file, when the user has specified a directory for the OSD, is "thinly provisioned" up front. i.e. the file descriptor is set to the full size of the disk, but blocks for the file are NOT allocated up front. You'll see the file size be much bigger than will actually be reported by du -sh bluestore-block.

What does the following report when run from the OSD's filesystem?

du -sh bluestore-block; ls -hal bluestore-block

Also, what does the following look like when run from inside the rook toolbox?

rookctl status; ceph status

@lorenz
Copy link
Contributor

lorenz commented Feb 3, 2018

I have one cluster that runs on the same thinly provisioned files and heavy write loads (70% write) cause the bluestore-rook file to blow up to 5 times the used data volume according to ceph status. I don't think that this can be solved easily since it would basically rely on TRIM/UNMAP being passed through to the filesystem layer and then freeing up these blocks.

@oliviabarrick
Copy link

Why is this still completely undocumented on the website? Bluestore should not be the default.

@travisn
Copy link
Member

travisn commented Mar 14, 2018

Agreed, will make it priority to get this documented clearly with a warning. Bluestore in a directory was intended to be a test scenario, but it seems users are finding it useful beyond that.

Upstream, bluestore in a directory was also intended to be for testing scenarios rather than production. A change was just merged upstream that will improve this situation of the space never being reclaimed: ceph/ceph#14727. However, it still won't entirely solve the issue and Rook won't get the change until we pick up Mimic.

Using filestore for directories in the examples also seems like a good thing for now unless there is some other issue with filestore i'm forgetting. @jbw976 @liewegas

@travisn travisn added this to the 0.8 milestone Mar 14, 2018
@travisn travisn added the ceph-rados Ceph core components / functionality label Mar 14, 2018
@travisn travisn added this to To do in v0.8 via automation Mar 14, 2018
@lorenz
Copy link
Contributor

lorenz commented Mar 14, 2018

@travisn Are you sure that is the case? It looks like this will only work on block devices, not necessarily on filesystems.

@travisn
Copy link
Member

travisn commented Mar 14, 2018

yeah, i'm not sure if this would help with the filestore

@travisn travisn self-assigned this Mar 20, 2018
@travisn travisn moved this from To do to In progress in v0.8 Mar 20, 2018
@travisn travisn moved this from In progress to In Review in v0.8 Mar 20, 2018
v0.8 automation moved this from In Review to Done Mar 21, 2018
@hameno
Copy link

hameno commented Apr 25, 2018

How do I change from bluestore to filestore if a cluster is already created?

@travisn
Copy link
Member

travisn commented Apr 25, 2018

@hameno it will require bringing up new OSDs and then removing the old ones after the data has been replicated. The Ceph documentation describes the process here. Unfortunately there is not an in-place migration for individual OSDs.

@hameno
Copy link

hameno commented Apr 25, 2018

Thanks, that's basically what I ended up doing.

@Paxa
Copy link

Paxa commented Aug 29, 2018

How to check what is current backend, bluestore or filestore?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ceph-rados Ceph core components / functionality
Projects
No open projects
v0.8
  
Done
Development

No branches or pull requests

8 participants