ZFS Disktausch bei Raid 1 - VM Storage

harry1983

Member
Feb 17, 2022
89
15
13
41
Grüss euch,

Derzeit habe ich einen zfs pool für meine VMs als Storage mit 2x 500GB NVMEs im Raid1 und nun einfach das Thema das die Disken voll werden. Daher möchte ich diese nun gerne gegen 2x 1TB NVME tauschen.
Da mein Mainboard nur 2 NVME Slots hat muss ich dies on the fly machen. Im Netz habe ich diverse Guides gefunden wie man eine Disk ersetzt wenn sie kaputt wird, nicht aber wenn die Disken eigentlich voll in Ordnung sind. Auf dem zfs Pool ist nicht das Proxmox System oben, sondern wie gesagt nur die VMs.

Wie löse ich sowas am Besten mit einer kurzen Downtime. Hat jemand einen Best practice Weg für mich? Wär euch echt dankbar.

Danke vorab

lg Harry
 
Last edited:
Das wäre übrigens der aktuelle zpool Output:

Code:
  pool: VMStorage
 state: ONLINE
  scan: scrub repaired 0B in 00:06:19 with 0 errors on Sun Sep 11 00:30:20 2022
config:

        NAME                                            STATE     READ WRITE CKSUM
        VMStorage                                       ONLINE       0     0     0
          mirror-0                                      ONLINE       0     0     0
            nvme-Samsung_SSD_980_500GB_S64DNF0R500307H  ONLINE       0     0     0
            nvme-Samsung_SSD_980_500GB_S64DNF0R500312D  ONLINE       0     0     0

errors: No known data errors
 
Ja das mit "sollte funktionieren" hab ich grad nicht so gerne wenn die Downtime nur kurz sein sollte ;) Du verstehst worauf ich raus will. Deswegen die Frage nach einem Best practice von jemanden der dies schon gemacht hat :) Aber danke schonmal für den Link.

Ist im Prinzip ein Standard Plattentausch unter ZFS nur mit dem Addon
$ sudo zpool set autoexpand=on pool-Storage

Wenn dir das zu unsicher ist, kannst du dir ja auch ne VM erstellen mit 2 Disks und das vorher mal ausprobieren - damit lassen sich solche Szenarien gut simulieren. Würde ich auch immer empfehlen.
 
Hallo harry1983,

ich habe bei einem RaidZ1 Pool mit 4x 256 GB SSD einen 4 fachen Austausch auf 4x Crucial MX500 500 GB durchgeführt.

Die neue SSD konnte ich über einen PCIe SATA3 Adapter einbinden und dann in den Pool aufnehmen:.
Nur ganz kurz, das Script finde ich gerade nicht mehr.

Die Partitionen wurden per Hand mit der selben Größe angelegt.
Dann mussten die Partitionen der SSD noch den EFI Datensatz erhalten und so in das laufende System eingebunden werden.

Dann konnte der ZFS-Pool auf die Partition 3 eingebunden werden.

Nachdem das 4 mal durchgeführt war, wurde nach einen Neustart der Pool noch nicht auf die maximale Größe erweitert.

zpool set autoexpand=on <pool-Storage> reichte nicht aus.

Ich musste noch anschließend per cfdisk o.a. tools die Partition 3 auf seine maximale Größe erweitern.
Danach hatte ich noch mal gebootet und es war vollbracht.

Natürlich hatte ich vorher alle Daten der LXC und VM auf den Proxmox BS und auch auf einen weiteren Proxmox PVE mit Pool Raidz1 mit 2x 1 GByte 3,5" WD NAS Red und SpecialDevice Mirror 2x 256 GB SSD gesichert.

Siehe:

a) https://youtu.be/a3QZj-QCKBQ
b) https://www.thomas-krenn.com/de/wiki/Boot-Device_Replacement_-_Proxmox_ZFS_Mirror_Disk_austauschen
c) https://dev.to/thoughtrefraction/tips-for-replacing-a-proxmox-boot-drive-in-a-pool-45dg
d) https://pve.proxmox.com/pve-docs/chapter-sysadmin.html#_zfs_administration

Für meinen Fall konnte ich mir Helfen und hatte noch genügend Backup für den Fall der Fälle.

Evtl. kannst Du mit einem PCEe M.2 NVME Adapter temporär Arbeiten um den Pool im Betrieb sicher um zu stellen.
 
Hallo harry1983,

ich habe bei einem RaidZ1 Pool mit 4x 256 GB SSD einen 4 fachen Austausch auf 4x Crucial MX500 500 GB durchgeführt.

Die neue SSD konnte ich über einen PCIe SATA3 Adapter einbinden und dann in den Pool aufnehmen:.
Nur ganz kurz, das Script finde ich gerade nicht mehr.

Die Partitionen wurden per Hand mit der selben Größe angelegt.
Dann mussten die Partitionen der SSD noch den EFI Datensatz erhalten und so in das laufende System eingebunden werden.

Dann konnte der ZFS-Pool auf die Partition 3 eingebunden werden.

Nachdem das 4 mal durchgeführt war, wurde nach einen Neustart der Pool noch nicht auf die maximale Größe erweitert.

zpool set autoexpand=on <pool-Storage> reichte nicht aus.

Ich musste noch anschließend per cfdisk o.a. tools die Partition 3 auf seine maximale Größe erweitern.
Danach hatte ich noch mal gebootet und es war vollbracht.

Natürlich hatte ich vorher alle Daten der LXC und VM auf den Proxmox BS und auch auf einen weiteren Proxmox PVE mit Pool Raidz1 mit 2x 1 GByte 3,5" WD NAS Red und SpecialDevice Mirror 2x 256 GB SSD gesichert.

Siehe:

a) https://youtu.be/a3QZj-QCKBQ
b) https://www.thomas-krenn.com/de/wiki/Boot-Device_Replacement_-_Proxmox_ZFS_Mirror_Disk_austauschen
c) https://dev.to/thoughtrefraction/tips-for-replacing-a-proxmox-boot-drive-in-a-pool-45dg
d) https://pve.proxmox.com/pve-docs/chapter-sysadmin.html#_zfs_administration

Für meinen Fall konnte ich mir Helfen und hatte noch genügend Backup für den Fall der Fälle.

Evtl. kannst Du mit einem PCEe M.2 NVME Adapter temporär Arbeiten um den Pool im Betrieb sicher um zu stellen.
Das Thema ist schon gelöst worden mit Hilfe der obigen Anleitung von jsterr. Trotzdem danke ;)
 

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!