9.8.4. 使用标记和替换方法从 FileStore 迁移到 BlueStore


从 FileStore 迁移到 BlueStore 最简单的方法是依次标记每个设备,等待数据在存储集群中复制,重新置备 OSD,然后再次将其标记为"in"。

前提条件

  • 一个正在运行的 Red Hat Ceph Storage 集群。
  • 访问节点。

流程

将下列变量 OSD_ID 替换为 ODS 标识号。

  1. 找到要替换的 FileStore OSD。

    1. 获取 OSD 标识号:

      [root@ceph-client ~]# ceph osd tree
      Copy to Clipboard Toggle word wrap
    2. 确定 OSD 是否使用 FileStore 还是 BlueStore:

      语法

      ceph osd metadata OSD_ID | grep osd_objectstore
      Copy to Clipboard Toggle word wrap

      Example

      [root@ceph-client ~]# ceph osd metadata 0 | grep osd_objectstore
          "osd_objectstore": "filestore",
      Copy to Clipboard Toggle word wrap

    3. 查看 FileStore 设备与 BlueStore 设备的当前计数:

      [root@ceph-client ~]# ceph osd count-metadata osd_objectstore
      Copy to Clipboard Toggle word wrap
  2. 将 FileStore OSD 标记为 out:

    ceph osd out OSD_ID
    Copy to Clipboard Toggle word wrap
  3. 等待数据从 OSD 迁出:

    while ! ceph osd safe-to-destroy OSD_ID ; do sleep 60 ; done
    Copy to Clipboard Toggle word wrap
  4. 停止 OSD:

    systemctl stop ceph-osd@OSD_ID
    Copy to Clipboard Toggle word wrap
  5. 捕获此 OSD 正在使用的设备:

    mount | grep /var/lib/ceph/osd/ceph-OSD_ID
    Copy to Clipboard Toggle word wrap
  6. 卸载 OSD:

    umount /var/lib/ceph/osd/ceph-OSD_ID
    Copy to Clipboard Toggle word wrap
  7. 使用第 5 步的值作为 DEVICE 销毁 OSD 数据:

    ceph-volume lvm zap DEVICE
    Copy to Clipboard Toggle word wrap
    重要

    成为 EXTREMELY CAREFUL,因为这会销毁设备的内容。在继续之前,不需要在该设备上使用这些数据,即存储集群处于健康状态。

    注意

    如果 OSD 被加密,则卸载 osd-lockbox 并在使用 dmsetup 删除 OSD 前删除加密。

    注意

    如果 OSD 包含逻辑卷,则在 ceph-volume lvm zap 命令中使用 --destroy 选项。

  8. 使存储集群知道 OSD 已销毁:

    [root@ceph-client ~]# ceph osd destroy OSD_ID --yes-i-really-mean-it
    Copy to Clipboard Toggle word wrap
  9. 使用 DEVICE 从第 5 步和相同的 OSD_ID 将 OSD 重新置备为 BlueStore OSD:

    [root@ceph-client ~]# ceph-volume lvm create --bluestore --data DEVICE --osd-id OSD_ID
    Copy to Clipboard Toggle word wrap
  10. 重复此步骤。

    注意

    只要您确保存储集群在销毁任何 OSD 之前存储集群为 HEALTH_OK,新的 BlueStore OSD 的重填操作可以与排空下一个 FileStore OSD 同时进行。如果不这样做,将降低数据的冗余,并增加风险,或者降低数据丢失。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat