You could decompile the crushmap, add a dummy OSD (with a non-existing
ID) with your new device class and add a rule, then compile it and
inject. Here's an excerpt from a lab cluster with 4 OSDs (0..3),
adding a fifth non-existing:
device 4 osd.4 class test
rule testrule {
id 6
type erasure
step set_chooseleaf_tries 5
step set_choose_tries 100
step take default class test
step chooseleaf indep 0 type host
step emit
}
Note that testing this rule with crushtool won't work here since the
fake OSD isn't assigned to a hosts.
But what's the point in having a rule without the corresponding
devices? You won't be able to create a pool with that rule anyway
until the OSDs are present.
Zitat von Marc <Marc@xxxxxxxxxxxxxxxxx>:
It looks like it is not possible to create crush rules when you
don't have harddrives active in this class.
I am testing with new squid and did not add ssd's yet, eventhough I
added class like this.
ceph osd crush class create ssd
I can't execute this
ceph osd crush rule create-replicated replicated_ssd default host ssd
Is there any way around this?
_______________________________________________
ceph-users mailing list -- ceph-users@xxxxxxx
To unsubscribe send an email to ceph-users-leave@xxxxxxx
_______________________________________________
ceph-users mailing list -- ceph-users@xxxxxxx
To unsubscribe send an email to ceph-users-leave@xxxxxxx