Signed-off-by: Sage Weil <sage@redhat.com>
ceph osd crush rule create-replicated foo-ssd default host ssd
ceph osd crush rule create-replicated foo-hdd default host hdd
+ceph osd erasure-code-profile set ec-foo-ssd crush-device-class=ssd m=2 k=2
+ceph osd pool create ec-foo 2 erasure ec-foo-ssd
+ceph osd pool rm ec-foo ec-foo --yes-i-really-really-mean-it
+
ceph osd crush rule ls | grep foo
ceph osd crush rule rm foo
err |= to_string("crush-failure-domain", profile,
&rule_failure_domain,
DEFAULT_RULE_FAILURE_DOMAIN, ss);
+ err |= to_string("crush-device-class", profile,
+ &rule_device_class,
+ "", ss);
if (err)
return err;
_profile = profile;
name,
rule_root,
rule_failure_domain,
- "",
+ rule_device_class,
"indep",
pg_pool_t::TYPE_ERASURE,
ss);
// for CRUSH rule
std::string rule_root;
std::string rule_failure_domain;
+ std::string rule_device_class;
~ErasureCode() override {}