Festplattenspeicher unter Proxmox

Bei aller Liebe und dem Einsatz vieler User hier aber eine Frage:

Wären solche Themen nicht besser im Proxmox Forum aufgehoben ??

Proxmox Forum deutschsprachiger Bereich

@citysprinter magst Du mal bitte in der shell folgendes eingeben und die Ergbnisse posten:

pvesm status

lvs

zpool status

zfs für den Storage auf einem Virtualisierungshost zu nehmen ist übrigens keine sonderlich gute Idee. zfs bringt gegenüber lvm-thin auf einem Singlehost ohne Redundanz ausschließlich Nachteile

Ich habe die beiden 2 TB Modelle zu einem ZFS Pool genommen, Raid1, auch wenn dies mit der Kombi NVME und SSD nicht ideal ist.

root@pve-10:~# pvesm status
Name Type Status Total (KiB) Used (KiB) Available (KiB) %
local dir active 1881575296 127104 1881448192 0.01%
local-zfs zfspool active 1882967892 1519684 1881448208 0.08%

lvs gibt nichts zurück.

zpool status
pool: rpool
state: ONLINE
config:

    NAME                                                 STATE     READ WRITE CKSUM
    rpool                                                ONLINE       0     0     0
      mirror-0                                           ONLINE       0     0     0
        nvme-eui.00000000000000008ce38e05013d3f85-part3  ONLINE       0     0     0
        ata-CT2000MX500SSD1_2040E4B48006-part3           ONLINE       0     0     0

errors: No known data errors

Die HDD ist noch nicht eingebunden, werde ich aber mittels ext4 vornehmen. Oder hier auf lvm-thin setzen?

Ahhh.. dein local liegt auch als Dataset auf deinem zfs Mirror… Das Datacenter addiert nur die „oberste Schicht“ Speicher. Also beide Datasets des Mirrors… Daher die Größe…

Ein Mirror mit 2 unterschiedlichen Storagetypen ist auch eine eher schlechte Idee. Die SSD bremst die NVMe unnötig aus und es kann im Zweifel auch mal passieren (sollte die SSD länger mal nicht reagieren) das sie aus dem Pool fliegt. Datenverlust ist nicht zu erwarten, aber lass das trotzdem.

Was hast Du insgesamt vor? Wofür meinst Du zfs zu brauchen?

Was hast Du mit der HDD vor? Davon ist abhängig, womit ich sie formatieren würde

Ich persönlich würde eher die 256GB SSD für proxmox als Betriebsystemplatte nutzen. Eher ext4 als zfs, aber an der Stelle ist das fast noch egal. Wenn es denn unbedingt zfs sein muss würde ich trotzdem beide (ssd und nvme) getrennt einrichten. So hast Du die Möglichkeit Workloads mit viel Plattenauslastung auf der NVMe laufen zu lassen und den Rest auf der SSD…

Ich bin oben über das Stichwort ZFS gestolpert, Damit die Überlegung ZFS anstatt ext4 zu verwenden. Aber ja, zwei identische NVME wären dazu wohl wirklich besser.

Neben Proxmox soll HA und OpenCCU in VM laufen, omada in einem Container.

Die HDD ist für Datenspeicher vom Handy gedacht. Ich wollte mich da reinarbeiten.

Backups sollen auf das vorhandene NAS laufen.

Also doch die kleine Toshiba für PVE, die 2 TB NVME für Container und VMs? Die 2 TB SSD könnte auch für Backups der Container laufen.

Mein Proxmox läuft seit Jahren ohne ZFS und ich wüsste auch nicht, wozu ich das brauche.
Einzig Snapshots sind eine Option, aber ZFS benötigt mehr Resourcen.

Und by-the-way - Backups haben nichts auf dem System selber zu suchen, kopiere die extern, also auf die NAS.
Wenn du den Proxmox neu aufsetzen muss, ist es ein Krampf, die zweite Disk ohne Datenverlust wieder einzubinden - spreche aus Erfahung.

