Anfängerfragen ZFS

JasonBorn

Member
Mar 4, 2021
36
2
13
36
Guten Tag zusammen,

ich bin gerade dabei mir ein Proxmox System mit ZFS zusammenzubasteln und habe dazu noch ein Paar grundlegende Fragen. Hoffe ihr könnt mir weiterhelfen :)

1. Ein ZFS "Laufwerk"? habe ich bereits angelegt. Nur wie greife ich darauf vom Host oder vom LXC darauf zu? Über die Weboberfläche kann ich den mountpoint an den LXC weiterleiten, aber wie greife ich denn letztendlich darauf zu? Ich komme von Windows und da scheint es mir logisch zu sein, dass ich ein Software-Raid erstelle und dann habe ich ein Laufwerk bsp. "F:". Wie ist dies bei Linux?

2. Mein System besteht aus einer SSD (Proxmox) und zwei HDDs (ZFS). Die SSD würde ich per Backup-Server auf einem anderen System sichern. Wenn diese irgendwann hopps gehen würde, wäre dann mein ZFS auf hinüber? Oder ist die auch gesichert, weil ein Backup auf dem Backup-Server vorhanden ist?

3. Kann ich - falls irgendwann nötig - einfach eine dritte HDD einbauen und mit dieser dann mein bisherigen ZFS erweitern/vergrößern?


Vielen Dank für eure Hilfe.
 
Zum Begriff: "ZFS zusammen zu basteln" das ist keine Bastellösung.

Zeig mal bitte deine Config, zpool status; zpool list -v;
und ls -la /dev/disk/by-id/

Und ohne SSD als zfs special device für ZFS mirror mit HDDs, sollte man starten.
Ja das war nur so geschrieben. Entschuldige bitte.

Code:
root@pve:~# zpool status; zpool list -v;
  pool: Daten
 state: ONLINE
config:

        NAME                                      STATE     READ WRITE CKSUM
        Daten                                     ONLINE       0     0     0
          mirror-0                                ONLINE       0     0     0
            ata-TOSHIBA_MG10ACA20TE_14L0A0HLF4MJ  ONLINE       0     0     0
            ata-TOSHIBA_MG10ACA20TE_14V0A00PF4MJ  ONLINE       0     0     0

errors: No known data errors
NAME                                       SIZE  ALLOC   FREE  CKPOINT  EXPANDSZ   FRAG    CAP  DEDUP    HEALTH  ALTROOT
Daten                                     18.2T   241M  18.2T        -         -     0%     0%  1.00x    ONLINE  -
  mirror-0                                18.2T   241M  18.2T        -         -     0%  0.00%      -    ONLINE
    ata-TOSHIBA_MG10ACA20TE_14L0A0HLF4MJ  18.2T      -      -        -         -      -      -      -    ONLINE
    ata-TOSHIBA_MG10ACA20TE_14V0A00PF4MJ  18.2T      -      -        -         -      -      -      -    ONLINE

