RAW ZVOL QCOW2 Diskspace

hackmann

Renowned Member
Jan 6, 2013
226
13
83
Hallo,
ich spiele zur Zeit etwas mit den Formaten raw / qcow2

ich habe zwei VMS
101 raw-disk
102 qcow2-disk

Beide mit Storage = Directory ZFS eingerichtet.

rpool/qcow2_disk
rpool/raw_disk

RAW Format

Code:
ohne Installation
image: vm-101-disk-1.raw
file format: raw
virtual size: 10G (10737418240 bytes)
disk size: 512


mit Installation

image: vm-101-disk-1.raw
file format: raw
virtual size: 10G (10737418240 bytes)
disk size: 1.1G

Beide VMS haben eine Grösse von disk size: 1.1G

Nun kopiere ich eine Datei von 2,35 GB ISO auf die VM = raw-disk
Code:
image: vm-101-disk-1.raw
file format: raw
virtual size: 10G (10737418240 bytes)
disk size: 3.3G

dann lösche ich das ISO File aber der Platz wird dem RAW angehängt?
Code:
disk size: 3.3G

dann kopiere ich diese ISO nochmals auf die VM und lösche diese nochmals
Code:
image: vm-101-disk-1.raw
file format: raw
virtual size: 10G (10737418240 bytes)
disk size: 5.4G

Bei dem QCOW2 genau das gleiche. Ich habe jetzt eigentlich fast 8GB mehr auf dem Proxmox Server!.


Da ist ja diese Variante am besten oder nicht?
qcow2 zvol Thinprovision "Disk = SCSI' as Bus/Scsi (virtio-scsi)/Discard"


Also wenn eine VM mit einer CLOUD eingerichtet wird und in dieser werden täglich grosse Dateien kopiert und gelöscht, dann kommen da ja einiges zusammen.

Gibt es da eine goldene Mitte, denn letzte Woche hatte ich ein Frage wegen einer VM für einen Proxmox Server.
Da sollte ein Seafile Server eingerichtet werden. Wenn das RAW und qcow2 so stark wächst, dann wäre meiner Meinung nach doch grundsätzlich immer Thinprovision "Disk = SCSI' as Bus/Scsi (virtio-scsi)/Discard"
einzusetzen, wenn auf dem Server viele Dateien gelöscht oder kopiert werden?

Wäre für einen Tipp sehr dankbar.

vielen dank
 
Hallo,

so wie ich dass sehe, gibt es keine Lösung dafür oder?

Wenn ich 2 GB auf die VM kopiere und diese lösche, dann bleibt auf dem Proxmox 2GB stehen.

Dann kommt mal die Frage des Kunden, der etwas Ahnung hat, wieso denn eine Virtualisierung?

Ich hatte so ein Gespräch heute.

der Kunde kopiert 10 GB "wegen einer Sicherung" die Daten auf einer VM.

Nach dem Löschen dieser Daten, war dem Proxmox um 10 GB mehr belastet.

Ich gebe mal diese Frage an den Support weiter.

leider hatte ich bisher von diesem keiner Antwort bekommen.
 
Ist ja theoretisch schon sehr oft hier gefragt worden und auch in der Dokumentation gut beschrieben.
Was du nicht beschreibst (ich gehe mal von einem Linux aus): Hast du "fstrim" in den VMs auch nach Löschen der Dateien genutzt?

Testest du auf deinem ZFS nur die Funktionatlitäten von QCOW2 und RAW oder ist das dein produktives Setup?
Wenn ZFS, dann bleibe auch bei den vdevs von ZFS und baue nicht hier noch ein LVM und dahinter eine Disk auf. Stichwort Performance, entsprechende Threads und Infos im Internetz gibt es zu genüge.

Ansonsten funktioniert die Discard Option in VMs wie sie soll (solange das Storage Modell es unterstützt). Schreibst du 10GB und löscht diese wieder, werden diese auch wieder frei. Bringt dir bei RAW natürlich recht wenig, da du eine feste Größe der Disk vor gibst die auch so erstellt wird. Alles mit Thin Provisining (ZFS, LVM) tut hier wunderbar. Da kannst du auch eine 100GB Disk erstellen die nur die genutzte Größe bietet.

Mehr dazu:
https://pve.proxmox.com/wiki/Storage
 
danke,

fstrim ist im Ubuntu 18 LTS bereits vorhanden und ja, ich lasse fstrim laufen.
Dass ist eine reine Testumgebung.

Der Platz in der VM ist nicht das Problem, sondern das qcow2 wird immer grösser wenn ich in der VM etwas lösche.

Die VM hat 8GB = qcow2 . Kopiere ich in die VM 2 GB und lösche diese wieder, dann hat die VM im Ubuntu "df -h" diese auch gelöscht.
Aber wenn ich auf dem Proxmox mir diese qcow2 ansehe, so ist die um 2GB gewachsen, dass heist, diese ist nicht mehr 8GB sondern 10GB, "wie oben auch sehr ausführlich geschildert".

