Toubleshooting
PG inconsistent
Si avec la commande ceph -s il y a le message d'erreur ci-dessous, il faut réparer le PG en cause.
1 scrub errors
Possible data damage: 1 pg inconsistent
-
Lancer la commande
ceph health detailpour récupérer l'id du PG endommagéHEALTH_ERR 1 scrub errors; Possible data damage: 1 pg inconsistent [ERR] OSD_SCRUB_ERRORS: 1 scrub errors [ERR] PG_DAMAGED: Possible data damage: 1 pg inconsistent pg 2.34 is active+clean+inconsistent, acting [10,4,12] -
Ici l'id est 2.34, on va lancer la commande de réparation
ceph pg repair 2.34 -
Attendre que ceph fasse le travail et vérifier le status avec
ceph -s -
Pour avoir des information complémentaire pour trouver l'origine du problème lancer la commande
rados list-inconsistent-obj 2.34 --format=json-pretty
Ce problème est souvent lié à un disque défectueux, il faut vérifier que c'est bien le cas.
Maintenance d'un serveur
En cas de maintenance d'une machine pour des mises à jour système par exemple on peut mettre un serveur en maintenance:
ceph orch host maintenance enter HOSTNAME
ceph orch host maintenance exit HOSTNAME
Supprimer un serveur
Dans le cas du remplacement d'une ancienne machine ou de la perte total d'un serveur
ceph orch host drain HOSTNAME
ceph orch osd rm status
ceph orch ps HOSTNAME
ceph orch host rm HOSTNAME # --offline --force
Remplacement d'un OSD
Dans le cas d'un changement de disque suite à la défaillance de celui-ci:
- Sortir l'osd du cluster
ceph osd out ID_OSD - Avec la commande
ceph -svérifier régulièrement qu'il n'y a plus d'objects misplaced - Stopper le service sur la machine de l'osd
ceph osd down osd.ID_OSD - Supprimer l'osd
ceph osd rm osd.ID_OSD - Supprimer l'osd de l'inventaire (crushmap)
ceph osd crush rm osd.ID_OSD - Supprimer les identifiants d'authentification de l'osd
ceph auth del osd.ID_OSD - Sur le serveur qui contient l'osd
systemctl disable ceph-CLUSTER_ID@osd.ID_OSD.service - Mettre en maintenance le serveur avec le disque défecteux
- Changer le disque
- Sortir le serveur de la maintenance
Mettre à jour le cluster
-
Il suffit de lancer cette commande en précissant le numéro de version:
ceph orch upgrade start --ceph-version 17.2.5 -
Voir la progression de la mise à jour
ceph -s ceph -w # voir les logs -
En cas de souci on peut stopper une mise à jour:
ceph orch upgrade stop