Code:
root@pve:~# ls -la /dev/disk/by-id/
total 0
drwxr-xr-x 2 root root 660 Jul 27 19:43 .
drwxr-xr-x 9 root root 180 Jul 27 19:43 ..
lrwxrwxrwx 1 root root   9 Jul 27 19:43 ata-CT1000BX500SSD1_2136E5CCDEE7 -> ../../sda
lrwxrwxrwx 1 root root  10 Jul 27 19:43 ata-CT1000BX500SSD1_2136E5CCDEE7-part1 -> ../../sda1
lrwxrwxrwx 1 root root  10 Jul 27 19:43 ata-CT1000BX500SSD1_2136E5CCDEE7-part2 -> ../../sda2
lrwxrwxrwx 1 root root  10 Jul 27 19:43 ata-CT1000BX500SSD1_2136E5CCDEE7-part3 -> ../../sda3
lrwxrwxrwx 1 root root   9 Jul 27 19:43 ata-TOSHIBA_MG10ACA20TE_14L0A0HLF4MJ -> ../../sdd
lrwxrwxrwx 1 root root  10 Jul 27 19:43 ata-TOSHIBA_MG10ACA20TE_14L0A0HLF4MJ-part1 -> ../../sdd1
lrwxrwxrwx 1 root root  10 Jul 27 19:43 ata-TOSHIBA_MG10ACA20TE_14L0A0HLF4MJ-part9 -> ../../sdd9
lrwxrwxrwx 1 root root   9 Jul 27 19:43 ata-TOSHIBA_MG10ACA20TE_14V0A00PF4MJ -> ../../sde
lrwxrwxrwx 1 root root  10 Jul 27 19:43 ata-TOSHIBA_MG10ACA20TE_14V0A00PF4MJ-part1 -> ../../sde1
lrwxrwxrwx 1 root root  10 Jul 27 19:43 ata-TOSHIBA_MG10ACA20TE_14V0A00PF4MJ-part9 -> ../../sde9
lrwxrwxrwx 1 root root   9 Jul 27 19:43 ata-WDC_WD40EZRZ-00GXCB0_WD-WCC7K1KD0TJ1 -> ../../sdc
lrwxrwxrwx 1 root root   9 Jul 27 19:43 ata-WDC_WD82PURZ-85TEUY0_VGK7EP0G -> ../../sdb
lrwxrwxrwx 1 root root  10 Jul 27 19:43 dm-name-pve-root -> ../../dm-1
lrwxrwxrwx 1 root root  10 Jul 27 19:43 dm-name-pve-swap -> ../../dm-0
lrwxrwxrwx 1 root root  10 Jul 27 19:43 dm-name-pve-vm--100--disk--0 -> ../../dm-6
lrwxrwxrwx 1 root root  10 Jul 27 19:43 dm-uuid-LVM-5ZG9k1lIB14knSiNL3W4HHLtHrE4BPJPx0DKL6dUOtmNycgJPD56hF0wKwXejNiG -> ../../dm-1
lrwxrwxrwx 1 root root  10 Jul 27 19:43 dm-uuid-LVM-5ZG9k1lIB14knSiNL3W4HHLtHrE4BPJPY2q9HaCTnVHfaUpSODupqEObBfTpkpPw -> ../../dm-0
lrwxrwxrwx 1 root root  10 Jul 27 19:43 dm-uuid-LVM-5ZG9k1lIB14knSiNL3W4HHLtHrE4BPJPzcPiIp9fA7e2YiclSuEFNkT8H7JsaPn2 -> ../../dm-6
lrwxrwxrwx 1 root root  10 Jul 27 19:43 lvm-pv-uuid-1GD1Z0-kU9e-XCfa-9xrx-LtHT-Elkq-4o752g -> ../../sda3
lrwxrwxrwx 1 root root   9 Jul 27 19:43 wwn-0x5000039d08cbb486 -> ../../sdd
lrwxrwxrwx 1 root root  10 Jul 27 19:43 wwn-0x5000039d08cbb486-part1 -> ../../sdd1
lrwxrwxrwx 1 root root  10 Jul 27 19:43 wwn-0x5000039d08cbb486-part9 -> ../../sdd9
lrwxrwxrwx 1 root root   9 Jul 27 19:43 wwn-0x5000039d08d2fa33 -> ../../sde
lrwxrwxrwx 1 root root  10 Jul 27 19:43 wwn-0x5000039d08d2fa33-part1 -> ../../sde1
lrwxrwxrwx 1 root root  10 Jul 27 19:43 wwn-0x5000039d08d2fa33-part9 -> ../../sde9
lrwxrwxrwx 1 root root   9 Jul 27 19:43 wwn-0x5000cca0beeda874 -> ../../sdb
lrwxrwxrwx 1 root root   9 Jul 27 19:43 wwn-0x50014ee265a5b919 -> ../../sdc
lrwxrwxrwx 1 root root   9 Jul 27 19:43 wwn-0x500a0751e5ccdee7 -> ../../sda
lrwxrwxrwx 1 root root  10 Jul 27 19:43 wwn-0x500a0751e5ccdee7-part1 -> ../../sda1
lrwxrwxrwx 1 root root  10 Jul 27 19:43 wwn-0x500a0751e5ccdee7-part2 -> ../../sda2
lrwxrwxrwx 1 root root  10 Jul 27 19:43 wwn-0x500a0751e5ccdee7-part3 -> ../../sda3
 
