Un mémo sur comment résoudre l’erreur « Full OSD » et supprimer totalement l’espace disque occupé par une machine virtulle sur un cluster Proxmox HA avec du Ceph.
Si on ne fait pas attention, il est possible de remplir rapidement un volume Ceph et de saturer en espace les OSD qui composent le pool.
Dans cet article, je vous propose une méthode que j’ai appliqué sur un de mes cluster Proxmox HA dont un OSD a été rempli presque entièrement. A savoir, le volume Ceph de disponible était rempli à 85%.
Vérifier le statut du cluster Ceph
- Vérifier le statut de Ceph :
ceph -s
D’après la capture d’acran, j’ai 1 OSD qui est plein. L’idée qui me vient est de faire de la place en supprimant une ou deux VM qui ne sont pas importante.
qm destroy 1055
La VM est détruite car elle n’est plus présente dans la liste des VM mais sont disque rattaché, lui est toujours présent et occupe de la place sur le cluster Ceph.
Cette opération de destruction n’est pas concluante car l’espace disque n’est pas libéré.
Sortir l’OSD plein du pool Ceph
Dans l’état où se trouve le Cluster, je ne peux rien faire car toutes les opérations manuelles que j’exécuterais ne feront pas d’effet. Exemple de supression d’un volume disque d’une VM :
rbd rm --pool Mon_Pool vm-1055-disk-1
J’obtiens comme résultat :
2018-01-11 15:16:20.771690 7fe2bfe1ea00 0 client.8754619.objecter FULL, paused modify 0x55c0f50528c0 tid 0
Ce message indique que l’opération est en pause et ne pourra aboutir.
La solution que je vous propose dans cet article, est de sortir l’OSD plein du pool Ceph.
- Identifier l’OSD plein :
df -h
ceph osd out 17
Dès à présent le cluster Ceph n’est plus en erreur mais reste en warning, cependant je peux réaliser des actions.
Faire de la place dans le pool Ceph
- Pour lister les disques rattachés à un pool (remplacer « name » pour le nom du pool ceph) :
rbd list --pool name
Le disque de la VM 1055 est toujours présent dans le pool Ceph.
rbd info --pool 4ToSAS
rbd rm --pool 4ToSAS vm-1055-disk-1
ceph osd in 17
A ce stade, mon cluster Ceph est de nouveau opérationnel mais son statut reste en warning car il faut que je libère encore de la place… Cependant, avec cette méthode il est possible d’intervenir sur le cluster Ceph.