A tool for CurveFS & CurveBs.
- curve tool usage
install curve tool
wget https://curve-tool.nos-eastchina1.126.net/release/curve-latest
chmod +x curve-latest
mv curve-latest /usr/bin/curveset configure file
wget https://raw.githubusercontent.com/opencurve/curve/master/tools-v2/pkg/config/curve.yamlor
wget https://curve-tool.nos-eastchina1.126.net/config/curve.yaml
Please modify the mdsAddr, mdsDummyAddr, etcdAddr under curvefs/bs in the template.yaml file as required
mv curve.yaml ~/.curve/curve.yamlor
mv curve.yaml /etc/curve/curve.yamlHere's how to use the tool
curve COMMAND [options]When you are not sure how to use a command, --help can give you an example of use:
curve COMMAND --helpFor example:
curve fs status mds --help
Usage: curve fs status mds [flags]
get the inode usage of curvefs
Flags:
-c, --conf string config file (default is $HOME/.curve/curve.yaml or /etc/curve/curve.yaml)
-f, --format string Output format (json|plain) (default "plain")
-h, --help Print usage
--httptimeout duration http timeout (default 500ms)
--mdsaddr string mds address, should be like 127.0.0.1:6700,127.0.0.1:6701,127.0.0.1:6702
--mdsdummyaddr string mds dummy address, should be like 127.0.0.1:7700,127.0.0.1:7701,127.0.0.1:7702
--showerror display all errors in command
Examples:
$ curve fs status mdsIn addition, this tool reads the configuration from $HOME/.curve/curve.yaml or /etc/curve/curve.yaml by default,
and can be specified by --conf or -c.
show the version of curve tool
Usage:
curve --versionOutput:
curve v1.2generate curve bash/zsh/fish completion script
Take bash as an example:
curve completion bash > /etc/bash_completion.d/curveIf you perform completion you get the following error:
curve [tab]bash: _get_comp_words_by_ref: command not foundYou need to install bash-completion:
sudo apt install bash-completion
source /usr/share/bash-completion/bash_completionUpgrade curve to latest version
Usage:
curve upgradeIf you want to upgrade to the specified version(ee500438):
CURVE_VERSION=ee500438 curve upgradeIf you are in an offline environment, you can also set up a temporary http server to provide upgrade services for other machines:
# 192.168.1.1
echo "123456" > __version
cp curve curve-123456
python3 -m http.server 1234In this way, it can be upgraded on other machines
CURVE_BASE_URL=http://192.168.1.1:1234/ curve upgradecheck copysets health in curvefs
Usage:
curve fs check copyset --copysetid 1 --poolid 1Output:
+------------+-----------+--------+--------+---------+
| COPYSETKEY | COPYSETID | POOLID | STATUS | EXPLAIN |
+------------+-----------+--------+--------+---------+
| 4294967297 | 1 | 1 | ok | |
+------------+-----------+--------+--------+---------+create a fs in curvefs
Usage:
curve fs create fs --fsname test3Output:
+--------+-------------------------------------------+
| FSNAME | RESULT |
+--------+-------------------------------------------+
| test3 | fs exist, but s3 info is not inconsistent |
+--------+-------------------------------------------+create curvefs topology
Usage:
curve fs create topology --clustermap topology.jsonOutput:
+-------------------+--------+-----------+--------+
| NAME | TYPE | OPERATION | PARENT |
+-------------------+--------+-----------+--------+
| pool2 | pool | del | |
+-------------------+--------+ +--------+
| zone4 | zone | | pool2 |
+-------------------+--------+ +--------+
| **.***.***.**_3_0 | server | | zone4 |
+-------------------+--------+-----------+--------+delete a fs from curvefs
Usage:
curve fs delete fs --fsname test1
WARNING:Are you sure to delete fs test1?
please input [test1] to confirm: test1Output:
+--------+-------------------------------------+
| FSNAME | RESULT |
+--------+-------------------------------------+
| test1 | delete fs failed!, error is FS_BUSY |
+--------+-------------------------------------+list all copyset info of the curvefs
Usage:
curve fs list copysetOutput:
+------------+-----------+--------+-------+--------------------------------+------------+
| KEY | COPYSETID | POOLID | EPOCH | LEADERPEER | PEERNUMBER |
+------------+-----------+--------+-------+--------------------------------+------------+
| 4294967302 | 6 | 1 | 2 | id:1 | 3 |
| | | | | address:"**.***.***.**:6801:0" | |
+------------+-----------+ +-------+ +------------+
| 4294967303 | 7 | | 1 | | 3 |
| | | | | | |
+------------+-----------+ +-------+ +------------+
| 4294967304 | 8 | | 1 | | 3 |
| | | | | | |
+------------+-----------+ +-------+ +------------+
| 4294967307 | 11 | | 1 | | 3 |
| | | | | | |
+------------+-----------+ +-------+--------------------------------+------------+
| 4294967297 | 1 | | 1 | id:2 | 3 |
| | | | | address:"**.***.***.**:6802:0" | |
+------------+-----------+ +-------+ +------------+
| 4294967301 | 5 | | 1 | | 3 |
| | | | | | |
+------------+-----------+ +-------+ +------------+
| 4294967308 | 12 | | 1 | | 3 |
| | | | | | |
+------------+-----------+ +-------+--------------------------------+------------+
| 4294967298 | 2 | | 1 | id:3 | 3 |
| | | | | address:"**.***.***.**:6800:0" | |
+------------+-----------+ +-------+ +------------+
| 4294967299 | 3 | | 1 | | 3 |
| | | | | | |
+------------+-----------+ +-------+ +------------+
| 4294967300 | 4 | | 1 | | 3 |
| | | | | | |
+------------+-----------+ +-------+ +------------+
| 4294967305 | 9 | | 1 | | 3 |
| | | | | | |
+------------+-----------+ +-------+ +------------+
| 4294967306 | 10 | | 1 | | 3 |
| | | | | | |
+------------+-----------+--------+-------+--------------------------------+------------+list all fs info in the curvefs
Usage:
curve fs list fsOutput:
+----+-------+--------+--------------+-----------+---------+----------+-----------+----------+
| ID | NAME | STATUS | CAPACITY | BLOCKSIZE | FSTYPE | SUMINDIR | OWNER | MOUNTNUM |
+----+-------+--------+--------------+-----------+---------+----------+-----------+----------+
| 2 | test1 | INITED | 107374182400 | 1048576 | TYPE_S3 | false | anonymous | 1 |
+----+-------+--------+--------------+-----------+ +----------+ +----------+
| 3 | test3 | INITED | 107374182400 | 1048576 | | false | | 0 |
+----+-------+--------+--------------+-----------+---------+----------+-----------+----------+list all mountpoint of the curvefs
Usage:
curve fs list mountpointOutput:
+------+--------+-------------------------------------------------------------------+
| FSID | FSNAME | MOUNTPOINT |
+------+--------+-------------------------------------------------------------------+
| 2 | test1 | siku-QiTianM420-N000:9002:/curvefs/client/mnt/home/siku/temp/mnt1 |
+ + +-------------------------------------------------------------------+
| | | siku-QiTianM420-N000:9003:/curvefs/client/mnt/home/siku/temp/mnt2 |
+------+--------+-------------------------------------------------------------------+list partition in curvefs by fsid
Usage:
curve fs list partitionOutput:
+-------------+------+--------+-----------+----------+----------+-----------+
| PARTITIONID | FSID | POOLID | COPYSETID | START | END | STATUS |
+-------------+------+--------+-----------+----------+----------+-----------+
| 14 | 2 | 1 | 10 | 1048676 | 2097351 | READWRITE |
+-------------+ + + +----------+----------+-----------+
| 20 | | | | 7340732 | 8389407 | READWRITE |
+-------------+ + +-----------+----------+----------+-----------+
| 13 | | | 11 | 0 | 1048675 | READWRITE |
+-------------+ + + +----------+----------+-----------+
| 16 | | | | 3146028 | 4194703 | READWRITE |
+-------------+ + + +----------+----------+-----------+
| 22 | | | | 9438084 | 10486759 | READWRITE |
+-------------+ + +-----------+----------+----------+-----------+
| 21 | | | 5 | 8389408 | 9438083 | READWRITE |
+-------------+ + +-----------+----------+----------+-----------+
| 23 | | | 7 | 10486760 | 11535435 | READWRITE |
+-------------+ + + +----------+----------+-----------+
| 24 | | | | 11535436 | 12584111 | READWRITE |
+-------------+ + +-----------+----------+----------+-----------+
| 15 | | | 8 | 2097352 | 3146027 | READWRITE |
+-------------+ + + +----------+----------+-----------+
| 18 | | | | 5243380 | 6292055 | READWRITE |
+-------------+ + +-----------+----------+----------+-----------+
| 17 | | | 9 | 4194704 | 5243379 | READWRITE |
+-------------+ + + +----------+----------+-----------+
| 19 | | | | 6292056 | 7340731 | READWRITE |
+-------------+------+ +-----------+----------+----------+-----------+
| 26 | 3 | | 2 | 1048676 | 2097351 | READWRITE |
+-------------+ + + +----------+----------+-----------+
| 30 | | | | 5243380 | 6292055 | READWRITE |
+-------------+ + +-----------+----------+----------+-----------+
| 34 | | | 3 | 9438084 | 10486759 | READWRITE |
+-------------+ + +-----------+----------+----------+-----------+
| 29 | | | 4 | 4194704 | 5243379 | READWRITE |
+-------------+ + + +----------+----------+-----------+
| 32 | | | | 7340732 | 8389407 | READWRITE |
+-------------+ + +-----------+----------+----------+-----------+
| 35 | | | 5 | 10486760 | 11535435 | READWRITE |
+-------------+ + + +----------+----------+-----------+
| 27 | | | | 2097352 | 3146027 | READWRITE |
+-------------+ + + +----------+----------+-----------+
| 33 | | | | 8389408 | 9438083 | READWRITE |
+-------------+ + +-----------+----------+----------+-----------+
| 25 | | | 6 | 0 | 1048675 | READWRITE |
+-------------+ + + +----------+----------+-----------+
| 36 | | | | 11535436 | 12584111 | READWRITE |
+-------------+ + +-----------+----------+----------+-----------+
| 28 | | | 8 | 3146028 | 4194703 | READWRITE |
+-------------+ + +-----------+----------+----------+-----------+
| 31 | | | 9 | 6292056 | 7340731 | READWRITE |
+-------------+------+--------+-----------+----------+----------+-----------+list the topology of the curvefs
Usage:
curve fs list topologyOutput:
+----+------------+--------------------+------------+-----------------------+
| ID | TYPE | NAME | CHILDTYPE | CHILDLIST |
+----+------------+--------------------+------------+-----------------------+
| 1 | pool | pool1 | zone | zone3 zone2 zone1 |
+----+------------+--------------------+------------+-----------------------+
| 3 | zone | zone3 | server | **.***.***.**_2_0 |
+----+ +--------------------+ +-----------------------+
| 2 | | zone2 | | **.***.***.**_1_0 |
+----+ +--------------------+ +-----------------------+
| 1 | | zone1 | | **.***.***.**_0_0 |
+----+------------+--------------------+------------+-----------------------+
| 3 | server | **.***.***.**_2_0 | metaserver | curvefs-metaserver.2 |
+----+ +--------------------+ +-----------------------+
| 2 | | **.***.***.**_1_0 | | curvefs-metaserver.1 |
+----+ +--------------------+ +-----------------------+
| 1 | | **.***.***.**_0_0 | | curvefs-metaserver.3 |
+----+------------+--------------------+------------+-----------------------+
| 3 | metaserver | curvefs-metaserver | | |
+----+ +--------------------+------------+-----------------------+
| 2 | | curvefs-metaserver | | |
+----+ +--------------------+------------+-----------------------+
| 1 | | curvefs-metaserver | | |
+----+------------+--------------------+------------+-----------------------+list the space usage of the curvefs
Usage:
curve fs list space --fs testOutput:
+--------+----------+---------+----------+
| FSNAME | CAPACITY | USED | INODENUM |
+--------+----------+---------+----------+
| test | 10PB | 6.71GiB | 7313 |
+--------+----------+---------+----------+query copysets in curvefs
Usage:
curve fs query copyset --copysetid 1 --poolid 1Output:
+------------+-----------+--------+--------------------------------------+-------+
| copysetKey | copysetId | poolId | leaderPeer | epoch |
+------------+-----------+--------+--------------------------------------+-------+
| 4294967297 | 1 | 1 | id:2 address:"**.***.***.**:6802:0" | 1 |
+------------+-----------+--------+--------------------------------------+-------+query fs in curvefs by fsname or fsid
Usage:
curve fs query fs --fsname test1Output:
+----+-------+--------+--------------+-----------+---------+----------+-----------+----------+
| id | name | status | capacity | blocksize | fsType | sumInDir | owner | mountNum |
+----+-------+--------+--------------+-----------+---------+----------+-----------+----------+
| 2 | test1 | INITED | 107374182400 | 1048576 | TYPE_S3 | false | anonymous | 2 |
+----+-------+--------+--------------+-----------+---------+----------+-----------+----------+query the inode of fs
Usage:
curve fs query inode --fsid 2 --inodeid 5243380Output:
+-------+----------+-----------+---------+-------+--------+
| fs id | inode id | length | type | nlink | parent |
+-------+----------+-----------+---------+-------+--------+
| 2 | 5243380 | 352321536 | TYPE_S3 | 1 | [1] |
+-------+----------+-----------+---------+-------+--------+query metaserver in curvefs by metaserverid or metaserveraddr
Usage:
curve fs query metaserver --metaserveraddr **.***.***.**:6801,**.***.***.**:6802Output:
+----+--------------------+--------------------+--------------------+-------------+
| id | hostname | internalAddr | externalAddr | onlineState |
+----+--------------------+--------------------+--------------------+-------------+
| 1 | curvefs-metaserver | **.***.***.**:6801 | **.***.***.**:6801 | ONLINE |
| 2 | curvefs-metaserver | **.***.***.**:6802 | **.***.***.**:6802 | ONLINE |
+----+--------------------+--------------------+--------------------+-------------+query the copyset of partition
Usage:
curve fs query partition --partitionid 14Output:
+----+--------+-----------+--------+----------------------+
| id | poolId | copysetId | peerId | peerAddr |
+----+--------+-----------+--------+----------------------+
| 14 | 1 | 10 | 1 | **.***.***.**:6801:0 |
| 14 | 1 | 10 | 2 | **.***.***.**:6802:0 |
| 14 | 1 | 10 | 3 | **.***.***.**:6800:0 |
+----+--------+-----------+--------+----------------------+get status of mds
Usage:
curve fs status mdsOutput:
+--------------------+--------------------+----------------+----------+
| addr | dummyAddr | version | status |
+--------------------+--------------------+----------------+----------+
| **.***.***.**:6700 | **.***.***.**:7700 | 8fc48476+debug | follower |
| **.***.***.**:6701 | **.***.***.**:7701 | 8fc48476+debug | follower |
| **.***.***.**:6702 | **.***.***.**:7702 | 8fc48476+debug | leader |
+--------------------+--------------------+----------------+----------+get status of metaserver
Usage:
curve fs status metaserverOutput:
+--------------------+--------------------+----------------+--------+
| externalAddr | internalAddr | version | status |
+--------------------+--------------------+----------------+--------+
| **.***.***.**:6800 | **.***.***.**:6800 | 8fc48476+debug | online |
| **.***.***.**:6802 | **.***.***.**:6802 | 8fc48476+debug | online |
| **.***.***.**:6801 | **.***.***.**:6801 | 8fc48476+debug | online |
+--------------------+--------------------+----------------+--------+get status of etcd
Usage:
curve fs status etcdOutput:
+---------------------+---------+----------+
| addr | version | status |
+---------------------+---------+----------+
| **.***.***.**:23790 | 3.4.10 | follower |
| **.***.***.**:23791 | 3.4.10 | follower |
| **.***.***.**:23792 | 3.4.10 | leader |
+---------------------+---------+----------+get status of copyset
Usage:
curve fs status copysetOutput:
+------------+-----------+--------+--------+---------+
| copysetKey | copysetId | poolId | status | explain |
+------------+-----------+--------+--------+---------+
| 4294967297 | 1 | 1 | ok | |
| 4294967298 | 2 | 1 | ok | |
| 4294967299 | 3 | 1 | ok | |
| 4294967300 | 4 | 1 | ok | |
| 4294967301 | 5 | 1 | ok | |
| 4294967302 | 6 | 1 | ok | |
| 4294967303 | 7 | 1 | ok | |
| 4294967304 | 8 | 1 | ok | |
| 4294967305 | 9 | 1 | ok | |
| 4294967306 | 10 | 1 | ok | |
| 4294967307 | 11 | 1 | ok | |
| 4294967308 | 12 | 1 | ok | |
+------------+-----------+--------+--------+---------+get status of cluster
Usage:
curve fs status clusterOutput:
etcd:
+---------------------+---------+----------+
| addr | version | status |
+---------------------+---------+----------+
| **.***.***.**:23790 | 3.4.10 | follower |
| **.***.***.**:23791 | 3.4.10 | follower |
| **.***.***.**:23792 | 3.4.10 | leader |
+---------------------+---------+----------+
mds:
+--------------------+--------------------+----------------+----------+
| addr | dummyAddr | version | status |
+--------------------+--------------------+----------------+----------+
| **.***.***.**:6700 | **.***.***.**:7700 | 8fc48476+debug | follower |
| **.***.***.**:6701 | **.***.***.**:7701 | 8fc48476+debug | follower |
| **.***.***.**:6702 | **.***.***.**:7702 | 8fc48476+debug | leader |
+--------------------+--------------------+----------------+----------+
meataserver:
+--------------------+--------------------+----------------+--------+
| externalAddr | internalAddr | version | status |
+--------------------+--------------------+----------------+--------+
| **.***.***.**:6800 | **.***.***.**:6800 | 8fc48476+debug | online |
| **.***.***.**:6802 | **.***.***.**:6802 | 8fc48476+debug | online |
| **.***.***.**:6801 | **.***.***.**:6801 | 8fc48476+debug | online |
+--------------------+--------------------+----------------+--------+
copyset:
+------------+-----------+--------+--------+---------+
| copysetKey | copysetId | poolId | status | explain |
+------------+-----------+--------+--------+---------+
| 4294967297 | 1 | 1 | ok | |
| 4294967298 | 2 | 1 | ok | |
| 4294967299 | 3 | 1 | ok | |
| 4294967300 | 4 | 1 | ok | |
| 4294967301 | 5 | 1 | ok | |
| 4294967302 | 6 | 1 | ok | |
| 4294967303 | 7 | 1 | ok | |
| 4294967304 | 8 | 1 | ok | |
| 4294967305 | 9 | 1 | ok | |
| 4294967306 | 10 | 1 | ok | |
| 4294967307 | 11 | 1 | ok | |
| 4294967308 | 12 | 1 | ok | |
+------------+-----------+--------+--------+---------+
Cluster health is: okumount fs from the curvefs cluster
Usage:
curve fs umount fs --fsname test1 --mountpoint siku-QiTianM420-N000:9002:/curvefs/client/mnt/home/siku/temp/mnt1Output:
+--------+-------------------------------------------------------------------+---------+
| fsName | mountpoint | result |
+--------+-------------------------------------------------------------------+---------+
| test1 | siku-QiTianM420-N000:9003:/curvefs/client/mnt/home/siku/temp/mnt2 | success |
+--------+-------------------------------------------------------------------+---------+get the inode usage of curvefs
Usage:
curve fs usage inodeOutput:
+------+----------------+-----+
| fsId | fsType | num |
+------+----------------+-----+
| 2 | inode_num | 3 |
| 2 | type_directory | 1 |
| 2 | type_file | 0 |
| 2 | type_s3 | 2 |
| 2 | type_sym_link | 0 |
| 3 | inode_num | 1 |
| 3 | type_directory | 1 |
| 3 | type_file | 0 |
| 3 | type_s3 | 0 |
| 3 | type_sym_link | 0 |
+------+----------------+-----+get the usage of metadata in curvefs
Usage:
curve fs usage metadataOutput:
+--------------------+---------+---------+---------+
| metaserverAddr | total | used | left |
+--------------------+---------+---------+---------+
| **.***.***.**:6800 | 2.0 TiB | 182 GiB | 1.8 TiB |
| **.***.***.**:6802 | 2.0 TiB | 182 GiB | 1.8 TiB |
| **.***.***.**:6801 | 2.0 TiB | 182 GiB | 1.8 TiB |
+--------------------+---------+---------+---------+When using object storage with CurveFS, our data is stored remotely on platforms like MinIO or AWS S3. Each time we access a file within the CurveFS mount, we have to fetch the content from the remote platform. This process involves overhead like network connections, file writing, and memory access.
To alleviate the wait when users require a file, the warmup tool allows users to pre-fetch files of interest in advance. This way, the needed files are readily available when users need them.
Initiate warming up for either a file or directory, or provide a single file (file list) containing a list of files and directories you want to warm up.
Usage:
curve fs warmup add [--filelist] <target>
curve fs warmup add /mnt/curvefs/warmup
curve fs warmup add --filelist /mnt/curvefs/warmup.list
curve fs warmup add /mnt/curvefs/warmupwill warmup a file(directory).
curve fs warmup add --filelist /mnt/curvefs/warmup.listwill warmup a filelist.
Cancel a warmup job that's currently in progress for either a single file or directory, or for a list of files and directories contained within a file list.
Usage:
curve fs warmup cancel [--filelist] <target>
curve fs warmup cancel /mnt/curvefs/warmup
curve fs warmup cancel --filelist /mnt/curvefs/warmup.list
curve fs warmup cancel /mnt/curvefs/warmupwill cancel a warmup job running on the speicfied file(directory).
curve fs warmup cancel --filelist /mnt/curvefs/warmup.listwill cancel a warmup job running on the speicfied filelist.
Display a list of all currently active warmup jobs initiated within the specified CurveFS filesystem.
Usage:
curve fs warmup list <curvefs mount path>
curve fs warmup list /mnt/curvefs
curve fs warmup list /mnt/curvefswill list out all the running warmup jobs within the specified CurveFS filesystem mount path.
Check the status of a warmup job for either a single file or directory, or for a list of files and directories contained within a file list.
Usage:
curve fs warmup query <target>
curve fs warmup query /mnt/curvefs/warmup
curve fs warmup query /mnt/curvefs/warmupwill display the warmup job progress running on the specified target.
list all logical pool information
Usage:
curve bs list logical-poolOutput:
+----+-------+-----------+----------+-------+------+--------+------+--------+---------+
| ID | NAME | PHYPOOLID | TYPE | ALLOC | SCAN | TOTAL | USED | LEFT | RECYCLE |
+----+-------+-----------+----------+-------+------+--------+------+--------+---------+
| 1 | pool1 | 1 | PAGEFILE | ALLOW | true | 44 GiB | 0 B | 44 GiB | 0 B |
+----+-------+-----------+----------+-------+------+--------+------+--------+---------+list all server information in curvebs
Usage:
curve bs list serverOutput:
+----+---------------------+------+---------+-------------------+-------------------+
| ID | HOSTNAME | ZONE | PHYPOOL | INTERNALADDR | EXTERNALADDR |
+----+---------------------+------+---------+-------------------+-------------------+
| 1 | ***************_0_0 | 1 | 1 | **.***.**.**:**** | **.***.**.**:**** |
+----+---------------------+------+ +-------------------+-------------------+
| 2 | ***************_1_0 | 2 | | **.***.**.**:**** | **.***.**.**:**** |
+----+---------------------+------+ +-------------------+-------------------+
| 3 | ***************_2_0 | 3 | | **.***.**.**:**** | **.***.**.**:**** |
+----+---------------------+------+---------+-------------------+-------------------+list all client information in curvebs
curve bs list clientOutput:
+------------+------+
| IP | PORT |
+------------+------+
| 172.17.0.2 | 9000 |
+------------+------+list dir information in curvebs
curve bs list dir --path /Output:
+------+-------------+----------+-----------------+------------+---------------------+---------------+-------------+
| ID | FILENAME | PARENTID | FILETYPE | OWNER | CTIME | ALLOCATEDSIZE | FILESIZE |
+------+-------------+----------+-----------------+------------+---------------------+---------------+-------------+
| 1 | /RecycleBin | 0 | INODE_DIRECTORY | root | 2022-11-12 16:38:25 | 0 B | 0 B |
+------+-------------+----------+-----------------+------------+---------------------+---------------+-------------+show curvebs all disk type space, include total space and used space
curve bs list spaceOutput:
+----------+---------+---------+---------+------------+---------+
| TYPE | TOTAL | USED | LEFT | RECYCLABLE | CREATED |
+----------+---------+---------+---------+------------+---------+
| physical | *** GiB | *** GiB | *** GiB | - | - |
+----------+---------+---------+---------+------------+---------+
| logical | *** GiB | *** GiB | *** GiB | *** GiB | *** GiB |
+----------+---------+---------+---------+------------+---------+list chunkserver information in curvebs
curve bs list chunkserverOutput:
+----+------+-----------+------+-----------+------------+------------+-----------------------------------------------+--------------+-------------+------------------+-----------+
| ID | TYPE | IP | PORT | RWSTATUS | DISKSTATE | COPYSETNUM | MOUNTPOINT | DISKCAPACITY | DISKUSED | UNHEALTHYCOPYSET | EXTADDR |
+----+------+-----------+------+-----------+------------+------------+-----------------------------------------------+--------------+-------------+------------------+-----------+
| 1 | nvme | 127.0.0.1 | 8201 | READWRITE | DISKNORMAL | 100 | local:///curvebs/playground/chunkserver1/data | 39 GiB | 42140479488 | 0 % | 127.0.0.1 |
+----+ + +------+ + +------------+-----------------------------------------------+--------------+-------------+------------------+ +
| 2 | | | 8202 | | | 100 | local:///curvebs/playground/chunkserver2/data | 39 GiB | 42140479488 | 0 % | |
+----+ + +------+ + +------------+-----------------------------------------------+--------------+-------------+------------------+ +
| 3 | | | 8200 | | | 100 | local:///curvebs/playground/chunkserver0/data | 39 GiB | 42140479488 | 0 % | |
+----+------+-----------+------+-----------+------------+------------+-----------------------------------------------+--------------+-------------+------------------+-----------+list curvebs all copyset that scanning is false
curve bs list scan-statusOutput:
+-------------+-----------+
| LOGICALPOOL | COPYSETID |
+-------------+-----------+
| 1 | 1 |
+-------------+-----------+
| 1 | 10 |
+-------------+-----------+
| 1 | 100 |
+-------------+-----------+
| 1 | 11 |
+-------------+-----------+
| 1 | 12 |
+-------------+-----------+
| 1 | 13 |
+-------------+-----------+
| 1 | 14 |
+-------------+-----------+
| 1 | 15 |
+-------------+-----------+
| 1 | 16 |
+-------------+-----------+
| 1 | 17 |
+-------------+-----------+
| 1 | 18 |
+-------------+-----------+
| 1 | 19 |
+-------------+-----------+
| 1 | 2 |
+-------------+-----------+
| 1 | 20 |
+-------------+-----------+
| 1 | 21 |
+-------------+-----------+
| 1 | 22 |
+-------------+-----------+
| 1 | 23 |
+-------------+-----------+
| 1 | 24 |
+-------------+-----------+
| 1 | 25 |
+-------------+-----------+
| 1 | 26 |
+-------------+-----------+
| 1 | 27 |
+-------------+-----------+
| 1 | 28 |
+-------------+-----------+
| 1 | 29 |
+-------------+-----------+
| 1 | 3 |
+-------------+-----------+
| 1 | 30 |
+-------------+-----------+
| 1 | 31 |
+-------------+-----------+
| 1 | 32 |
+-------------+-----------+
| 1 | 33 |
+-------------+-----------+
| 1 | 34 |
+-------------+-----------+
| 1 | 35 |
+-------------+-----------+
| 1 | 36 |
+-------------+-----------+
| 1 | 37 |
+-------------+-----------+
| 1 | 38 |
+-------------+-----------+
| 1 | 39 |
+-------------+-----------+
| 1 | 4 |
+-------------+-----------+
| 1 | 40 |
+-------------+-----------+
| 1 | 41 |
+-------------+-----------+
| 1 | 42 |
+-------------+-----------+
| 1 | 43 |
+-------------+-----------+
| 1 | 44 |
+-------------+-----------+
| 1 | 45 |
+-------------+-----------+
| 1 | 46 |
+-------------+-----------+
| 1 | 47 |
+-------------+-----------+
| 1 | 48 |
+-------------+-----------+
| 1 | 49 |
+-------------+-----------+
| 1 | 5 |
+-------------+-----------+
| 1 | 50 |
+-------------+-----------+
| 1 | 51 |
+-------------+-----------+
| 1 | 52 |
+-------------+-----------+
| 1 | 53 |
+-------------+-----------+
| 1 | 54 |
+-------------+-----------+
| 1 | 55 |
+-------------+-----------+
| 1 | 56 |
+-------------+-----------+
| 1 | 57 |
+-------------+-----------+
| 1 | 58 |
+-------------+-----------+
| 1 | 59 |
+-------------+-----------+
| 1 | 6 |
+-------------+-----------+
| 1 | 60 |
+-------------+-----------+
| 1 | 61 |
+-------------+-----------+
| 1 | 62 |
+-------------+-----------+
| 1 | 63 |
+-------------+-----------+
| 1 | 64 |
+-------------+-----------+
| 1 | 65 |
+-------------+-----------+
| 1 | 66 |
+-------------+-----------+
| 1 | 67 |
+-------------+-----------+
| 1 | 68 |
+-------------+-----------+
| 1 | 69 |
+-------------+-----------+
| 1 | 7 |
+-------------+-----------+
| 1 | 70 |
+-------------+-----------+
| 1 | 71 |
+-------------+-----------+
| 1 | 72 |
+-------------+-----------+
| 1 | 73 |
+-------------+-----------+
| 1 | 74 |
+-------------+-----------+
| 1 | 75 |
+-------------+-----------+
| 1 | 76 |
+-------------+-----------+
| 1 | 77 |
+-------------+-----------+
| 1 | 78 |
+-------------+-----------+
| 1 | 79 |
+-------------+-----------+
| 1 | 8 |
+-------------+-----------+
| 1 | 80 |
+-------------+-----------+
| 1 | 81 |
+-------------+-----------+
| 1 | 82 |
+-------------+-----------+
| 1 | 83 |
+-------------+-----------+
| 1 | 84 |
+-------------+-----------+
| 1 | 85 |
+-------------+-----------+
| 1 | 86 |
+-------------+-----------+
| 1 | 87 |
+-------------+-----------+
| 1 | 88 |
+-------------+-----------+
| 1 | 89 |
+-------------+-----------+
| 1 | 9 |
+-------------+-----------+
| 1 | 90 |
+-------------+-----------+
| 1 | 91 |
+-------------+-----------+
| 1 | 92 |
+-------------+-----------+
| 1 | 93 |
+-------------+-----------+
| 1 | 94 |
+-------------+-----------+
| 1 | 95 |
+-------------+-----------+
| 1 | 96 |
+-------------+-----------+
| 1 | 97 |
+-------------+-----------+
| 1 | 98 |
+-------------+-----------+
| 1 | 99 |
+-------------+-----------+list may broken volumes
Usage:
curve bs list may-broken-volOutput:
+----------+
| FILENAME |
+----------+
| test |
+----------+list curvebs snapshot
Usage:
curve bs list snapshotOutput:
+--------------------------------------+--------------+------+--------+----------------+-------------+----------+---------------------+---------------+
| SNAPSHOTID | SNAPSHOTNAME | USER | STATUS | SNAPSHOTSEQNUM | FILELENGTH | PROGRESS | CREATETIME | FILE |
+--------------------------------------+--------------+------+--------+----------------+-------------+----------+---------------------+---------------+
| 807fdac2-5b47-42dc-b884-a4f33b0f2a1a | testsnap | root | 0 | 1 | 10737418240 | 100 | 2023-10-15 16:16:31 | /test/test111 |
+--------------------------------------+--------------+------+--------+----------------+-------------+----------+---------------------+ +
| 204a5316-99cd-44b7-bc58-be6a547b8469 | testsnap1 | root | 0 | 2 | 10737418240 | 100 | 2023-10-25 09:22:12 | |clean the recycle bin
Usage:
curve bs clean-recycle --recycleprefix=/test --expiredtime=1hOutput:
+---------+
| RESULT |
+---------+
| success |
+---------+query the file info and actual space
Usage:
curve bs query file --path=/testOutput:
+------+------+----------------+-------+--------+---------+--------+-----+---------------------+--------------+---------+-----------------+----------+
| ID | NAME | TYPE | OWNER | CHUNK | SEGMENT | LENGTH | SEQ | CTIME | STATUS | STRIPE | THROTTLE | ALLOC |
+------+------+----------------+-------+--------+---------+--------+-----+---------------------+--------------+---------+-----------------+----------+
| 1003 | test | INODE_PAGEFILE | test | 16 MiB | 1.0 GiB | 10 GiB | 1 | 2022-08-29 17:00:55 | kFileCreated | count:0 | type:IOPS_TOTAL | size:0 B |
| | | | | | | | | | | uint:0 | limit:2000 | |
| | | | | | | | | | | | type:BPS_TOTAL | |
| | | | | | | | | | | | limit:125829120 | |
+------+------+----------------+-------+--------+---------+--------+-----+---------------------+--------------+---------+-----------------+----------+query the location of the chunk corresponding to the offset
Usage:
curve bs query chunk --path /test1 --offset 1008600000 Output:
+-------+-------------+---------+------------+----------------------+
| CHUNK | LOGICALPOOL | COPYSET | GROUP | LOCATION |
+-------+-------------+---------+------------+----------------------+
| 61 | 1 | 61 | 4294967357 | ***.***.***.***:**** |
| | | | | ***.***.***.***:**** |
| | | | | ***.***.***.***:**** |
+-------+-------------+---------+------------+----------------------+query the segments info of the file
Usage:
curve bs query seginfo --path /test1 Output:
+-------------+-------------+-----------+------------+---------+-------+
| LOGICALPOOL | SEGMENTSIZE | CHUNKSIZE | START | COPYSET | CHUNK |
+-------------+-------------+-----------+------------+---------+-------+
| 1 | 1073741824 | 16777216 | 0 | 1 | 1 |
+ + + + +---------+-------+
| ...... |
+ + + +------------+---------+-------+
| | | | 9663676416 | 1 | 101 |
+ + + + +---------+-------+
| ...... |
+ + + + +---------+-------+
| | | | | 99 | 99 |
+-------------+-------------+-----------+------------+---------+-------+quey ScanStatus Info in bs
Usage:
curve bs query scan-satus --copysetid 1 --logicalpoolid 1Output:
+-------------+-----------+-------+-------------+--------------------+
| LOGICALPOOL | COPYSETID | SCAN | LASTSCANSEC | LASTSCANCONSISTENT |
+-------------+-----------+-------+-------------+--------------------+
| 1 | 1 | false | 1684425801 | true |
+-------------+-----------+-------+-------------+--------------------+query volume clone and recover in curvebs cluster
Usage:
curve bs query volume clone-recoverOutput:
+------+--------------------------------------+--------------------------------------+----------+-------+----------+--------+----------+--------+----------+---------------------+
| USER | SRC | TASK ID | TASKTYPE | FILE | FILETYPE | ISLAZY | NEXTSTEP | STATUS | PROGRESS | TIME |
+------+--------------------------------------+--------------------------------------+----------+-------+----------+--------+----------+--------+----------+---------------------+
| root | a19b5e5e-b306-488f-8e6d-d87282c869cb | d26e27a8-fcbd-4f7a-adf8-53795217cbb0 | clone | /root | file | false | end | done | 1 | 2006-01-02 15:04:05 |
+------+--------------------------------------+--------------------------------------+----------+-------+----------+--------+----------+--------+----------+---------------------+get the etcd status of curvebs
Usage:
curve bs status etcdOutput:
+---------------------+---------+----------+
| ADDR | VERSION | STATUS |
+---------------------+---------+----------+
| ***.***.*.***:***** | 3.4.10 | follower |
+---------------------+ + +
| ***.***.*.***:***** | | |
+---------------------+ +----------+
| ***.***.*.***:***** | | leader |
+---------------------+---------+----------+get the mds status of curvebs
Usage:
curve bs status mdsOutput:
+-------------------+-------------------+-------------------+----------+
| ADDR | DUMMYADDR | VERSION | STATUS |
+-------------------+-------------------+-------------------+----------+
| **.***.**.**:**** | **.***.**.**:**** | ci+562296c7+debug | follower |
+-------------------+-------------------+ + +
| **.***.**.**:**** | **.***.**.**:**** | | |
+-------------------+-------------------+ +----------+
| **.***.**.**:**** | **.***.**.**:**** | | leader |
+-------------------+-------------------+-------------------+----------+get the client status of curvebs
Usage:
curve bs status clientOutput:
+-------------+----------------+---------------------+-----+
| TYPE | VERSION | ADDR | NUM |
+-------------+----------------+---------------------+-----+
| nebd-server | 9.9.9+2c4861ca | ***.***.**.***:**** | 2 |
+ + +---------------------+ +
| | | ***.***.**.***:**** | |
+-------------+----------------+---------------------+-----+get the mds status of curvebs
Usage:
curve bs status snapshotserverOutput:
+---------------------+---------------------+-------------------+----------+
| ADDR | DUMMYADDR | VERSION | STATUS |
+---------------------+---------------------+-------------------+----------+
| ***.***.**.***:**** | ***.***.**.***:**** | ci+562296c7+debug | follower |
+---------------------+---------------------+ + +
| ***.***.**.***:**** | ***.***.**.***:**** | | |
+---------------------+---------------------+ +----------+
| ***.***.**.***:**** | ***.***.**.***:**** | | leader |
+---------------------+---------------------+-------------------+----------+get the chunkserver status of curvebs
Usage:
curve bs status chunkserverOutput:
+------------------+------------------+----------------+--------+------------+
| EXTERNALADDR | INTERNALADDR | VERSION | STATUS | RECOVERING |
+------------------+------------------+----------------+--------+------------+
| **************** | **************** | d9b6bb98+debug | online | false |
+------------------+------------------+ + + +
| **************** | **************** | | | |
+------------------+------------------+ + + +
| **************** | **************** | | | |
+------------------+------------------+----------------+--------+------------+get the copyset status of curvebs
Usage:
curve bs status copysetOutput:
+------------+-----------+--------+--------+--------+---------+
| COPYSETKEY | COPYSETID | POOLID | STATUS | LOGGAP | EXPLAIN |
+------------+-----------+--------+--------+--------+---------+
| 4294967297 | 1 | 1 | ok | 0 | |
+------------+-----------+ + +--------+---------+
| ...... | ...... | ...... | ...... | ...... | ...... |
+------------+-----------+ + +--------+---------+
| 4294967395 | 99 | | | 0 | |
+------------+-----------+--------+--------+--------+---------+delete the peer from the copyset
Usage:
curve bs delete peerOutput:
+------------------+------------------+---------+---------+--------+
| LEADER | PEER | COPYSET | RESULT | REASON |
+------------------+------------------+---------+---------+--------+
| 127.0.0.1:8201:0 | 127.0.0.1:8202:0 | (1:29) | success | null |
+------------------+------------------+---------+---------+--------+delete volume clone tasks in curvebs cluster
Usage:
curve bs delete volume cloneOutput:
+------+--------------------------------------+--------------------------------------+-------+---------+--------+
| USER | SRC | TASK ID | FILE | RESULT | REASON |
+------+--------------------------------------+--------------------------------------+-------+---------+--------+
| root | a19b5e5e-b306-488f-8e6d-d87282c869cb | d26e27a8-fcbd-4f7a-adf8-53795217cbb0 | /root | success | |
+------+--------------------------------------+--------------------------------------+-------+---------+--------+delete volume recover tasks in curvebs cluster
Usage:
curve bs delete volume recoverOutput:
+------+--------------------------------------+--------------------------------------+-------+---------+--------+
| USER | SRC | TASK ID | FILE | RESULT | REASON |
+------+--------------------------------------+--------------------------------------+-------+---------+--------+
| root | a19b5e5e-b306-488f-8e6d-d87282c869cb | 9dfa8699-a275-4891-8ec2-e447a0ccc77c | /root | success | |
+------+--------------------------------------+--------------------------------------+-------+---------+--------+delete the snapshot in curvebs
Usage:
curve bs delete snapshot --path /test111/test222 --user root --snapshotFailed=falseOutput:
+--------------------------------------+--------------+---------+--------+
| SNAPSHOTID | SNAPSHOTNAME | RESULT | REASON |
+--------------------------------------+--------------+---------+--------+
| 3b9d14c2-79a2-4454-9b0a-6cb7477956db | testsnap1 | success | null |
+--------------------------------------+--------------+---------+--------+
| 2a94fb51-e985-4e98-a34c-f02aef8e97b5 | testsnap2 | success | null |
+--------------------------------------+--------------+---------+--------+reset peer
Usage:
curve bs update peer 127.0.0.0:8200:0 --logicalpoolid=1 --copysetid=1Output:
+----------------------+---------+---------+--------+
| PEER | COPYSET | RESULT | REASON |
+----------------------+---------+---------+--------+
| 127.0.0.0:8200:0 | (1:1) | success | null |
+----------------------+---------+---------+--------+
transfer leader
Usage:
curve bs update leader 127.0.0.1:8202:0 --logicalpoolid=1 --copysetid=1 --peers=127.0.0.1:8200:0,127.0.0.1:8201:0,127.0.0.1:8202:0Output:
+-----------------------+-----------------------+---------+---------+
| LEADER | OLDLEADER | COPYSET | RESULT |
+-----------------------+-----------------------+---------+---------+
| ***.***.**.***:****:* | ***.***.**.***:****:* | (1:1) | success |
+-----------------------+-----------------------+---------+---------+
expand pagefile
Usage:
curve bs update file --path /test2/test1 --size 10Output:
+---------+
| RESULT |
+---------+
| success |
+---------+
update file throttle params
Usage:
curve bs update throttle --path /test1 --type=bps_total --limit 20000Output:
+---------+
| RESULT |
+---------+
| success |
+---------+
enable/disable scan for logical pool
Usage:
curve bs update scan-state --logicalpoolid 1 [--scan=true/false]Output:
+----+------+---------+--------+
| ID | SCAN | RESULT | REASON |
+----+------+---------+--------+
| 1 | true | success | null |
+----+------+---------+--------+
update copyset availflag
Usage:
curve bs update copyset availflag --availflag=true [--dryrun=true/false]Output:
+--------+-----------+---------------+--------+
| POOLID | COPYSETID | AVAILFLAG | DRYRUN |
+--------+-----------+---------------+--------+
| 1 | 1 | false => true | true |
+--------+-----------+---------------+--------+
"rapidly transfer leader
Usage:
curve bs update leader-schedule --logicalpoolid 1
curve bs update leader-schedule --allOutput:
+---------+--------+
| RESULT | REASON |
+---------+--------+
| success | null |
+---------+--------+
update volume flatten in curvebs cluster
Usage:
curve bs update volume --user root --taskid d26e27a8-fcbd-4f7a-adf8-53795217cbb0Output:
+------+--------------------------------------+---------+
| USER | TASK ID | RESULT |
+------+--------------------------------------+---------+
| root | d26e27a8-fcbd-4f7a-adf8-53795217cbb0 | success |
+------+--------------------------------------+---------+
create pagefile
Usage:
curve bs create file --path /test2/test4 --size 10Output:
+---------+
| RESULT |
+---------+
| success |
+---------+
create directory
Usage:
curve bs create dir --path /test2/test5 Output:
+---------+
| RESULT |
+---------+
| success |
+---------+
create snapshot
Usage:
curve bs create volume snapshot --user root --filename test --snapshotname snap-testOutput:
+------+----------+--------------+
| USER | FILENAME | SNAPSHOTNAME |
+------+----------+---------------
| root | test | snap-test |
+------+----------+--------------+
check copysets health in curvebs
Usage:
curve bs check copyset --copysetid 1 --logicalpoolid 1Output:
+------------+-----------+--------+--------+--------+---------+
| COPYSETKEY | COPYSETID | POOLID | STATUS | LOGGAP | EXPLAIN |
+------------+-----------+--------+--------+--------+---------+
| 4294967297 | 1 | 1 | ok | 0 | |
+------------+-----------+--------+--------+--------+---------+check chunkserver health in curvebs
Usage:
curve bs check chunkserver --chunkserverid 1Output:
+------------+-----------+--------+--------+--------+---------+
| CHUNKSERVERID | HELATHYCOUNT | UNHEALTHYCOUNT | UNHEALTHYRATIO |
+------------+-----------+--------+--------+--------+---------+
| 1 | 100 | 0 | 0.00% |
+------------+-----------+--------+--------+--------+---------+check copysets health in server
Usage:
curve bs check server --serverid 1
curve bs check server --ip 127.0.0.1 --port 8200Output:
+--------+-----------+-------+------------------+
| SERVER | IP | TOTAL | UNHEALTHYCOPYSET |
+--------+-----------+-------+------------------+
| 1 | 127.0.0.1 | 100 | 0(0%) |
+--------+-----------+-------+------------------+check the file consistency
Usage:
curve bs check consistency --path /testOutput:
+--------+--------+------------+
| NAME | STATUS | EXPLAIN |
+--------+--------+------------+
| /test | ok | - |
+--------+--------+------------+take snapshot for copyset
Usage:
curve bs snapshot copyset 127.0.0.0:8200:0 --logicalpoolid=1 --copysetid=1Output:
+-----------------------+---------+---------+
| PEER | COPYSET | RESULT |
+-----------------------+---------+---------+
| ***.***.**.***:****:* | (**:**) | success |
+-----------------------+---------+---------+
curve bs snapshot copyset --allOutput:
+----------------+---------+
| CHUNKSERVER | RESULT |
+----------------+---------+
| **.*.*.**:8200 | failed |
+----------------+---------+
| **.*.*.**:8201 | success |
+----------------+ +
| **.*.*.**:8202 | |
+----------------+---------+
stop snapshot in curve bs
Usage:
curve bs stop snapshotOutput:
+--------------------------------------+--------------+---------+--------+
| SNAPSHOTID | SNAPSHOTNAME | RESULT | REASON |
+--------------------------------------+--------------+---------+--------+
| 3b9d14c2-79a2-4454-9b0a-6cb7477956db | testsnap1 | success | null |
+--------------------------------------+--------------+---------+--------+
| 2a94fb51-e985-4e98-a34c-f02aef8e97b5 | testsnap2 | success | null |
+--------------------------------------+--------------+---------+--------+export services and clients in the bs cluster
Usage:
curve bs export target Output:
[
{
"label": {
"job": "etcd"
},
"targets": [
"172.21.0.13:23790",
"172.21.0.13:23791",
"172.21.0.13:23792"
]
},
{
"label": {
"job": "mds"
},
"targets": [
"172.21.0.13:6700",
"172.21.0.13:6701",
"172.21.0.13:6702"
]
},
{
"label": {
"job": "chunkserver"
},
"targets": [
"172.21.0.13:8200",
"172.21.0.13:8202",
"172.21.0.13:8201"
]
},
{
"label": {
"job": "snapshotcloneserver"
},
"targets": [
"172.21.0.13:5550",
"172.21.0.13:5551",
"172.21.0.13:5552"
]
},
{
"label": {
"job": "client"
},
"targets": [
"172.21.0.13:9000"
]
}
]recover volume from recycleBin
Usage:
curve bs recover volume --path /test/path --user root Output:
+-----------+---------+
| FILENAME | RESULT |
+-----------+---------+
| test/path | success |
+-----------+---------+
| old | new |
|---|---|
| curvefs_tool check-copyset | curve fs check copyset |
| curvefs_tool create-fs | curve fs create fs |
| curvefs_tool create-topology | curve fs create topology |
| curvefs_tool delete-fs | curve fs delete fs |
| curvefs_tool list-copyset | curve fs list copyset |
| curvefs_tool list-fs | curve fs list fs |
| curvefs_tool list-fs | curve fs list mountpoint |
| curvefs_tool list-partition | curve fs list partition |
| curvefs_tool query-copyset | curve fs query copyset |
| curvefs_tool query-fs | curve fs query fs |
| curvefs_tool query-inode | curve fs query inode |
| curvefs_tool query-metaserver | curve fs query metaserver |
| curvefs_tool query-partition | curve fs query partition |
| curvefs_tool status-mds | curve fs status mds |
| curvefs_tool status-metaserver | curve fs status metaserver |
| curvefs_tool status-etcd | curve fs status etcd |
| curvefs_tool status-copyset | curve fs status copyset |
| curvefs_tool status-cluster | curve fs status cluster |
| curvefs_tool umount-fs | curve fs umount fs |
| curvefs_tool usage-inode | curve fs usage inode |
| curvefs_tool usage-metadata | curve fs usage metadata |
| old | new |
|---|---|
| curve_ops_tool logical-pool-list | curve bs list logical-pool |
| curve_ops_tool get -fileName= | curve bs query file -path |
| curve_ops_tool etcd-status | curve bs status etcd |
| curve_ops_tool mds-status | curve bs status mds |
| curve_ops_tool server-list | curve bs list server |
| curve_ops_tool client-list | curve bs list client |
| curve_ops_tool delete | curve bs delete file |
| curve_ops_tool list | curve bs list dir |
| curve_ops_tool create | curve bs create file/dir |
| curve_ops_tool seginfo | curve bs query seginfo |
| curve_ops_tool chunk-location | curve bs query chunk |
| curve_ops_tool remove-peer | curve bs delete peer |
| curve_ops_tool reset-peer | curve bs update peer |
| curve_ops_tool space | curve bs list space |
| curve_ops_tool update-throttle | curve bs update throttle |
| curve_ops_tool check-copyset | curve bs check copyset |
| curve_ops_tool client-status | curve bs status client |
| curve_ops_tool check-operator | curve bs check operator |
| curve_ops_tool snapshot-clone-status | curve bs status snapshotserver |
| curve_ops_tool transfer-leader | curve bs update leader |
| curve_ops_tool do-snapshot | curve bs snapshot copyset |
| curve_ops_tool set-scan-state | curve bs update scan-state |
| curve_ops_tool chunkserver-status | curve bs status chunkserver |
| curve_ops_tool chunkserver-list | curve bs list chunkserver |
| curve_ops_tool set-copyset-availflag | curve bs update copyset availflag |
| curve_ops_tool scan-status | curve bs list/query scan-status |
| curve_ops_tool clean-recycle | curve bs clean-recycle |
| curve_ops_tool copysets-status | curve bs status copyset |
| curve_ops_tool list-may-broken-vol | curve bs list may-broken-vol |
| curve_ops_tool rapid-leader-schedule | curve bs update leader-schedule |
| curve_ops_tool do-snapshot-all | curve bs snapshot --all |
| curve_ops_tool check-chunkserver | curve bs check chunkserver |
| curve_ops_tool status | |
| curve_ops_tool check-consistency | curve bs check consistency |
| curve_ops_tool check-server | curve bs check server |