Wie sieht den deine Proxmox Einrichtung, bzgl. Boot- und installationsmedium aus?

df -h und df -hT


Code:
root@pve:~# df -h
Filesystem               Size  Used Avail Use% Mounted on
udev                      16G     0   16G   0% /dev
tmpfs                    3.2G  1.5M  3.2G   1% /run
/dev/mapper/pve-root      94G  4.6G   85G   6% /
tmpfs                     16G   43M   16G   1% /dev/shm
tmpfs                    5.0M     0  5.0M   0% /run/lock
efivarfs                 192K  119K   69K  64% /sys/firmware/efi/efivars
/dev/sda2               1022M   12M 1011M   2% /boot/efi
Daten                     19T  128K   19T   1% /Daten
Daten/subvol-100-disk-0   18T  230M   18T   1% /Daten/subvol-100-disk-0
/dev/fuse                128M   20K  128M   1% /etc/pve
tmpfs                    3.2G     0  3.2G   0% /run/user/0


Code:
root@pve:~# df -hT
Filesystem              Type      Size  Used Avail Use% Mounted on
udev                    devtmpfs   16G     0   16G   0% /dev
tmpfs                   tmpfs     3.2G  1.5M  3.2G   1% /run
/dev/mapper/pve-root    ext4       94G  4.6G   85G   6% /
tmpfs                   tmpfs      16G   43M   16G   1% /dev/shm
tmpfs                   tmpfs     5.0M     0  5.0M   0% /run/lock
efivarfs                efivarfs  192K  119K   69K  64% /sys/firmware/efi/efivars
/dev/sda2               vfat     1022M   12M 1011M   2% /boot/efi
Daten                   zfs        19T  128K   19T   1% /Daten
Daten/subvol-100-disk-0 zfs        18T  230M   18T   1% /Daten/subvol-100-disk-0
/dev/fuse               fuse      128M   20K  128M   1% /etc/pve
tmpfs                   tmpfs     3.2G     0  3.2G   0% /run/user/0


Danke fü eure Hilfe
 
1. Ein ZFS "Laufwerk"? habe ich bereits angelegt. Nur wie greife ich darauf vom Host oder vom LXC darauf zu? Über die Weboberfläche kann ich den mountpoint an den LXC weiterleiten, aber wie greife ich denn letztendlich darauf zu?
Über die CLI oder per SSH mit einem Tool wie WinSCP als GUI. PVE hat keinerlei GUI für das Navigieren durch Dateisysteme. Halt fast so wie du auch bei DOS bzw Windows mit CMD/Powershell durch deine Ordner navigieren würdest ("cd .." etc) ;)

Ich komme von Windows und da scheint es mir logisch zu sein, dass ich ein Software-Raid erstelle und dann habe ich ein Laufwerk bsp. "F:". Wie ist dies bei Linux?
Da wird genau so ein Dateisystem in einem Mountpoint gemountet. Bei Linux ist das aber irgendein Ordner den du bestimmst und kein Laufwerksbuchstabe.

Die SSD würde ich per Backup-Server auf einem anderen System sichern.
Falls du den Proxmox Backup Server meinst, der kann (noch) nicht deine Systemdisk sichern (bzw. nur wenn du das per CLI manuell über den proxmox-backup-client selbst erledigst).

Wenn diese irgendwann hopps gehen würde, wäre dann mein ZFS auf hinüber? Oder ist die auch gesichert, weil ein Backup auf dem Backup-Server vorhanden ist?
Falls der PBS gemeint ist, der sicher auch keine ganzen Disks/Raid Arrays, außer du machst es manuell per CLI mit dem proxmox-backup-client. Über das webUI kannst du nur VMs und LXCs sichern.