1 „Gefällt mir“

Dann also am besten so:

PVE auf die 256GB NVME

VMs etc. auf die 2 TB NVME, die 2 TB SSD bleibt als Reserve im System

Die 18 TB HDD für Daten von den Mobiletelefonen, Backups hierfür evtl. auf eine per USB angebundene weitere HDD

Backup von PVE, VM etc. aufs NAS

Dann muss ich mir nur überlegen, wo ich ein weiteres Backup außerhalb ablege.

Snapshots gehen auch mit LVM-Thin, das wird nur bei vielen Snapshots etwas langsamer. Es ist dann aber trotzdem noch deutlich performanter als zfs.

Wenn Du später mal aus einem Host ein Cluster mit mindestens 2 Hosts machen möchtest, kannst Du zfs für die Replikation der virtuellen Festplatten einsetzen. Die Replikation (mit zfs) findet allerdings nicht ständig sondern nur alle 15 Minuten statt.

Ansonsten hast Du von zfs auf einem Single Host eher Nachteile.

Würde ich so machen. Nutze für die NVMe LVM-Thin als „Partitionierung“. So bist Du flexibel was den Speicher angeht, kannst Snapshots machen (vor Updates, etc) und verlierst kaum Performance.

Nutze bei der Installation auf der 256GB die Möglichkeit der erweiterten Optionen und wähle bei maxvz einen möglichst kleinen Wert oder null. Wenn Du null wählst kannst und solltest Du nach der Installation das Root Volume vergrößern. So hast Du zwar auf der NVMe keinen Platz für VM‘s , aber für Backups, ISO-Images etc… Die 2TB NVMe kannst Du dann über die Weboberfläche nach der Installation als Storage einbinden.

Ja, so liegen die Daten außerhalb des Proxmox Hosts.

Das würde ich nicht machen. USB Platten kannst Du zwar auf dem Host selbst oder auch in eine VM mounten. Richtig zuverlässig ist das durchreichen mit USB-Platten nach meiner Erfahrung allerdings nicht. Wenn noch Platz auf dem NAS ist, Backups der 18TB Platte eher dahin.

Auf einem NAS ergibt zfs (wenn man denn die Wahl hat) meiner Meinung nach dann auch richtig Sinn.

Die 256er hat jetzt LVM und nicht LVM-Thin. Ich wüsste aber auch nicht, wo ich dies während der Installation anders einstellen hätte können.

 root@pve1:\~# lsblk
 NAME         MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
 sda            8:0    0   1.8T  0 disk
 sdb            8:16   0  16.4T  0 disk
 nvme1n1      259:0    0 238.5G  0 disk
 ├─nvme1n1p1  259:1    0  1007K  0 part
 ├─nvme1n1p2  259:2    0     1G  0 part /boot/efi
 └─nvme1n1p3  259:3    0   237G  0 part
 ├─pve-swap 252:0    0     8G  0 lvm  \[SWAP\]
 └─pve-root 252:1    0  69.2G  0 lvm  /
 nvme0n1      259:4    0   1.8T  0 disk

Obwohl die Partition 237 GB hat, wurde root nur 69 GB zugeordnet. Abzgl. swap verbleiben dann doch 60 GB ungenutzt. Wie kann ich das anpassen?

nvme0 würde ich dann als LVM-Thin einbinden. Partitionieren muss ich sie dafür aber nicht?

Snapshots würden dann auf die sda laufen, aber nur wenn ich die als Verzeichnis einbinde, sowiet ich dies richtig verstanden habe.

sdb würde dann ebenfalls als Verzeichnis eingebunden werden?

:crayon:by HarryP: Code-/Logzeilen formatiert (bitte immer in </> einbinden)
s.a.: (Neues Update & Features - Hier in der Community 🫶)

Das erledigst du mit

lvextend -l +100%FREE /dev/mapper/pve-root --resizefs

Sollte es eine Fehlermeldung geben, hier posten

