cephadm 删除主机

如果要删除的节点正在运行 OSD,请确保从节点中删除 OSD。

  • 删除OSD
ceph orch osd rm <osd_id(s)> [--replace] [--force]  # 从 OSD 中撤出 PG 并将其从集群中移除
ceph orch osd rm 0  # 例子,不安全销毁的 OSD 将被拒绝
ceph orch osd rm status  # 查询操作的状态。当 OSD 上没有留下任何 PG 时,它将被停用并从集群中移除

ceph orch osd rm stop <svc_id(s)>  # 停止排队的 OSD 移除操作
ceph orch osd rm stop 4  # 例子,这将重置 OSD 的初始状态并将其从移除队列中移除。
orch osd rm <svc_id(s)> --replace [--force]  # 更换 OSD
ceph orch osd rm 4 --replace  # 例子,这与“删除 OSD”部分的过程相同,只是 OSD 不是从 CRUSH 层次结构中永久删除,而是分配了一个“destroyed”标志

保留 OSD ID:

先前设置的 'destroyed' 标志用于确定将在下一次 OSD 部署中重用的 OSD id。

如果您使用 OSDSpecs 进行 OSD 部署,假设新磁盘仍然匹配 OSDSpecs,您新添加的磁盘将被分配其替换对应的 OSD id。

要在此过程中获得帮助,您可以使用“--dry-run”功能。

提示:您的 OSDSpec 的名称可以从 ceph orch ls 中检索。

或者,您可以使用您的 OSDSpec 文件:

ceph orch apply osd -i <osd_spec_file> --dry-run
NAME                  HOST  DATA     DB WAL
<name_of_osd_spec>    node1 /dev/vdb -  -

如果这符合您的预期行为,只需省略 --dry-run 标志即可执行部署。

注意:删除 OSD 后,如果您擦除已删除 OSD 使用的设备中的 LVM 物理卷,则会创建一个新的 OSD。如果您想避免这种行为(禁用在可用设备上自动创建 OSD),请使用以下unmanaged参数:

ceph orch apply osd --all-available-devices --unmanaged=true
  • 要从集群中删除主机,请执行以下操作:

对于除node-exportercrash之外的所有 Ceph 服务类型,从放置规范文件(例如 cluster.yml)中删除主机。例如,如果您要删除名为 host2 的主机,请从所有placement:部分中删除所有出现的- host2

更新:

service_type: rgw
placement:
  hosts:
  - host1
  - host2

至:

service_type: rgw
placement:
  hosts:
  - host1

从 cephadm 的环境中移除主机:

ceph orch host rm host2

如果主机正在运行node-exporter和 crash 服务,请通过在主机上运行以下命令来删除它们:

cephadm rm-daemon --fsid CLUSTER_ID --name SERVICE_NAME

 

posted @ 2022-05-29 21:14  Varden  阅读(1056)  评论(0编辑  收藏  举报