-
Notifications
You must be signed in to change notification settings - Fork 5.2k
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
choose max drives per set to be '8' by default #18725
base: master
Are you sure you want to change the base?
Conversation
with this we also change default parity for '8' to be 'EC:3' instead of 'EC:4'.
This is a big change @harshavardhana So we still support erasure set sizes of 9-16, but we are defaulting to a max of 8 unless specified otherwise? Plus Standard EC:3 with max set size instead of EC:4. Can you walk us through the logic/goal state here and what we gain/lose in this setup? We'll have a lot of guidance to redo. |
Implications are same as if you set manually storage class standard to EC:3, and use SET_DRIVE_COUNT environment to 8. Nothing else changes other than this @ravindk89 - instead of manually doing it we are simply agreeing as per "design" that by default we will never do wider stripes. With our experience over last few years we do not see the value in it anymore. Also reducing stripe quite simply increases IOPs by 2x. Also increases efficiency of the scanner, everything is more spread out and still provides a good amount of safety net. If you do not trust your hardware then you can simply set higher stripe count, with reduced performance. |
Gotcha. We'll have to prep a few things. A few follow-ups: Assuming we continue to follow pool expansion logic. So if I have pool 1 with stripe size of 16 and EC:8, the new pool should also require at least EC:8 and therefore stripe 8, correct? Even with this setting that is. |
@harshavardhana Will it prefer 5 over 10, 6 over 12, 7 over 14 - or will this just affect sizes divisible by 16? |
yeah, well, it does right now. That's the question I have that needs clarification, but it is going to be a bit of a hoch-poch to digest after years of running things differently. |
Yeah.. Like I get it for 16 -> 8 and 14 -> 7.... But 10 -> 5 and maybe 12 ->6 seems like a rather big drop... |
Community Contribution License
All community contributions in this pull request are licensed to the project maintainers
under the terms of the Apache 2 license.
By creating this pull request I represent that I have the right to license the
contributions to the project maintainers under the Apache 2 license.
Description
choose max drives per set to be '8' by default
Motivation and Context
with this, we also change the default parity for '8'
to be 'EC:3' instead of 'EC:4'.
How to test this PR?
This is a new change.
Types of changes
Checklist:
commit-id
orPR #
here)