Nein, lvm ist sozusagen eine Art der Formatierung. Das Laufwerk wird damit mittels einer Software so vorbereitet, dass Du flexibel mit dem Laufwerk arbeiten kannst. Du könntest sowohl ein RAID daraus machen, als auch das eine so aufteilen, dass deine VM‘s jeweils ein Stück abbekommen. zfs enthält auch einen lvm. (Das blöde ist, dass die Technik so heißt wie das Standardwerkzeug unter Linux)

Nein Snapshots laufen auf dem selben Storage auf dem die VMs laufen. Du kannst die auch als lvm-thin einbinden und andere Sachen darauf laufen lassen oder es z.b. für Backups der VMs nutzen

root@pve1:~# lvextend -l +100%FREE /dev/mapper/pve-root --resizefs
  File system ext4 found on pve/root mounted at /.
  Size of logical volume pve/root changed from <69.25 GiB (17727 extents) to <229.00 GiB (58623 extents).
  Extending file system ext4 to <229.00 GiB (245882683392 bytes) on pve/root...
resize2fs /dev/pve/root
resize2fs 1.47.2 (1-Jan-2025)
Filesystem at /dev/pve/root is mounted on /; on-line resizing required
old_desc_blocks = 9, new_desc_blocks = 29
The filesystem on /dev/pve/root is now 60029952 (4k) blocks long.

resize2fs done
  Extended file system ext4 on pve/root.
  Logical volume pve/root successfully resized.
root@pve1:~#

Das hat geklappt.

Aber warum steht ext4? Unter Disks wird LVM ausgegeben.

Der nächste Schritt wäre dann über Disks - LVM-Thin die 2 TB NVME einzubinden?

LVM ist halt eine Art, Festplattenplatz anzusprechen. Du brauchst für Daten trotzdem ein Dateisystem. Bei Linux (einschließlich Proxmox) ist das ext4…

├─nvme1n1p2 259:2 0 1G 0 part /boot/efi

Ist z.B. mit fat32 formatiert. Da die Platte genutzt wird um von Ihr ein Betriebssystem zu booten, wird nicht die ganze Platte vom lvm genutzt sondern bei dir nur nvme1n1p3. Innerhalb befinden sich dann 2 logische Volumes (Root und swap)…

Stell Dir das wie Pakete vor… nur das diese sowohl von der Größe her über mehrere Platten gespannt werden können, oder dass eben eine Platte mehre Pakete enthalten kann. Allerdings können diese Pakete dynamisch sein, mit festen Größen und mit festen Endgrößen, aber nur so groß wie der aktuell belegte Platz (das ist dann lvm-thin) diese LogicalVolumeManager können entweder im Dateisystem enthalten sein (zfs, btrfs) oder sitzen zwischen den Platten und dem Dateisystem. Wenn also kein zfs oder btrfs verwendet wird, musst du die einzelnen Pakete später formatieren damit da auch Dateien rein können. Bei zfs/btrfs sind die Pakete automatisch mit zfs respektive btrfs formatiert…

Für Proxmox eignet sich lvm-thin hervorragend. Du weist der VM nur das logische Volume zu, das ist erstmal unformatiert. Das Betriebssystem in der VM kann dann den Platz mit einem Dateisystem belegen, ohne dass darunter ein anderes Dateisystem liegt. Das macht es so schnell… da lvm-thin aber trotzdem weiß welche Sektoren gerade beschrieben werden, funktionieren Snapshots eben auch….

Genau, dass wäre der nächste Schritt.

Dann ist das der nächste Schritt.

Auf der 2 TB NVME können aber z.B. keine Snapshots abgelegt werden. Hierfür müsste ich dann ein Verzeichnis anlegen, über die 2 TB SSD?

Nicht unabhängig von den VMs. Die Snapshots gehören zum jeweiligen logical Volume (der vm). Du kannst aber eine vm anlegen. Von dieser kannst du dann einen Snapshot erstellen….

