// note: this should be replaced shortly!
COMMAND("pg force_create_pg name=pgid,type=CephPgid", \
"force creation of pg <pgid>", "pg", "rw", "cli,rest")
-COMMAND("pg set_full_ratio name=ratio,type=CephFloat,range=0.0|1.0", \
- "set ratio at which pgs are considered full", "pg", "rw", "cli,rest")
-COMMAND("pg set_nearfull_ratio name=ratio,type=CephFloat,range=0.0|1.0", \
- "set ratio at which pgs are considered nearly full", \
- "pg", "rw", "cli,rest")
+COMMAND_WITH_FLAG("pg set_full_ratio name=ratio,type=CephFloat,range=0.0|1.0", \
+ "set ratio at which pgs are considered full", \
+ "pg", "rw", "cli,rest", FLAG(DEPRECATED))
+COMMAND_WITH_FLAG("pg set_nearfull_ratio " \
+ "name=ratio,type=CephFloat,range=0.0|1.0", \
+ "set ratio at which pgs are considered nearly full", \
+ "pg", "rw", "cli,rest", FLAG(DEPRECATED))
COMMAND("pg map name=pgid,type=CephPgid", "show mapping of pg to osds", \
"pg", "r", "cli,rest")
COMMAND("fsid", "show cluster FSID/UUID", "mon", "r", "cli,rest")
COMMAND("log name=logtext,type=CephString,n=N", \
"log supplied text to the monitor log", "mon", "rw", "cli,rest")
-COMMAND("log last name=num,type=CephInt,range=1,req=false", \
+COMMAND("log last "
+ "name=num,type=CephInt,range=1,req=false "
+ "name=level,type=CephChoices,strings=debug|info|sec|warn|error,req=false "
+ "name=channel,type=CephChoices,strings=*|cluster|audit,req=false", \
"print last few lines of the cluster log", \
"mon", "rw", "cli,rest")
COMMAND_WITH_FLAG("injectargs " \
COMMAND("status", "show cluster status", "mon", "r", "cli,rest")
COMMAND("health name=detail,type=CephChoices,strings=detail,req=false", \
"show cluster health", "mon", "r", "cli,rest")
+COMMAND("time-sync-status", "show time sync status", "mon", "r", "cli,rest")
COMMAND("df name=detail,type=CephChoices,strings=detail,req=false", \
"show cluster free space stats", "mon", "r", "cli,rest")
COMMAND("report name=tags,type=CephString,n=N,req=false", \
"mds", "r", "cli,rest")
COMMAND_WITH_FLAG("mds stop name=who,type=CephString", "stop mds", \
"mds", "rw", "cli,rest", FLAG(DEPRECATED))
-COMMAND("mds deactivate name=who,type=CephString", "stop mds", \
+COMMAND("mds deactivate name=who,type=CephString",
+ "clean up specified MDS rank (use with `set max_mds` to shrink cluster)", \
"mds", "rw", "cli,rest")
COMMAND_WITH_FLAG("mds set_max_mds " \
"name=maxmds,type=CephInt,range=0", \
"name=state,type=CephInt,range=0|20", \
"set mds state of <gid> to <numeric-state>", "mds", "rw", "cli,rest")
COMMAND("mds fail name=who,type=CephString", \
- "force mds to status failed", "mds", "rw", "cli,rest")
+ "Mark MDS failed: trigger a failover if a standby is available",
+ "mds", "rw", "cli,rest")
COMMAND("mds repaired name=rank,type=CephString", \
"mark a damaged MDS rank as no longer damaged", "mds", "rw", "cli,rest")
COMMAND("mds rm " \
COMMAND("mon rm " \
"name=name,type=CephString", \
"remove monitor named <name>", "mon", "rw", "cli,rest")
-COMMAND("mon feature list " \
+COMMAND("mon feature ls " \
"name=with_value,type=CephChoices,strings=--with-value,req=false", \
"list available mon map features to be set/unset", \
"mon", "r", "cli,rest")
"add or update crushmap position and weight for <name> with <weight> and location <args>", \
"osd", "rw", "cli,rest")
COMMAND("osd crush set-device-class " \
- "name=id,type=CephOsdName " \
- "name=class,type=CephString ", \
- "set the <class> of the device <name>", \
+ "name=class,type=CephString " \
+ "name=ids,type=CephString,n=N", \
+ "set the <class> of the osd(s) <id> [<id>...]," \
+ "or use <all|any|*> to set all.", \
"osd", "rw", "cli,rest")
COMMAND("osd crush create-or-move " \
"name=id,type=CephOsdName " \
"name=mode,type=CephChoices,strings=firstn|indep,req=false",
"create crush rule <name> to start from <root>, replicate across buckets of type <type>, using a choose mode of <firstn|indep> (default firstn; indep best for erasure pools)", \
"osd", "rw", "cli,rest")
+COMMAND("osd crush rule create-replicated " \
+ "name=name,type=CephString,goodchars=[A-Za-z0-9-_.] " \
+ "name=root,type=CephString,goodchars=[A-Za-z0-9-_.] " \
+ "name=type,type=CephString,goodchars=[A-Za-z0-9-_.] " \
+ "name=class,type=CephString,goodchars=[A-Za-z0-9-_.],req=false",
+ "create crush rule <name> for replicated pool to start from <root>, replicate across buckets of type <type>, using a choose mode of <firstn|indep> (default firstn; indep best for erasure pools)", \
+ "osd", "rw", "cli,rest")
COMMAND("osd crush rule create-erasure " \
"name=name,type=CephString,goodchars=[A-Za-z0-9-_.] " \
"name=profile,type=CephString,req=false,goodchars=[A-Za-z0-9-_.=]", \
"name=class,type=CephString,goodchars=[A-Za-z0-9-_]", \
"remove crush device class <class>", \
"osd", "rw", "cli,rest")
+COMMAND("osd crush class rename " \
+ "name=srcname,type=CephString,goodchars=[A-Za-z0-9-_] " \
+ "name=dstname,type=CephString,goodchars=[A-Za-z0-9-_]", \
+ "rename crush device class <srcname> to <dstname>", \
+ "osd", "rw", "cli,rest")
COMMAND("osd crush class ls", \
"list all crush device classes", \
"osd", "r", "cli,rest")
+COMMAND("osd crush class ls-osd " \
+ "name=class,type=CephString,goodchars=[A-Za-z0-9-_]", \
+ "list all osds belonging to the specific <class>", \
+ "osd", "r", "cli,rest")
COMMAND("osd setmaxosd " \
"name=newmax,type=CephInt,range=0", \
"set new maximum osd value", "osd", "rw", "cli,rest")
COMMAND("osd pg-upmap " \
"name=pgid,type=CephPgid " \
"name=id,type=CephOsdName,n=N", \
- "set pg_upmap mapping <pgid>:[<id> [<id>...]] primary <primary> (developers only)", \
+ "set pg_upmap mapping <pgid>:[<id> [<id>...]] (developers only)", \
"osd", "rw", "cli,rest")
COMMAND("osd rm-pg-upmap " \
"name=pgid,type=CephPgid", \
"clear pg_upmap mapping for <pgid> (developers only)", \
"osd", "rw", "cli,rest")
-
COMMAND("osd pg-upmap-items " \
"name=pgid,type=CephPgid " \
"name=id,type=CephOsdName,n=N", \
COMMAND("osd pool delete " \
"name=pool,type=CephPoolname " \
"name=pool2,type=CephPoolname,req=false " \
- "name=sure,type=CephChoices,strings=--yes-i-really-really-mean-it,req=false", \
+ "name=sure,type=CephString,req=false", \
"delete pool", \
"osd", "rw", "cli,rest")
COMMAND("osd pool rm " \
"rename <srcpool> to <destpool>", "osd", "rw", "cli,rest")
COMMAND("osd pool get " \
"name=pool,type=CephPoolname " \
- "name=var,type=CephChoices,strings=size|min_size|crash_replay_interval|pg_num|pgp_num|crush_rule|hashpspool|nodelete|nopgchange|nosizechange|write_fadvise_dontneed|noscrub|nodeep-scrub|hit_set_type|hit_set_period|hit_set_count|hit_set_fpp|auid|target_max_objects|target_max_bytes|cache_target_dirty_ratio|cache_target_dirty_high_ratio|cache_target_full_ratio|cache_min_flush_age|cache_min_evict_age|erasure_code_profile|min_read_recency_for_promote|all|min_write_recency_for_promote|fast_read|hit_set_grade_decay_rate|hit_set_search_last_n|scrub_min_interval|scrub_max_interval|deep_scrub_interval|recovery_priority|recovery_op_priority|scrub_priority|compression_mode|compression_algorithm|compression_required_ratio|compression_max_blob_size|compression_min_blob_size|csum_type|csum_min_block|csum_max_block", \
+ "name=var,type=CephChoices,strings=size|min_size|crash_replay_interval|pg_num|pgp_num|crush_rule|hashpspool|nodelete|nopgchange|nosizechange|write_fadvise_dontneed|noscrub|nodeep-scrub|hit_set_type|hit_set_period|hit_set_count|hit_set_fpp|use_gmt_hitset|auid|target_max_objects|target_max_bytes|cache_target_dirty_ratio|cache_target_dirty_high_ratio|cache_target_full_ratio|cache_min_flush_age|cache_min_evict_age|erasure_code_profile|min_read_recency_for_promote|all|min_write_recency_for_promote|fast_read|hit_set_grade_decay_rate|hit_set_search_last_n|scrub_min_interval|scrub_max_interval|deep_scrub_interval|recovery_priority|recovery_op_priority|scrub_priority|compression_mode|compression_algorithm|compression_required_ratio|compression_max_blob_size|compression_min_blob_size|csum_type|csum_min_block|csum_max_block", \
"get pool parameter <var>", "osd", "r", "cli,rest")
COMMAND("osd pool set " \
"name=pool,type=CephPoolname " \
- "name=var,type=CephChoices,strings=size|min_size|crash_replay_interval|pg_num|pgp_num|crush_rule|hashpspool|nodelete|nopgchange|nosizechange|write_fadvise_dontneed|noscrub|nodeep-scrub|hit_set_type|hit_set_period|hit_set_count|hit_set_fpp|use_gmt_hitset|debug_fake_ec_pool|target_max_bytes|target_max_objects|cache_target_dirty_ratio|cache_target_dirty_high_ratio|cache_target_full_ratio|cache_min_flush_age|cache_min_evict_age|auid|min_read_recency_for_promote|min_write_recency_for_promote|fast_read|hit_set_grade_decay_rate|hit_set_search_last_n|scrub_min_interval|scrub_max_interval|deep_scrub_interval|recovery_priority|recovery_op_priority|scrub_priority|compression_mode|compression_algorithm|compression_required_ratio|compression_max_blob_size|compression_min_blob_size|csum_type|csum_min_block|csum_max_block|allow_ec_overwrites " \
+ "name=var,type=CephChoices,strings=size|min_size|crash_replay_interval|pg_num|pgp_num|crush_rule|hashpspool|nodelete|nopgchange|nosizechange|write_fadvise_dontneed|noscrub|nodeep-scrub|hit_set_type|hit_set_period|hit_set_count|hit_set_fpp|use_gmt_hitset|target_max_bytes|target_max_objects|cache_target_dirty_ratio|cache_target_dirty_high_ratio|cache_target_full_ratio|cache_min_flush_age|cache_min_evict_age|auid|min_read_recency_for_promote|min_write_recency_for_promote|fast_read|hit_set_grade_decay_rate|hit_set_search_last_n|scrub_min_interval|scrub_max_interval|deep_scrub_interval|recovery_priority|recovery_op_priority|scrub_priority|compression_mode|compression_algorithm|compression_required_ratio|compression_max_blob_size|compression_min_blob_size|csum_type|csum_min_block|csum_max_block|allow_ec_overwrites " \
"name=val,type=CephString " \
"name=force,type=CephChoices,strings=--yes-i-really-mean-it,req=false", \
"set pool parameter <var> to <val>", "osd", "rw", "cli,rest")
COMMAND("mgr dump " \
"name=epoch,type=CephInt,range=0,req=false", \
"dump the latest MgrMap", \
- "mgr", "rw", "cli,rest")
+ "mgr", "r", "cli,rest")
COMMAND("mgr fail name=who,type=CephString", \
"treat the named manager daemon as failed", "mgr", "rw", "cli,rest")
+COMMAND("mgr module ls",
+ "list active mgr modules", "mgr", "r", "cli,rest")
+COMMAND("mgr module enable " \
+ "name=module,type=CephString " \
+ "name=force,type=CephChoices,strings=--force,req=false",
+ "enable mgr module", "mgr", "rw", "cli,rest")
+COMMAND("mgr module disable " \
+ "name=module,type=CephString",
+ "disable mgr module", "mgr", "rw", "cli,rest")