10.6. 使用 BlueStore 管理工具重新划分 RocksDB 数据库
您可以使用 BlueStore 管理工具重新划分数据库。它将 BlueStore 的 RocksDB 数据库从一形转换为几列的系列,而无需重新部署 OSD。列系列的功能与整个数据库相同,但允许用户在较小的数据集上运行并应用不同的选项。它利用存储的不同密钥的预期生命周期。密钥会在转换过程中移动,而不会创建新密钥或删除现有密钥。
先决条件
- 一个正在运行的 Red Hat Ceph Storage 集群。
- 对象存储配置为 BlueStore。
- 部署在主机上的 OSD 节点。
- 对所有主机的 root 级别访问。
-
ceph-common
和cephadm
软件包在所有主机上都存在。
流程
登录
cephadm
shell:示例
[root@host01 ~]# cephadm shell
从管理节点获取 OSD_ID 和主机详情:
示例
[ceph: root@host01 /]# ceph orch ps
以
root
用户身份登录对应的主机,再停止 OSD:语法
cephadm unit --name OSD_ID stop
示例
[root@host02 ~]# cephadm unit --name osd.0 stop
进入已停止的 OSD 守护进程容器:
语法
cephadm shell --name OSD_ID
示例
[root@host02 ~]# cephadm shell --name osd.0
登录到
cephadm shell
并检查文件系统一致性:语法
ceph-bluestore-tool --path/var/lib/ceph/osd/ceph-OSD_ID/ fsck
示例
[ceph: root@host02 /]# ceph-bluestore-tool --path /var/lib/ceph/osd/ceph-0/ fsck fsck success
检查 OSD 节点的分片状态:
语法
ceph-bluestore-tool --path /var/lib/ceph/osd/ceph-OSD_ID/ show-sharding
示例
[ceph: root@host02 /]# ceph-bluestore-tool --path /var/lib/ceph/osd/ceph-6/ show-sharding m(3) p(3,0-12) O(3,0-13) L P
运行
ceph-bluestore-tool
命令来重新划分。红帽建议使用命令中的参数:语法
ceph-bluestore-tool --log-level 10 -l log.txt --path /var/lib/ceph/osd/ceph-OSD_ID/ --sharding="m(3) p(3,0-12) O(3,0-13)=block_cache={type=binned_lru} L P" reshard
示例
[ceph: root@host02 /]# ceph-bluestore-tool --path /var/lib/ceph/osd/ceph-6/ --sharding="m(3) p(3,0-12) O(3,0-13)=block_cache={type=binned_lru} L P" reshard reshard success
要检查 OSD 节点的分片状态,请运行
show-sharding
命令:语法
ceph-bluestore-tool --path /var/lib/ceph/osd/ceph-OSD_ID/ show-sharding
示例
[ceph: root@host02 /]# ceph-bluestore-tool --path /var/lib/ceph/osd/ceph-6/ show-sharding m(3) p(3,0-12) O(3,0-13)=block_cache={type=binned_lru} L P
从
cephadm
shell 退出:[ceph: root@host02 /]# exit
以
root
用户身份登录对应的主机,再启动 OSD:语法
cephadm unit --name OSD_ID start
示例
[root@host02 ~]# cephadm unit --name osd.0 start
其它资源
- 如需更多信息,请参阅 Red Hat Ceph Storage 安装指南。