6.10. 使用 Ceph Orchestrator 删除 OSD 守护进程

您可以使用 Cephadm 从集群中移除该 OSD。

从集群中移除 OSD 涉及两个步骤:

  1. 撤离集群中的所有放置组(PG)。
  2. 从集群中移除 PG-free OSD。

--zap 选项删除了卷组、逻辑卷和 LVM 元数据。

注意

在移除 OSD 后,如果 OSD 重新可用时部署 OSD,cephadm 可能会在这些驱动器上自动尝试部署更多 OSD (如果它们与现有 drive组规格匹配)。如果您部署了使用 spec 删除的 OSD,且在移除后不想在驱动器上部署任何新 OSD,请在删除前修改 drivegroup 规格。在部署 OSD 时,如果您使用 --all-available-devices 选项,请将 unmanaged: true 设置为停止它完全获取新驱动器。对于其他部署,修改规格。如需了解更多详细信息 ,请参阅使用高级服务规格部署 Ceph OSD

先决条件

  • 一个正在运行的 Red Hat Ceph Storage 集群。
  • 主机添加到集群中。
  • Ceph Monitor、Ceph Manager 和 Ceph OSD 守护进程部署在存储集群中。

流程

  1. 登录到 Cephadm shell:

    示例

    [root@host01 ~]# cephadm shell

  2. 检查必须移除 OSD 的设备和节点:

    示例

    [ceph: root@host01 /]# ceph osd tree

  3. 删除 OSD:

    语法

    ceph orch osd rm OSD_ID [--replace] [--force] --zap

    示例

    [ceph: root@host01 /]# ceph orch osd rm 0 --zap

    注意

    如果您在没有选项的情况下从存储集群中移除 OSD,如 --replace,该设备会被完全从存储集群中移除。如果要使用同一设备来部署 OSD,则必须在将其添加到存储集群前首先断开该设备。

  4. 可选: 要从特定节点中删除多个 OSD,请运行以下命令:

    语法

    ceph orch osd rm OSD_ID OSD_ID --zap

    示例

    [ceph: root@host01 /]# ceph orch osd rm 2 5 --zap

  5. 检查移除 OSD 的状态:

    示例

    [ceph: root@host01 /]# ceph orch osd rm status
    
    OSD  HOST   STATE                    PGS  REPLACE  FORCE  ZAP   DRAIN STARTED AT
    9    host01 done, waiting for purge    0  False    False  True  2023-06-06 17:50:50.525690
    10   host03 done, waiting for purge    0  False    False  True  2023-06-06 17:49:38.731533
    11   host02 done, waiting for purge    0  False    False  True  2023-06-06 17:48:36.641105

    当 OSD 上没有剩余的 PG 时,它会被停用并从集群中移除。

验证

  • 验证设备的详细信息以及 Ceph OSD 已从中删除的节点:

    示例

    [ceph: root@host01 /]# ceph osd tree

其它资源