Provided by: ceph-common_19.2.1-0ubuntu0.24.04.2_amd64 bug

NAME

       crushdiff - ceph crush map test tool

SYNOPSIS

       crushdiff [ --osdmap osdmap ] [ --pg-dump pg-dump ]
       [ --compiled ] [ --verbose ] command crushmap

DESCRIPTION

       crushdiff  is a utility that lets you test the effect of a crushmap change: number of pgs, objects, bytes
       moved. This is a wrapper around osdmaptool(8), relying on its --test-map-pgs-dump option to get the  list
       of changed pgs. Additionally it uses pg stats to calculate the numbers of objects and bytes moved.

       By  default,  crushdiff  will  use  the cluster current osdmap and pg stats, which requires access to the
       cluster. Though one can use the --osdmap and --pg-dump options to test against previously obtained data.

OPTIONS

       --compiled
              The input/output crushmap is compiled. If the  options  is  not  specified  the  expected/returned
              crushmap is in txt (decompiled) format.

       --pg-dump <pg-dump>
              JSON  output  of ceph pg dump. If not specified crushdiff will try to get data running the command
              itself.

       --osdmap <osdmap>
              The cluster osdmap, obtained with ceph osd getmap command. If not specified crushdiff will try  to
              get data running the command itself.

       --verbose
              Produce diagnostic output.

COMMANDS

       compare crushmap
              Compare the crushmap from crushmap file with the crushmap from the cluster osdmap. The output will
              show the expected number of pgs, objects, bytes moved when the new crushmap is installed.

       export crushmap
              Export crushmap to crushmap file from the cluster osdmap.

       import crushmap
              Import crushmap from crushmap file to the cluster osdmap.

EXAMPLE

       Get the current crushmap:

          crushdiff export cm.txt

       Edit the map:

          $EDITOR cm.txt

       Check the result:

          crushdiff compare cm.txt

          79/416 (18.99%) pgs affected
          281/1392 (20.19%) objects affected
          80/1248 (6.41%) pg shards to move
          281/4176 (6.73%) pg object shards to move
          730.52Mi/10.55Gi (6.76%) bytes to move

       When  running  with --verbose option the output will also contain detailed information about the affected
       pgs, like below:

          4.3     [0, 2, 1] -> [1, 4, 2]
          4.b     [0, 1, 3] -> [2, 1, 3]
          4.c     [4, 0, 1] -> [4, 1, 2]

       i.e. a pg number, and its old and the new osd active sets.

       If the result is satisfactory install the updated map:

          crushdiff import cm.txt

AVAILABILITY

       crushdiff is part of Ceph, a massively scalable, open-source, distributed storage system.   Please  refer
       to the Ceph documentation at https://docs.ceph.com for more information.

SEE ALSO

       ceph(8), crushtool(8), osdmaptool(8),

COPYRIGHT

       2010-2025,  Inktank  Storage,  Inc.  and  contributors. Licensed under Creative Commons Attribution Share
       Alike 3.0 (CC-BY-SA-3.0)

dev                                               Jun 24, 2025                                      CRUSHDIFF(8)