Eigenschaften von ZFS ZVOL

841
davidgo

Ich fange an, mir selbst beizubringen, wie ZFS funktioniert - daher kann ich hier grundlegende Missverständnisse haben. Wenn ja, lassen Sie es mich wissen.

Ist ein ZVOL ein Blockgerät oder verhält es sich einfach in einem Herrenhaus ähnlich einem Blockgerät?

Ich kann die Größe eines ZVOL mithilfe eines Befehls wie ändern

zfs set volsize=SIZE poolname/volname 

Verhält sich das Obige genauso wie ein LVM-Volume, dh

  1. Kann ich das ZVOL erweitern? Dann erweitere ich die Partitionen / Dateisysteme in der VM, die dem ZVOL zugeordnet sind.
  2. Kann ich die Größe des ZVOLs nach dem Verkleinern der Partitionen / Dateisysteme im ZVOL sicher VERRINGERN (Dies ist die Operation, die mich am meisten beschäftigt)
  3. Kann ich das ZVOL mit losetup einem Loopback-Gerät zuordnen und damit genauso spielen wie mit einem LVM-Blockgerät.
1

1 Antwort auf die Frage

1
user121391

Es funktioniert so, als wäre es ein Blockgerät.

  1. Ja, Sie erhöhen zunächst das Zvol und vergrößern dann das Dateisystem darin auf die neue Größe (vergleichbar mit der Vergrößerung einer vorhandenen Partition auf einer herkömmlichen Festplatte). Natürlich muss Ihr Dateisystem das Regrohen unterstützen (hier ein Beispiel mit GParted )
  2. Dies hängt wiederum vom enthaltenen Dateisystem und Ihren Daten ab (siehe letzter Absatz der verknüpften Ressource):

    Das Verringern der Festplattengröße entspricht fast dem Erhöhen der Festplatte. Der einzige Unterschied besteht darin, dass Sie die Größe Ihrer Paritionen ändern müssen, bevor Sie die ZFS-Volsize reduzieren.

  3. Ich weiß nicht, wie sich LVM-Volumes hier von normalen Blockgeräten unterscheiden. Nehmen Sie an, Ihr Zvol ist wie eine normale Partition, die als Festplatte dargestellt wird.
Danke für deine Bestätigung. Das macht alles Sinn. Ja, LVMs erscheinen auch als normale Blockgeräte. (Meine Sorge ist, es könnte anders sein, weil ich sehe, dass ich die Zvol komprimieren kann und Snapshots auch anders funktionieren - und ich wollte keine Lösung auf einer Plattform erstellen, die Funktionalität erfordert, die ich nicht richtig verstehe. Vielen Dank noch einmal davidgo vor 6 Jahren 1