profile_grants.push_back(MonCapGrant("mon", MON_CAP_R));
profile_grants.push_back(MonCapGrant("pg", MON_CAP_R | MON_CAP_W));
profile_grants.push_back(MonCapGrant("log", MON_CAP_W));
+ StringConstraint constraint(StringConstraint::MATCH_TYPE_REGEX,
+ string("osd_mclock_max_capacity_iops_(hdd|ssd)"));
+ profile_grants.push_back(MonCapGrant("config set", "name", constraint));
}
if (profile == "mds") {
profile_grants.push_back(MonCapGrant("mds", MON_CAP_ALL));
profile_grants.push_back(MonCapGrant("auth rm"));
// tell commands (this is a bit of a kludge)
profile_grants.push_back(MonCapGrant("smart"));
+ // allow the Telemetry module to gather heap and mempool metrics
+ profile_grants.push_back(MonCapGrant("heap"));
+ profile_grants.push_back(MonCapGrant("dump_mempools"));
}
if (profile == "osd" || profile == "mds" || profile == "mon" ||
profile == "mgr") {