Ceph est une plateforme libre de stockage distribué. Les objectifs principaux de Ceph sont d'être complètement distribué sans point unique de défaillance, extensible jusqu'à l'exaoctet et librement disponible. Les données sont répliquées, permettant au système d'être tolérant aux pannes.
Ceph fonctionne sur du matériel non spécialisé. Le système est conçu pour s'autoréparer et automatiser au maximum ses tâches administratives afin de réduire les coûts d'exploitation.
Ceph met en œuvre le stockage d'objets distribué au moyen de RADOS (Reliable Autonomic Distributed Object Store), un moteur de stockage objet fiable, autonome et distribué.
Côté client, sa bibliothèque logicielle native librados permet aux applications C, C++, Java, Python, Ruby et PHP un accès direct en mode objet.
Différentes bibliothèques additionnelles permettent d'obtenir les abstractions nécessaires pour :
Il est nécessaire de marquer le cluster avec le flag noout
: ceph osd set noout
. Il est également possible de le faire depuis l'interface de Proxmox, sur une machine physique, dans l'onglet Ceph/OSD
.
Une fois la machine à nouveau opérationelle, enlevez le flag noout
: ceph osd unset noout
.
ceph osd tier add rdb ssd ceph osd tier cache-mode ssd writeback ceph osd tier set-overlay rdb ssd
Il faut penser a définir MANUELLEMENT les limites de remplissage du cache, ceph n'arrivant pas à les déterminer seul.
ceph osd pool set ssd hit_set_type bloom ceph osd pool set ssd target_max_bytes 800000000000 ceph osd pool set ssd cache_target_full_ratio 0.9 ceph osd pool set ssd cache_target_dirty_ratio 0.7 ceph osd pool set ssd cache_target_dirty_high_ratio 0.8
ceph osd tier cache-mode ssd forward
S'ASSURER QUE LE CACHE EST VIDE, via la commande:
rados -p ssd ls
Il est possible de le forcer manuellement via la commande:
rados -p ssd cache-flush-evict-all
ceph osd tier remove-overlay rdb
ceph osd tier remove rdb ssd
# Check cluster status ceph -s|--status|status # Check cluster health ceph health {detail} # Watch live cluster change ceph -w|--watch
Documentation: http://docs.ceph.com/docs/mimic/rados/operations/pg-states/
ceph health detail
ceph pg repair <id>
# Liste des pools ceph osd lspools # Liste des disques rbd {pool-name} ls # Liste des snapshots d'un disque rbd snap ls {pool-name}/{image-name} # Unprotect d'une snapshot d'un disque rbd snap unprotect {pool-name}/{image-name}@{snapshot-name} # Purge des snapshots du disque rbd snap purge {pool-name}/{image-name} # Supression du disque rbd remove {pool-name}/{image-name}
rbd: error: image still has watchers This means the image is still open or the client using it crashed. Try again after closing/unmapping it or waiting 30s for the crashed client to timeout.
rbd status {pool-name}/{image-name}
# /!\ Sur l'hôte retourné par 'rbd status' # Vérifiez que l'image en question est présente rbd showmapped # Unmap l'image en question rbd unmap <image-name>