如果要?jiǎng)h除的節(jié)點(diǎn)正在運(yùn)行 OSD,請(qǐng)確保從節(jié)點(diǎn)中刪除 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)。當(dāng) OSD 上沒有留下任何 PG 時(shí),它將被停用并從集群中移除
ceph orch osd rm stop <svc_id(s)> # 停止排隊(duì)的 OSD 移除操作
ceph orch osd rm stop 4 # 例子,這將重置 OSD 的初始狀態(tài)并將其從移除隊(duì)列中移除。
orch osd rm <svc_id(s)> --replace [--force] # 更換 OSD
ceph orch osd rm 4 --replace # 例子,這與“刪除 OSD”部分的過程相同,只是 OSD 不是從 CRUSH 層次結(jié)構(gòu)中永久刪除,而是分配了一個(gè)“destroyed”標(biāo)志
保留 OSD ID:
先前設(shè)置的 'destroyed' 標(biāo)志用于確定將在下一次 OSD 部署中重用的 OSD id。
如果您使用 OSDSpecs 進(jìn)行 OSD 部署,假設(shè)新磁盤仍然匹配 OSDSpecs,您新添加的磁盤將被分配其替換對(duì)應(yīng)的 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 - -
如果這符合您的預(yù)期行為,只需省略 --dry-run 標(biāo)志即可執(zhí)行部署。
注意:刪除 OSD 后,如果您擦除已刪除 OSD 使用的設(shè)備中的 LVM 物理卷,則會(huì)創(chuàng)建一個(gè)新的 OSD。如果您想避免這種行為(禁用在可用設(shè)備上自動(dòng)創(chuàng)建 OSD),請(qǐng)使用以下
unmanaged
參數(shù):ceph orch apply osd --all-available-devices --unmanaged=true
- 要從集群中刪除主機(jī),請(qǐng)執(zhí)行以下操作:
對(duì)于除node-exporter
和crash
之外的所有 Ceph 服務(wù)類型,從放置規(guī)范文件(例如 cluster.yml)中刪除主機(jī)。例如,如果您要?jiǎng)h除名為 host2 的主機(jī),請(qǐng)從所有placement:
部分中刪除所有出現(xiàn)的-?host2
。
更新:
service_type: rgw
placement:
hosts:
- host1
- host2
至:
service_type: rgw
placement:
hosts:
- host1
從 cephadm 的環(huán)境中移除主機(jī):
ceph orch host rm host2
如果主機(jī)正在運(yùn)行node-exporter
和 crash 服務(wù),請(qǐng)通過在主機(jī)上運(yùn)行以下命令來刪除它們:
cephadm rm-daemon --fsid CLUSTER_ID --name SERVICE_NAME
?
本文摘自 :https://www.cnblogs.com/