3. Kann ich - falls irgendwann nötig - einfach eine dritte HDD einbauen und mit dieser dann mein bisherigen ZFS erweitern/vergrößern?
Jain. Hängt davon ab was du für ein Raid hast. Bei 2 Disks im Raid0 würde das gehen. Würde aber echt kein Raid0 für irgendwas raten was nicht nur temporäre Dateien sind. Wenn du aus den 2 Disks ein Raid1 machst, dann kannst du daraus kein 3 Disk Raid5 (bzw. "Raidz1" in ZFS-Terminologie) machen. Was man machen kann ist zwei neue Disks kaufen und dann aus dem Raid1 ein Raid10 machen. Raid5 ist auch ziemlich unschön bei so riesigen aber lahmen 20TB HDDs. Wenn dir da mal eine von ausfällt würde es lange dauern, bis das Resilvering fertig wäre. Bei so großen lahmen Disks nimmt man lieber gleich 6 oder 8 Disks im Raid6 oder wenn Performance wichtig ist ein Raid10.
 
Last edited:
  • Like
Reactions: JasonBorn and news
Über die CLI oder per SSH mit einem Tool wie WinSCP als GUI. PVE hat keinerlei GUI für das Navigieren durch Dateisysteme. Halt fast so wie du auch bei DOS bzw Windows mit CMD/Powershell durch deine Ordner navigieren würdest ("cd .." etc) ;)
Das mit der GUI verstehe ich. Wie komme ich über die CLI auf mein ZFS? Kann es sein, ich muss es nun erstmal einbinden? Fstab o. ä.?

Da wird genau so ein Dateisystem in einem Mountpoint gemountet. Bei Linux ist das aber irgendein Ordner den du bestimmst und kein Laufwerksbuchstabe.


Falls du den Proxmox Backup Server meinst, der kann (noch) nicht deine Systemdisk sichern (bzw. nur wenn du das per CLI manuell über den proxmox-backup-client selbst erledigst).
Ja den meinte ich. Wie sicher ich denn dann meine System SSD? Wenn diese ausfällt, ist, ist alles futsch?
Falls der PBS gemeint ist, der sicher auch keine ganzen Disks/Raid Arrays, außer du machst es manuell per CLI mit dem proxmox-backup-client. Über das webUI kannst du nur VMs und LXCs sichern.
Macht es Sinn, eine VM zu erstellen und in der VM dann ein ZFS laufen zu lassen und dieses widerum mit dem PBS zu sichern?
Jain. Hängt davon ab was du für ein Raid hast. Bei 2 Disks im Raid0 würde das gehen. Würde aber echt kein Raid0 für irgendwas raten was nicht nur temporäre Dateien sind. Wenn du aus den 2 Disks ein Raid1 machst, dann kannst du daraus kein 3 Disk Raid5 (bzw. "Raidz1" in ZFS-Terminologie) machen. Was man machen kann ist zwei neue Disks kaufen und dann aus dem Raid1 ein Raid10 machen. Raid5 ist auch ziemlich unschön bei so riesigen aber lahmen 20TB HDDs. Wenn dir da mal eine von ausfällt würde es lange dauern, bis das Resilvering fertig wäre. Bei so großen lahmen Disks nimmt man lieber gleich 6 oder 8 Disks im Raid6 oder wenn Performance wichtig ist ein Raid10.
ich geb dem Raid 5 vermutlich eine Chance, wenn ich wieder eine günstige finde ;)


Danke für deine Hilfe
 
Ja den meinte ich. Wie sicher ich denn dann meine System SSD? Wenn diese ausfällt, ist, ist alles futsch?
Ja, das spiegelt man am besten ebenfalls. Und kein Raid ersetzt dir ordentliche Backups, also noch irgendwie manuell oder Third-Party-Scripts deine wichtigen Dateien wie den /etc/pve Ordner sichern.

Macht es Sinn, eine VM zu erstellen und in der VM dann ein ZFS laufen zu lassen und dieses widerum mit dem PBS zu sichern?
Kann man auch machen. Nur am besten kein ZFS auf ZFS.
 
  • Like
Reactions: JasonBorn and news
Hi zusammen,
jetzt hab ich endlich Zeit gefunden das Meiste einzustellen. Was ich mir jetzt nicht sicher bin ist folgendes:
Habe eine ZFS Pool, welcher Daten beinhaltet. Wenn jetzt meine Host Festplatte hopps geht, ich aber die PVE Einstellungen mit dem PBS gespeichert hab, kann ich dann einfach die Festplatte tauschen und die Einstellungen wieder vom PBS holen und alles läuft wie vorher?
 
Ernst meint wohl, dass es keinen kompletten Restore des Hosts gibt.
Hast du die wichtigsten Daten wie VM Konfigurationen und weitere PVE Konfigdateien, dann kannst du diese auf einem frischen Host wieder zurückkopieren und die Storages wieder einbinden. Das ist dann ein wenig manuelle Arbeit, aber kommt ja zum Glück selten vor.
 
Also ich betreibe mindestens ZFS Raid1 - Mirror (2x SSD oder 2x HDD) auf den ZFS-Pools.

Und sichere (rsync) über jeweils einen Cronjob das /root und da /etc Verzeichnis in je ein ZFS Dataset.
In/auf jedem läuft noch ein ZFS-Auto-Snapshot, das sorgt für eine Snapshot Granularität von 15 Minuten, bei a1 = 12 Stück. Dann noch a2* stündlich, a3* täglich, a4* wöchentlich a5* monatlich; mit a1,...,a5 E /N.

Diese ZFS-Auto-Snapshot werden automatisch durch 5 Cron-Jobs gemacht und die alten wieder gelöscht.
Aber man sollte von Zeit zu Zeit das System auf "Leichen" überprüfen checkzfs --sourceonly.

Quelle: https://github.com/bashclub

Den Proxmox Backupserver nutze ich auf diese ZFS-Pools virtualisiert, empfohlen wird eine VM.
Ich nutze ihn als LXC (Debian 12.6), so kann ich eine ZFS Dataset an das LXC weiterreichen.
Die Sicherung der LXC und VM kann so über den Proxmox VE direkt und den Proxmox BS erfolgen.
 
Last edited:
Ich meine gelesen zu haben, dass ich einzelne Dateien sichern muss und diese dann bei Defekt wieder einspielen soll
Ich mache das bei postfix und jobs.cfg so --> OK. Bei storage.cfg funktioniert das zB. schon nicht mehr ganz (pbs-storages funktionieren danach nicht).

Ich hab ein (fast) baugleiches Ersatzgerät ... dass im Notfall zum Einsatz kommen würde.
 
Ernst meint wohl, dass es keinen kompletten Restore des Hosts gibt.
Hast du die wichtigsten Daten wie VM Konfigurationen und weitere PVE Konfigdateien, dann kannst du diese auf einem frischen Host wieder zurückkopieren und die Storages wieder einbinden. Das ist dann ein wenig manuelle Arbeit, aber kommt ja zum Glück selten vor.
heißt auch, die Daten meiner beiden ZFS Platten bleiben bestehen?
 
Ich mache das bei postfix und jobs.cfg so --> OK. Bei storage.cfg funktioniert das zB. schon nicht mehr ganz (pbs-storages funktionieren danach nicht).

Ich hab ein (fast) baugleiches Ersatzgerät ... dass im Notfall zum Einsatz kommen würde.
Deshalb mounte ich die Storages manuell neu. Der Rest wie Netzwerk (interfaces) oder datacenter.cfg geht immer.
heißt auch, die Daten meiner beiden ZFS Platten bleiben bestehen?
Wenn die Platten nicht sterben, bleiben die Daten natürlich erhalten. Muss man nur den ZFS Pool wieder importieren.
 
Deshalb mounte ich die Storages manuell neu. Der Rest wie Netzwerk (interfaces) oder datacenter.cfg geht immer.
Ja, das stimmt natürlich! Ich knalle trotzdem immer die alte storage.cfg rein, lösche und verbinde meine PBS dann neu.

Alles andere funktioniert ja problemlos.
 
  • Like
Reactions: Falk R.

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!