Netzwerk Storage mit Snapshot support

BassT

Member
Jan 3, 2023
57
14
8
Hi @ll,

wie in der Überschrift schon erwähnt möchte ich mein Proxmox Cluster etwas aufmotzen, aber mir fehlt aktuell noch der zündende Funken ;)

Aktuell laufen 3 nodes, jeder mit einer NVME als System (LVM). Auf node3 läuft ein OMV welches 6 externe Platten verwaltet (2x2TB / 4x1TB).
Alle Platten sind in LVM Partitioniert, aber nicht als RAID, da nur die 2x 2TB Platten identisch sind. Die Platten sind per NFS / SMB verteilt.
Mit dieser config kann ich bei den VMs (qcow2) ein snapshot machen. Bei LXC (raw) funktioniert kein snapshot.

Mein Ziel ist, dass die images der Container/VMs auf node3 sind um per HA Serverausfälle kurzfristig zu kompensieren. Zusätzlich möchte ich snapshots von allen images machen können.

Ich habe mich jetzt etwas schlau gemacht und habe mal mit ZFS rumgespielt, aber hier bekomme ich das nur lokal zum laufen. Ceph(fs) könnte auch eine möglichkeit sein, aber da fehlt mir noch mehr input.

Wer hat da etwas Erfahrung und kann mir mit tutorials helfen? :)

Grüße
 
Mit Ceph erstellst du ein virtuelles Storage, welches sich auf mehrere Nodes verteilt. Für Ceph brauchst du aber ein schnelles, möglichst dediziertes Netzwerk, also unter 10GBit brauchst du nicht anfangen.
ZFS ist immer nur lokal, aber mit Replikation kann man einen HA Cluster bauen. Die Replikation ist immer nur asynchron, das heißt, wenn du alle 5 Minuten synchronisierst, könnte beim Sterben eines Hosts, bis zu 5 Minuten Daten verloren gehen. Wenn das tolerierbar ist, ist das die empfohlene Lösung fürs Homelab. Livemigration geht mit ZFS Replikation auch super, da wird zum RAM nur das letzte Delta synchronisiert, was man in der Praxis gar nicht merkt.
 
  • Like
Reactions: BassT
Mit Ceph erstellst du ein virtuelles Storage, welches sich auf mehrere Nodes verteilt. Für Ceph brauchst du aber ein schnelles, möglichst dediziertes Netzwerk, also unter 10GBit brauchst du nicht anfangen.
ZFS ist immer nur lokal, aber mit Replikation kann man einen HA Cluster bauen. Die Replikation ist immer nur asynchron, das heißt, wenn du alle 5 Minuten synchronisierst, könnte beim Sterben eines Hosts, bis zu 5 Minuten Daten verloren gehen. Wenn das tolerierbar ist, ist das die empfohlene Lösung fürs Homelab. Livemigration geht mit ZFS Replikation auch super, da wird zum RAM nur das letzte Delta synchronisiert, was man in der Praxis gar nicht merkt.
Mein LAN ist 1Gbit, dann fällt Ceph raus.

ZFS over iSCSI ist jetzt hoffentlich die Lösung.
Spiele gerade mit OMV und ZFS herum.

Was genau meinst du mit "Replikation"? Hört sich auch interessant an. 5min wäre ok, vielleicht könnte man das auch af 3min runterschrauben.
Konkret habe ich auf node1 einen Proxy und Adblocker am laufen, welcher den Traffic der Familie kontrolliert. Wenn eins von beiden ausfällt ist das Internet für dieses Netz tot :(
 
Last edited:
ZFS Replikation ist bei Proxmox echt simpel und gut gelöst. Im Proxmox Wiki ist das auch sehr gut beschrieben. Die Mindestzeit für Replikation ist 1 Minute. HA funktioniert perfekt. Nutze ich auch bei kleineren Unternehmen produktiv.
 
CEPH kann auch mit 1GbE laufen. Es ist immer die Frage welche Leistung man erwartet. Häufig ist bei 1 GbE aber der "billige" Switch das Problem, da der Latenz ohne Ende hat. Hier sollte man mind. sowas wie Juniper EX4200 nutzen oder neuere.

Mit so wenigen HDDs macht CEPH aber auch nicht wirklich Sinn. Mit je 2 SSD pro Node starten kann durchaus funktionieren.

Wenn du die Möglichkeit hast, probiere es doch mal aus und entscheide selbst ob es dir taugt.

Anonsten könntest du auch ein Meshed 10 GbE Netz machen. Die Karten kosten nix mehr und auf die Entfernung kannst du auch mit Cat 5E Kabeln arbeiten. Muss nicht mal LWL oder Cat 7/8 Kabel sein.
Auch könntest du eine Node zum Storage umbauen mit z. B. TrueNAS. Oder ein Synology NAS nehmen. Einfache 10 G Switches gibt es bereits für wenige hundert Euro.

Möchtest du denn dafür Geld investieren? Wenn ja, wie viel?
 
  • Like
Reactions: BassT
CEPH kann auch mit 1GbE laufen. Es ist immer die Frage welche Leistung man erwartet. Häufig ist bei 1 GbE aber der "billige" Switch das Problem, da der Latenz ohne Ende hat. Hier sollte man mind. sowas wie Juniper EX4200 nutzen oder neuere.

Mit so wenigen HDDs macht CEPH aber auch nicht wirklich Sinn. Mit je 2 SSD pro Node starten kann durchaus funktionieren.

Wenn du die Möglichkeit hast, probiere es doch mal aus und entscheide selbst ob es dir taugt.

Anonsten könntest du auch ein Meshed 10 GbE Netz machen. Die Karten kosten nix mehr und auf die Entfernung kannst du auch mit Cat 5E Kabeln arbeiten. Muss nicht mal LWL oder Cat 7/8 Kabel sein.
Auch könntest du eine Node zum Storage umbauen mit z. B. TrueNAS. Oder ein Synology NAS nehmen. Einfache 10 G Switches gibt es bereits für wenige hundert Euro.

Möchtest du denn dafür Geld investieren? Wenn ja, wie viel?
Wenn du Ceph mit 1x GBit betreibst kannst du maximal 40 MB/s durchsatz erwarten. Zum rumspielen vielleicht OK, aber glücklich wird man dann nicht.
 
Zum rumspielen vielleicht OK, aber glücklich wird man dann nicht.
Das muss aber der Threadersteller entscheiden, nicht du oder ich ;)
Es funktioniert und ist möglich, mehr war nicht meine Aussage.

