主要是在bluestore的实例上执行低级管理操作的使用程序,是ceph bluestore的管理工具
命令
-
help
显示帮助信息 -
fsck [--deep]
对bluestore元数据进行一致性检查。如果指定了–deep,还要读取所有对象数据并验证校验和 -
repair
运行一致性检查 并修复我们可以发生的任何错误 -
bluefs-export
--path osd path
将bluefs的目录内容输出到指定目录,比如(rocksdb文件) -
bluefs-bdev-sizes
–path osd path
将bluefs内部检查的设备文件大小打印到stdout -
bluefs-bdev-expand
--path osd path --dev-target new-device
指示BlueFS检查其块设备的大小,如果它们已扩展,则使用额外的空间 -
bluefs-bdev-new-wal
--path osd path --dev-target new-device
将WAL设备添加到BlueFS,如果WAL设备已存在则失败 -
bluefs-bdev-new-db
--path osd path --dev-target new-device
将数据库设备添加到BlueFS,如果数据库设备已存在则失败 -
bluefs-bdev-migrate
–dev-target new-device –devs-source device1 [–devs-source device2 ]
将BlueFS数据从源设备移动到目标设备,成功删除源设备(主设备除外)。目标设备既可以已经连接也可以是新设备。在后一种情况下,它被添加到OSD替换其中一个源设备。以下替换规则适用(按优先顺序,在第一场比
赛时停止):
- 如果源列表具有数据库卷 - 目标设备将替换它
- 如果源列表有WAL卷 - 目标设备替换它
- 如果源列表仅具有缓慢的卷 - 不允许操作,则需要通过new-db / new-wal命令进行显式分配
-
show-label
--dev 设备
显示设备标签
选项
-
--dev
device 将设备添加到要考虑的设备列表中 -
--devs-source
device 将设备添加到设备列表中,以将其视为迁移操作的源 -
--dev-target
device`指定要添加的目标设备迁移操作或设备以添加新的DB / WAL -
--path
osd path
指定osd路径。在大多数情况下,设备列表是从osd路径中存在的符号链接推断出来的。这通常比使用–dev明确指定设备更简单 -
--out-dir *dir*
bluefs-export的输出目录 - -l,
--log-file
log file 要登录的文件 -
--log-level
num
调试日志级别。默认值为30(极其冗长),20表示非常详细,10表示详细,1表示不详细 -
--deep
深度清理/修复(读取和验证对象数据,而不仅仅是元数据)
使用
fsck
需要停止osd后使用,以下工具都需要停止osd后使用才行
bluefs-export
把rocksdb导出成文件形式,因为本身bluestore是通过bluefs来管理元数据和数据的,但是在bluestore中是无法看到bluefs文件内容,此工具提供了一种导出成目录的方法
show-label
显示dev或者path的一些标签
set/rm-label-key
插入删除标签
ceph-bluestore-tool set-label-key -k aaa -v bbb --dev /dev/sde2
ceph-bluestore-tool rm-label-key -k aaa --dev /dev/sde2