Benutzer-Werkzeuge

Webseiten-Werkzeuge


linux:zfs

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
linux:zfs [2022/02/09 18:00] – [TRIM für SSDs] ckolblinux:zfs [2025/08/13 06:54] (aktuell) – [ZFS on Linux] installieren ckolb
Zeile 10: Zeile 10:
 Homepage von [[http://zfsonlinux.org/|ZFS on Linux]] Homepage von [[http://zfsonlinux.org/|ZFS on Linux]]
  
 +==== installieren ==== 
 +  * in den Paketquellen ''contrib'' aktivieren. 
 +  * linux-header installieren 
 +    * ''apt install linux-headers-amd64'' 
 +  * zfs-Pakete installieren 
 +    * ''apt install zfs-dkms zfsutils-linux''
 ===== zpool erstellen ===== ===== zpool erstellen =====
 Es sollte immer die ID einer Festplatte / Partition verwendet werden, da sich die Laufwerksbuchstaben (/dev/sda, /dev/sdb, etc.) bei einem Neustart des Systems ändern können. Die Option ''-o ashift=12'' sollte bei Festplatten mit 4KB-Sektoren unbedingt verwendet werden, um die volle Performance zu erreichen. Diese sorgt für ein korrektes Alignment der Partitionen. Es sollte immer die ID einer Festplatte / Partition verwendet werden, da sich die Laufwerksbuchstaben (/dev/sda, /dev/sdb, etc.) bei einem Neustart des Systems ändern können. Die Option ''-o ashift=12'' sollte bei Festplatten mit 4KB-Sektoren unbedingt verwendet werden, um die volle Performance zu erreichen. Diese sorgt für ein korrektes Alignment der Partitionen.
Zeile 40: Zeile 45:
 Auf dem Special-Device werden die Metadaten gespeichert. Dadurch ggf. enormer Performance-gewinn. Das Redundanzlevel sollte dem des Pools entsprechen, da beim Ausfall der komplette Pool verloren ist. Auf dem Special-Device werden die Metadaten gespeichert. Dadurch ggf. enormer Performance-gewinn. Das Redundanzlevel sollte dem des Pools entsprechen, da beim Ausfall der komplette Pool verloren ist.
 Die nötige Kapazität der SSD hängt vom Datenbestand ab. Falls die SSD voll ist, werden weitere Metadaten auf den Haupt-Pool geschrieben. Die nötige Kapazität der SSD hängt vom Datenbestand ab. Falls die SSD voll ist, werden weitere Metadaten auf den Haupt-Pool geschrieben.
 +==== kleine Blöcke auf Special Device auslagern ====
 +Um die Performance beim schreiben/lesen von (sehr) kleinen Dateien zu verbessern, können kleine Datenblöcke auf dem Special Device, statt auf den normalen Datasets gespeichert werden.
 +Dazu gibt man die maximale Größe von Blöcken an, die auf dem Special Device gespeichert werden sollen. Blöcke, die größer als die angegebene Größe sind, werden auf den regulären Datasets gespeichert. Datenblöcke mit max. der angegebenen Größe werden auf dem Special Device gespeichert.
 +<code bash>zfs set special_small_blocks=16K pool</code>
 +Ab jetzt werden Blöcke bis 16kB auf dem Special Device gespeichert.
 +Es ist möglich, diese Option für jedes Dataset separat und unabhängig einzustellen.
  
 +**ACHTUNG:** Die angegebene Blockgröße ''special_small_blocks'' solte immer kleiner sein, als die Blockgröße des Pools (standard: 128K)!
 +Wenn ''special_small_blocks'' gleich der Blockgröße des Pools gesetzt wird, wird ALLES ins Special Device geschrieben!
 ===== TRIM für SSDs ===== ===== TRIM für SSDs =====
 Wenn man einen SSD-Pool hat, kann es sinnvoll sein, TRIM zu aktivieren. Dies kann die Schreibperformance verbessern. Wenn man einen SSD-Pool hat, kann es sinnvoll sein, TRIM zu aktivieren. Dies kann die Schreibperformance verbessern.
Zeile 86: Zeile 99:
 ==== ZVOL erstellen ==== ==== ZVOL erstellen ====
 Ein ZVOL mit einer Kapazität von 10GB auf dem Pool "pool" erstellen: Ein ZVOL mit einer Kapazität von 10GB auf dem Pool "pool" erstellen:
-<code bash>zfs create -V 10G pool/vm_1</code>+<code bash>zfs create -V 10G pool/zvol_1</code>
 Die Abbilder finden sich unter /dev/zvol/"poolname"/"ZVOLname". Die Abbilder finden sich unter /dev/zvol/"poolname"/"ZVOLname".
 Also z.B. "/dev/zvol/pool/vm_1". Also z.B. "/dev/zvol/pool/vm_1".
 +
 +==== ZVOL für VMs ====
 +Gängige Dateisysteme verwenden eine Blockgröße von 4 kiB (4096 Bytes). Die standardblockgröße von ZVOLs ist aber 8kiB (8192 Bytes).
 +Um optimale performannce zu erreichen, sollten ZVOLs für VMs mit einer Blockgröße von 4kiB erzeugt werden.
 +Die Blockgröße eines ZVOL kann nachträglich nicht mehr geändert werden.
 +<code bash>zfs create -b 4K -V 10G pool/vm_1</code>
 ==== ZVOL vergrößern ==== ==== ZVOL vergrößern ====
 Das ZVOL "vm_1" auf "pool" auf 20GB vergrößern: Das ZVOL "vm_1" auf "pool" auf 20GB vergrößern:
linux/zfs.1644429625.txt.gz · Zuletzt geändert: von ckolb

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki