如果要刪除的節(jié)點正在運行 OSD,請確保從節(jié)點中刪除 OSD。
- 刪除OSD
ceph orch osd rm <osd_id(s)> [--replace] [--force] # 從 OSD 中撤出 PG 并將其從集群中移除
ceph orch osd rm 0 # 例子,不安全銷毀的 OSD 將被拒絕
ceph orch osd rm status # 查詢操作的狀態(tài)。當 OSD 上沒有留下任何 PG 時,它將被停用并從集群中移除
ceph orch osd rm stop <svc_id(s)> # 停止排隊的 OSD 移除操作
ceph orch osd rm stop 4 # 例子,這將重置 OSD 的初始狀態(tài)并將其從移除隊列中移除。
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 標志即可執(zhí)行部署。
注意:刪除 OSD 后,如果您擦除已刪除 OSD 使用的設備中的 LVM 物理卷,則會創(chuàng)建一個新的 OSD。如果您想避免這種行為(禁用在可用設備上自動創(chuàng)建 OSD),請使用以下
unmanaged
參數:ceph orch apply osd --all-available-devices --unmanaged=true
- 要從集群中刪除主機,請執(zhí)行以下操作:
對于除node-exporter
和crash
之外的所有 Ceph 服務類型,從放置規(guī)范文件(例如 cluster.yml)中刪除主機。例如,如果您要刪除名為 host2 的主機,請從所有placement:
部分中刪除所有出現的-?host2
。
更新:
service_type: rgw
placement:
hosts:
- host1
- host2
至:
service_type: rgw
placement:
hosts:
- host1
從 cephadm 的環(huán)境中移除主機:
ceph orch host rm host2
如果主機正在運行node-exporter
和 crash 服務,請通過在主機上運行以下命令來刪除它們:
cephadm rm-daemon --fsid CLUSTER_ID --name SERVICE_NAME
?
本文摘自 :https://www.cnblogs.com/