Auf meinem Produktivserver "LVM" also kein ZFS, hatte ich ein Backup auf dem Webserver machen müssen. Das TAR File hatte 3GB.
Diese habe ich dann wieder gelöscht, aber das qcow2 File ist jetzt um 3GB gewachsen.

würde ich jeden Tag ein Backup machen müssen, dann wären das in der Woche 15GB mal 4 = 60GB.
Nach zwei Wochen wäre meine Serverplatte voll, von nur einer VM.

#-

Wie bekomme ich dieses ZUWACHS wieder weg? Dass konnte ich nirgends nachlesen.

Auf dem Testsystem habe ich jetzt 3 Server mit je 10GB = qcow2

auf jedem kopierte ich mal ein ISO von 5 GB und löschte diese wieder.
Auf dem Proxmox habe ich nun 15GB mehr , jedes ist nun 5GB grösser.

Ja, die Frage kam eigentlich schon öfters vor, aber eine eindeutige Lösung konnte ich leider nicht finden.

viele grüsse
 
Ich weiß nun gar nicht ob QCOW2 überhaupt Discard kann, Erfahrungen habe ich nur mit LVM und ZFS bisher gemacht.

Geht es dir vorrangig um die Größe des Backups oder auch der Größe der VM auf dem Hostsystem?
Um die Größe der Disk auf dem Hostsystem möglichst klein zu halten ohne CEPH zu nutzen würde dir nur der Einsatz eines LVM Thin Pools oder eben ZFS mit Thin Option bleiben. Habe ich zu Hauf im Einsatz und hat deine gewünschten Features.
 
"zu nutzen würde dir nur der Einsatz eines LVM Thin Pools oder eben ZFS mit Thin Option bleiben"

hatte ich ja Probiert, ZFS mit Thin Option, Da war genau das gleiche.!

ich werde am Wochende mal Scrennshots der Liste zukommen lassen.

Ich möchte hinzufügen, dass ich keinen Cluster habe, da ich 20 Mitarbeiter auf dem Server Tummeln.

vielen dank
 
LVM und ZFS sind reine lokale Storages, braucht also keinen Cluster.
Poste mal deine storage.cfg und ne VM Konfiguration. Wenn du nun die VMs auf dem ZFS als qcow2 oder raw anlegst nutzt du nicht wirklich ein ZFS vdev. Hast du Proxmox per ISO installiert? Dann sollte da ein local_zfs Storage vorhanden sein. Auf das Storage müssen die VMs (im Storage schauen das Thin Provisioning aktiv ist).
 
ZFS sollte man grundsätzlich nicht mit raw oder qcow2 files benutzen, sondern das ZFS storage plugin benutzen, so wie es der Installer auch automatisch konfiguriert.

https://pve.proxmox.com/wiki/Storage:_ZFS
 
Vielen dank für eure Antworten.


Auf der VM "Ubuntu 18 LTS" habe ich den wöchentlichen fstrim deaktivieren.
Danach erstellte ich ein einfaches Script "dass ist nur für zum Testen gedacht!"

Code:
#!/bin/sh
LOG=/var/log/trim.log
echo -n > /var/log/trim.log
echo "*** $(date -R) ***" >> $LOG

/sbin/fstrim -av >> $LOG

cat $LOG  > trimt.txt
echo "trim" | mail -s "trim" mail@domain.de  < trimt.txt

Wenn auf der VM 2GB gelöscht werden und das Script in der VM ausgeführt wird, dann werden die 2GB
auch vom dem Image vom Proxmox gelöscht.

Der Testlauf ging 1nen Tag lang im Abstand von 5 Minuten.

#-------------------------------------------------------------------------------
"ZFS sollte man grundsätzlich nicht mit raw oder qcow2 files benutzen, sondern das ZFS storage plugin benutzen, so wie es der Installer auch automatisch konfiguriert."

Bin ich mir nicht sicher, welche Vorteile dass bringt. Wenn ich auf das Original Setup nach der VM Installation gehe, dann habe ich ein Blockgerät.

Code:
rpool/data/vm-228-disk-1  3.86G   181G  3.86G  -

Im Webgui ist das als raw gekennzeichnet.

Ich nutze schon seit einigen Monaten qcow2 auf ZFS, Nachteile dadurch konnte ich nicht feststellen
Wobei die Proxmox Server die ich betreue, keinen Cluster nutzen.

Da ich viel mit Bacula arbeite, ist es mir recht, dass ich auf dass Image zugreifen und sichern kann.

Für meine VM lege ich ein Dataset an

zfs create datenproxmox/server
Dieses mounte ich über Storage im Webgui Directory.

Bei der Installation gebe ich dann dieses an "datenproxmox/server=Directory"
Nun kann ich direkt mit Bacula das qcow2 oder raw sichern und kann dieses Image kopieren oder mounten..

Es kommt immer auf das Projekt an.

Danke für euere Antworten.




.
 

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!