Als weitere Lösung kann man das aber auch kombinieren, auf local Storage muss man ja nicht verzichten.
 
Das muss aber der Threadersteller entscheiden, nicht du oder ich ;)
Es funktioniert und ist möglich, mehr war nicht meine Aussage.
Meine Erfahrung ist, nachher kommen dann vorwürfe wie „konntest du nicht gleich sagen, das es Extrem langsam ist“
 
Da meine Netzt wie folgt aussieht ist das Ceph wohl raus. Die Kosten für eine "gute" umsetzung würde den nutzen übersteigen.

Screenshot_20231118_225438.png

PS: Der Raspi macht aktuell noch das NAS, soll aber durch den Elitedesk abgelöst werden.

EDIT: Aktuell baue ich die nodes um. LVM-Thin für alle :)
Damit bekomme ich den Snapshot support und dann kommt die Replikation für Adblocker / Proxy und (Nextcloud - hier könnte der 5 min ausfall doof sein). Mal sehen was ich damit erreiche ;)

EDIT2: Auf dem node3 läuft jetzt ein OMV mit ZFS Pool, mir ist nur nicht ganz klar ob ich so ein ZFS over iSCSI hin bekomme, ... Dann wäre alles super :) (Snapshot Shared)
 
Last edited:
So, mittlerweile habe ich das ZFS over iSCSI einbinden können.

Was mich zuerst stutzig macht: ich kann es nur für VMDisks nutzen???
Desweiteren habe ich schreib Probleme auf dem Pool "parent is not a filesystem" :(

ZFS Config auf dem NAS System:
Target 2: iqn.2321-10.com.linux.iscsi:tank.vol2
System information:
Driver: iscsi
State: ready
I_T nexus information:
LUN information:
LUN: 0
Type: controller
SCSI ID: IET 00020000
SCSI SN: beaf20
Size: 0 MB, Block size: 1
Online: Yes
Removable media: No
Prevent removal: No
Readonly: No
SWP: No
Thin-provisioning: No
Backing store type: null
Backing store path: None
Backing store flags:
LUN: 1
Type: disk
SCSI ID: IET 00020001
SCSI SN: beaf21
Size: 268435 MB, Block size: 512
Online: Yes
Removable media: No
Prevent removal: No
Readonly: No
SWP: No
Thin-provisioning: No
Backing store type: rdwr
Backing store path: /dev/tank/vol2
Backing store flags:
Account information:
ACL information:
ALL

Config in Proxmox:
zfs: test-pool
blocksize 16384
iscsiprovider iet
pool tank/vol2
portal 192.168.10.149
target iqn.2321-10.com.linux.iscsi
content images
nowritecache 1
sparse 1
 
Egal ob du ZFS nutzt, iSCSI ist immer ein Blockdevice, daher kannst du da keine Dateien nativ ablegen, sondern VM Disks wo das Dateisystem in der VM ist.
 
  • Like
Reactions: BassT
ok, damit fällt dann ZFS overiSCSI auch raus :D
Danke für den input ;)
Sag doch einfach was du am Ende des Tages erreichen willst, wir können dir dann unsere Wege schildern. Eventuell gibt’s für dich ja noch viel bessere Lösungen.
 
ich möchte meine LXCs und VMs auf platten speichern, welche snapshots zulassen und das ganze am besten zentral auf dem node3 "NAS" um per HA im zweifel auf einen anderen node zu switchen.

Lösung dank deiner hilfe bisher:
- VMs sind qcow2, damit auch auf NAS (NFS - LVM) Snapshot/HA möglich.
- Relevante LXCs auf lokalem ZFS/LVM-Thin (LVM-Thin bevorzugt, weil Standardt config von Proxmox) -> Snapshot möglich.
- benötigte LXCs werden per Replikation gespiegelt, damit auch HA fähig.

So müsste es funktionieren :)
 
Wofür brauchst du die Snapshotfunktion?
Viele machen statt Snapshots lieber zusätzliche PBS Backups. Da bekommt man auch schnell mal einzelne Dateien zurück.
 
Ich mache täglich "normale" Backups, aber für meinen Proxmox-Updater habe ich Snapshot Funktion hinzugefügt, um diese "schnellen" Backups vor den Updates zu machen :)

Dann werde ich es mal mit local ZFS versuchen ;)

EDIT: Die snapshot funktion ist aktuell noch in der Develop Branch :)
 
Last edited:
ZFS macht doch aber erst bei 2 identischen Platten im RAID sinn, oder?
Ich nutze pro node "nur" je eine NVMe (256Gig) - macht das da dann auch noch sinn?
Brauche für Proxmox ca 20Gig, den rest könnte ich für ZFS nutzen.
 
so, wieder schlauer.
Ich habe mal ein test Proxmox mit ZFS Raid0 erstellt. Darauf system mit 20gig ZFS + data ZFS.

So sinnig? :)

Dann würde ich so alle nodes umbauen.
 

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!