ZFS erweitern

JohnD

Renowned Member
Oct 7, 2012
84
12
73
Hallo zusammen,

ich hab hier einen Proxmox 4 Server mit 2x NVMe SSDs (je 512GB) und 2xSATA 4 TB HDDs.

Die zwei SSDs bilden einen ZFS Pool mit Dedup und stellen zusätzlich Partitionen für L2 Arc und Zil für den HDD Pool bereit.

Insgesamt läuft das ganze auch sehr zufriedenstellend. Weit besser als das vorherige Setup mit LVM und DM-Cache.

Nun hätte ich gerne auf dem HDD Pool mehr Platz und mehr Performance und würde ihn gerne einfach mit 2 weiteren 4 TB HDDs erweitern.

Wie gehe ich dafür am besten vor?

Danke.
 
Hi,

Du hast 2 Möglichkeiten.
Entweder erweitern was einen extent bei LVM gleich kommt oder pool neu anlegen.

Was ist der HDD pool ? mirror stripe .....

siehe
Code:
man zpool
Section add
 
Danke für deine Antwort.

Aktuell Mirror. Ich hätte gerne am Ende eine Raid 10 ähnliche Konstruktion. Geht das?

Ich kann/will den Pool leider nicht neu anlegen.
 
Du kannst mit "add -o ashift=12 <pool> mirror <dev1> <dev2>" einen Raid 10 anlegen, das Problem ist halt das es kein echter ist, da zfs leider kein rebalance kennt.
Das heißt du schreibst bei neuen Daten immer auf die 2 neuen Platten bis diese den gleichen Füllstand haben wie die anderen 2. Erst dann wird es ein richtiger Raid 10.

P.S. ashift sollte den Platten und pool entsprechend gesetzt werden.
 
Nochmal Danke.

Ich hatte gehofft es würde fürs "Balancing" ausreichen ein Backup einzelner VMs zu erstellen und dieses zu importieren.
Aber wenn ZFS erst mal die neuen Platten bis zum gleichen Stand füllt, habe ich dann ja einfach nur die VMs auf den anderen Platte statt gleichmäßig verteilt.
Hmm schwierig...

Heißt ich müsste quasi ein Backup aller VMs erstellen, alle VMs löschen und dann alles importieren?
 
Gibt es eine Möglichkeit mir anzeigen zu lassen, wie die Daten in einem Pool verteilt sind?
Ich würde jetzt gerne mal probieren 2 weitere HDDs hinzuzufügen, weiß aber nicht, wie ich monitoren soll wie sich die Daten dann verteilen.
 
Gibt es eine Möglichkeit mir anzeigen zu lassen, wie die Daten in einem Pool verteilt sind?

Klar, mittels

Code:
root@proxmox4 ~ > zpool list -v
NAME   SIZE  ALLOC   FREE  EXPANDSZ   FRAG    CAP  DEDUP  HEALTH  ALTROOT
rpool  2,60T   889G  1,73T         -    22%    33%  1.00x  ONLINE  -
  mirror   888G   296G   592G         -    23%    33%
    sda2      -      -      -         -      -      -
    sdb2      -      -      -         -      -      -
  mirror   888G   296G   592G         -    23%    33%
    sdc      -      -      -         -      -      -
    sdd      -      -      -         -      -      -
  mirror   888G   296G   592G         -    22%    33%
    sde      -      -      -         -      -      -
    sdf      -      -      -         -      -      -

Heißt ich müsste quasi ein Backup aller VMs erstellen, alle VMs löschen und dann alles importieren?

Ich würde den zpool erweitern und jedes dataset einmal via send/receive auf sich selbst (z.B. anderen Namen) übertragen. Somit wird jedes Dataset verteilt geschrieben. Das lässt sich gut scripts ala:

Für alle Datasets
1) send/receive in ${name}-neu
2) löschen ${name}
3) umbenennen ${name}-neu in ${name}
 

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!