Je ne peux pas comprendre l'utilisation de l'espace brut de ceph.
J'ai 14 disques durs (14 OSD) sur 7 serveurs, 3 To chaque disque dur ~ 42 To d'espace brut au total.
ceph -s
osdmap e4055: 14 osds: 14 up, 14 in
pgmap v8073416: 1920 pgs, 6 pools, 16777 GB data, 4196 kobjects
33702 GB used, 5371 GB / 39074 GB avail
J'ai créé 4 périphériques bloc, 5 To chacun:
df -h
/dev/rbd1 5.0T 2.7T 2.4T 54% /mnt/part1
/dev/rbd2 5.0T 2.7T 2.4T 53% /mnt/part2
/dev/rbd3 5.0T 2.6T 2.5T 52% /mnt/part3
/dev/rbd4 5.0T 2.9T 2.2T 57% /mnt/part4
df montre que 10,9 To sont utilisés au total, ceph montre que 33702 Go sont utilisés. Si j'ai 2 copies, cela doit être ~ 22 To, mais maintenant j'ai 33,7 To utilisés - 11 To manqués.
ceph osd pool get archyvas size
size: 2
ceph df
GLOBAL:
SIZE AVAIL RAW USED %RAW USED
39074G 5326G 33747G 86.37
POOLS:
NAME ID USED %USED MAX AVAIL OBJECTS
data 0 0 0 1840G 0
metadata 1 0 0 1840G 0
archyvas 3 4158G 10.64 1840G 1065104
archyvas2 4 4205G 10.76 1840G 1077119
archyvas3 5 3931G 10.06 1840G 1006920
archyvas4 6 4483G 11.47 1840G 1148291
Bloquer les appareils et OSD FS - XFS
sudo apt-get install --install-recommends linux-generic-lts-vivid
), redémarré, remappé et monté mes volumes rbd, exécuté unfstrim
sur chacun d'eux et récupéré collectivement 450 Go sur un petit cluster de 25 To. Une fois la mise à niveau effectuée, assurez-vous de commencer à monter vos volumes rbd avec l'discard
option.Je ne suis pas un expert ceph mais laissez-moi deviner un peu.
Les appareils bloc ne sont pas montés sans
discard
option. Ainsi, toutes les données que vous écrivez et supprimez n'apparaissent pas sur le système de fichiers (/mnt/part1
), mais comme elles ont été écrites et non découpées, elles restent sur le système de fichiers sous-jacent.Si vous recherchez
USED
vos pools et les ajoutez ensemble, vous obtenez 16777 Go, ce qui équivaut à ce quiceph -s
s'affiche. Et si vous multipliez cela par deux (deux copies), vous obtenez 33554 Go, ce qui est à peu près l'espace utilisé.la source
discard
et "trim" sont des mots fondamentalement différents pour le même mécanisme qui peuvent être utilisés pour renvoyer des blocs inutilisés à un périphérique de bloc. Le montage avec l'discard
option devrait avoir l'effet souhaité. Certaines personnes préfèrent s'exécuter périodiquementfstrim
pour éviter la surcharge des rejets continus par le système de fichiers. Notez que pour que tout cela fonctionne, votre pilote RBD doit prendre en charge TRIM / discard. Comme je l'ai dit, le pilote du noyau RBD fait cela depuis Linux 3.18 - voir tracker.ceph.com/issues/190 .