OSD disk replacement
1. Identificare l'OSD in fault:
ceph osd tree | grep down
2. Se necessario marcare l'OSD come out
(per default viene marcato automaticamente dopo 600 secondi):
ceph osd out osd.<ID>
3. Monitorare le operazioni di backfill scatenate:
ceph -w | grep backfill
4. Fermare il servizio OSD corrispondente:
ceph orch daemon stop osd.<ID>
5. Raccogliere e salvare le informazioni riguardo gli OSD (Porre attenzione al campo device_paths
):
ceph osd metadata -f plain > metadata.json # filtrare per ID con ceph osd metadata -f plain | jq .[<ID>]
6. Dal nodo ospitante l'OSD raccogliere informazioni sui device LVM coinvolti (DB/WAL/BLOCK):
[root@ceph-data-node ~]# cephadm shell [ceph: root@ceph-data-node /]# ceph-volume lvm list <ID>
7. Disabilitare temporaneamente la gestione e il deploy automatico degli OSD aggiungendo la voce unmanaged: true
nel service file degli OSD, ad esempio:
... service_type: osd service_id: non-colocated unmanaged: true ...
8. Applicare le modifiche al servizio:
ceph orch apply -i <service_file>
9. Verificare che il campo PLACEMENT del servizio sia valorizzato a <unmanaged>
:
ceph orch ls
10. rimuovere l'OSD dal cluster (–replace
permette di "riciclare" l'ID per poterlo riassegnare al disco nuovo in modo da evitare modifiche alla CRUSH map):
ceph orch osd rm <ID> --zap --replace
11. Verificare nuovamente sul nodo ospitante se l'OSD risulta deconfigurato sui device interessati:
[root@ceph-data-node ~]# cephadm shell [ceph: root@ceph-data-node /]# ceph-volume lvm list <DB/WAL_device> [ceph: root@ceph-data-node /]# ceph-volume lvm list <BLOCK_device>
12. Sostituire il disco o i dischi in fault.
13. Se il nome dei device sostituiti non è cambiato, applicare la configurazione precedente per il deploy degli OSD, altrimenti modificare opportunamente il service file e applicare la configurazione (aggiungere –dry-run
per ottenere una preview delle modifiche):
ceph orch apply -i <service_file>
14. Verificare che il nuovo OSD sia disponibile e che abbia "ereditato" il precedente ID:
ceph -s ceph orch ps ceph osd tree ceph osd df