Verständnisfrage Deduplizierung

DerNorden

Well-Known Member
Jul 9, 2017
87
1
48
44
Hi,

ich habe auf einem PVE 6.2 einen LXC mit Ubuntu 20.04 erstellt. In diesem habe ich Nextcloud installiert. Darin habe ich einen Ordner mit mehreren Bildern mehrfach kopiert.

Der LXC wächst entsprechend mit den kopierten Daten. Auch wird der ZFS Storage um diese Menge weiter belegt.

Wo und wie kann ich erkennen, dass eine Deduplizierung stattfindet?
 
hi,

ZFS benutzt block-level deduplication (nicht file-level) d.h. die duplicate blocks werden dedupliziert und weiterbenutzt (z.b. wenn du mehrere VMs mit demselben OS hast werden dann die blocks die gleich sind dedupliziert auf dem dataset)

weiter kannst du hier lesen[0]

es ist uebrigens nicht default aktiviert, da es viele ressources kostet.

wenn du willst kannst du so aktivieren: zfs set dedup=on DATASET wobei DATASET ist der name von deinem dataset

[0]: https://blogs.oracle.com/bonwick/zfs-deduplication-v2
 
Wo und wie kann ich erkennen, dass eine Deduplizierung stattfindet?

Am einfachsten, wenn du dir zpool list anschaust und bei Dedup was anders als 1.00 steht. Wenn du genauere Informationen willst, kannst du auch zdb -b rpool eingeben. Falls du doch noch keine Deduplizierung an hast, kannst du ermitteln lassen, wieviel die Deduplizierung bei dir bringen würde mit zdb -S rpool.

ZFS benutzt block-level deduplication (nicht file-level) d.h. die duplicate blocks werden dedupliziert und weiterbenutzt (z.b. wenn du mehrere VMs mit demselben OS hast werden dann die blocks die gleich sind dedupliziert auf dem dataset)

Das ist aber ein großes * dran, denn meistens funktioniert das überhaupt nicht so wie man es erwartet für VMs (LXC ist eine andere Geschichte). Quintessenz ist aber, dass man es lassen sollte. Das ist die Erkenntnis aller, die es ausprobiert haben und es zu wenig Platzeinsparung bringt, dafür aber Unmengen an Ressourcen frisst. Also falls du keine hunderte von GB-RAM für ZFS verwenden möchtest würde ich es gleich aus lassen. Hier hat das mal jemand zusammengefasst.

wenn du willst kannst du so aktivieren: zfs set dedup=on DATASET wobei DATASET ist der name von deinem dataset

Hierzu sollte noch erwähnt werden, dass wenn man einmal Dedup eingeschaltet hat, der I/O-Pfad deines ZFS-Pools irreversibel verändert wird und nur zurückgebaut werden kann, wenn du die Daten in einen neuen Pool überträgst. Das Deaktivieren von Dedup ist immer möglich, macht den dann lahmen Pool aber leider nicht schneller.
 
  • Like
Reactions: oguz

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!