Ich kann die Verwendung von Ceph Raw Space nicht verstehen.
Ich habe 14 Festplatten (14 OSDs) auf 7 Servern, 3 TB pro Festplatte ~ 42 TB Rohspeicher insgesamt.
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
Ich habe 4 Blockgeräte mit jeweils 5 TB erstellt:
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 zeigt, dass insgesamt 10,9 TB verwendet werden, ceph zeigt, dass 33702 GB verwendet werden. Wenn ich 2 Kopien habe, muss es ~ 22 TB sein, aber jetzt habe ich 33,7 TB verwendet - 11 TB fehlen.
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
Blockieren Sie Geräte und OSD FS - XFS
sudo apt-get install --install-recommends linux-generic-lts-vivid
) auf 3.19 aktualisiert , neu gestartet, meine rbd-Volumes neu zugeordnet und gemountet,fstrim
auf jedem von ihnen ausgeführt und insgesamt 450 GB in einem kleinen 25-TB-Cluster wiederhergestellt. Stellen Sie nach dem Upgrade sicher, dass Sie mit derdiscard
Option beginnen, Ihre rbd-Volumes bereitzustellen .Ich bin kein Ceph-Experte, aber lassen Sie mich ein wenig raten.
Die Blockgeräte werden nicht ohne
discard
Option montiert . Daten, die Sie schreiben und löschen, werden also nicht im Dateisystem (/mnt/part1
) angezeigt , aber da sie einmal geschrieben und nicht gekürzt wurden, bleiben sie im zugrunde liegenden Dateisystem.Wenn Sie nach
USED
Ihren Pools suchen und diese addieren, erhalten Sie 16777 GB, was dem entspricht, was angezeigt wirdceph -s
. Und wenn Sie das mit zwei (zwei Kopien) multiplizieren, erhalten Sie 33554 GB, was so ziemlich dem verwendeten Speicherplatz entspricht.quelle
discard
und "Trimmen" sind grundsätzlich verschiedene Wörter für denselben Mechanismus, mit denen nicht verwendete Blöcke an eine Blockvorrichtung zurückgegeben werden können. Die Montage mit derdiscard
Option sollte den gewünschten Effekt haben. Einige Benutzer bevorzugen eine regelmäßige Ausführungfstrim
, um den Aufwand für fortlaufende Verwerfungen durch das Dateisystem zu vermeiden. Beachten Sie, dass Ihr RBD-Treiber TRIM / Discard unterstützen muss, damit dies funktioniert. Wie gesagt, der RBD- Kerneltreiber tut dies seit Linux 3.18 - siehe tracker.ceph.com/issues/190 .