Feature #4305
openCRUSH: it should be possible use ssd as primary and hdd for replicas but still make sure no replica is on same host
0%
Description
http://ceph.com/docs/master/rados/operations/crush-map/
rule platter {
ruleset 3
type replicated
min_size 0
max_size 10
step take platter
step chooseleaf 0 type host
step emit
}
rule ssd {
ruleset 4
type replicated
min_size 0
max_size 10
step take ssd
step chooseleaf 0 type host
step emit
}
rule ssd-primary {
ruleset 4
type replicated
min_size 0
max_size 10
step take ssd
step chooseleaf 1 type host
step emit
step take platter
step chooseleaf -1 type host
step emit
}
Using this example it could happen that the primary and one replica end up on the same host if a host contains both ssd and hdd drives. It should be possible to write crush rules which ensure that the data will always be spread over n-replicas hosts, even when a host has sdd and hdd drives.
Updated by Corin Langosch about 11 years ago
Here's an idea how it could work:
rule ssd-primary {
ruleset 4
type replicated
min_size 0
max_size 10
step take ssd
step chooseleaf 1 type host
step pick
step take platter
step chooseleaf 0 type host
step pick
step emit unique
}
Updated by Patrick Donnelly about 6 years ago
- Project changed from Ceph to 15
- Subject changed from it should be possible use ssd as primary and hdd for replicas but still make sure no replica is on same host to CRUSH: it should be possible use ssd as primary and hdd for replicas but still make sure no replica is on same host
Updated by Nathan Cutler about 6 years ago
- Project changed from 15 to RADOS
Assuming @Patrick meant "RADOS" and not "rados-java"