oder meinst du Backups? Das geht so tatsächlich nicht. Lvm-thin ist erstmal ein Paket. :slight_smile: du könntest innerhalb der Komandozeile ein LV erstellen und das formatieren. Das bringt aber das ganze Konzept von Proxmox durcheinander. Wenn Du Backups lokal (das sollte nur ein Zwischenschritt sein, Backups sollten außerhalb des zu sichernden Systems gespeichert werden) speichern willst könntest Du die SSD mit lvm (ohne thin) erstellen. Wenn du dann in den Optionen beim erstellen der Disk, Backups mit angibst, wird die ssd als Sicherungsziel angeboten

Und ganz richtig ist meine Aussage auch nicht. Es geht nur nicht über die Oberfläche. Mit den Kommandozeilenbefehlen kannst du auch bei lvm-thin Snapshots kopieren, clonen etc. Aber für Proxmox ist das irrelevant…

Nachtrag:

Und ganz richtig ist meine Aussage auch nicht. Es geht nur nicht über die Oberfläche. Mit den Kommandozeilenbefehlen kannst du auch bei lvm-thin Snapshots kopieren, clonen etc. Aber für Proxmox ist das irrelevant…

Und für die 2TB SSD, ja. Die kannst du über Verzeichnis einbinden. Dann kannst Du darauf Backups anlegen…. (Snapshots haben damit aber nichts zu tun)

Gruß

:crayon:by HarryP: Zusammenführung Doppelpost (bei Änderungen oder hinzufügen von Inhalten bitte die „Bearbeitungsfunktion“ anstatt „Antworten“ zu nutzen)

Dann habe ich dies jetzt so verteilt

root@pve1:~# lsblk 
NAME                                  MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
sda                                     8:0    0   1.8T  0 disk 
└─sda1                                  8:1    0   1.8T  0 part /mnt/pve/ext4-ssd
sdb                                     8:16   0  16.4T  0 disk 
└─sdb1                                  8:17   0  16.4T  0 part /mnt/pve/ext4-hdd
nvme1n1                               259:0    0 238.5G  0 disk 
├─nvme1n1p1                           259:1    0  1007K  0 part 
├─nvme1n1p2                           259:2    0     1G  0 part /boot/efi
└─nvme1n1p3                           259:3    0   237G  0 part 
  ├─pve-swap                          252:0    0     8G  0 lvm  [SWAP]
  └─pve-root                          252:1    0   229G  0 lvm  /
nvme0n1                               259:4    0   1.8T  0 disk 
├─lvmthin--nvme-lvmthin--nvme_tmeta   252:2    0  15.9G  0 lvm  
│ └─lvmthin--nvme-lvmthin--nvme-tpool 252:4    0   1.8T  0 lvm  
│   ├─lvmthin--nvme-lvmthin--nvme     252:5    0   1.8T  1 lvm  
│   └─lvmthin--nvme-vm--200--disk--0  252:6    0     8G  0 lvm  
└─lvmthin--nvme-lvmthin--nvme_tdata   252:3    0   1.8T  0 lvm  
  └─lvmthin--nvme-lvmthin--nvme-tpool 252:4    0   1.8T  0 lvm  
    ├─lvmthin--nvme-lvmthin--nvme     252:5    0   1.8T  1 lvm  
    └─lvmthin--nvme-vm--200--disk--0  252:6    0     8G  0 lvm  
root@pve1:~# 

Noch mal der Hinweis, dass Backups außerhalb des Systems aufbewahrt werden sollten. :wink:

Aber ansonsten kann man das so machen. Ich würde die 18TB allerdings anders nutzen. Kannst Du sie nicht ans NAS hängen? Raspi mit openmediavault? So kannst Du da auch „nur“ Backups, Images der virtuellen Systeme etc. speichern. Daten wie von den Handys sind so nur schlecht machbar.

Eine alternative wäre eine virtuelle Maschine mit Nextcloud oder ähnlichem und die Platte an die VM durchreichen (würde ich nur machen wenn keine USB Platte). Aber auch da der Hinweis, das ist kein Backup… :love_you_gesture: