raidz2 Disk ersetzen

vikozo

Renowned Member
May 4, 2014
781
30
93
suisse
www.wombat.ch
Hallo

ich habe ein ZFS raidz2 und müsste eine defekte Disk ersetzen.
Die Defekte Disk ist bereits draussen.

Nur um Sicher zu sein
-füge die neue Disk im Server
- unter Nodes - pve-01 unter Disks erscheint die neue Festplatte
- ich wähle diese neue aus und drücke [initialise Disk with GPT]

wird dann auch automatisch die Infos auf die neue Disk geschrieben oder gibt es noch einen weiteren Schritt, oder sonstwas zu beachten?

gruss
vinc
 
Ist es der Pool in dem PVE installiert ist oder ein weiterer?
 
Okay, je nachdem welcher Bootloader verwendet wird ist das vorgehen ein wenig anders.

Wenn du PVE mit Version 6 im UEFI Modus installiert hast, sollte `systemd-boot` verwendet werden. Ansonsten GRUB.

Für `systemd-boot` ist es in der offiziellen Docu beschrieben [0]. Kapitel 3.8.4 unter-unter Überschrift "Changing a failed bootable device when using systemd-boot".

Falls Grub als Bootloader verwendet wird, ist das Prozedere in der Wiki erklärt [1].

Viel Glück!


[0] https://pve.proxmox.com/pve-docs/pve-admin-guide.html#chapter_zfs
[1] https://pve.proxmox.com/wiki/ZFS:_Tips_and_Tricks#Replacing_a_failed_disk_in_the_root_pool
 
Das passiert alles nicht im GUI .
Das schwarze magische Fenster wird dir nicht erspart bleiben ;)

Wenn du systemd-boot verwendest solltest du folgende Datei haben /etc/kernel/cmdline.

Um das schnell zu überprüfen kannst du ein
Code:
ls /etc/kernel/cmdline
ausführen.

Wenn du wieder den Pfad siehst, existiert die Datei. Wenn du eine "cannot access" Fehlermeldung bekommst bootest du mit GRUB.
 
@aaron

also Grub bei mir
im Wiki dazu werden unter
# zpool status -v

die Disk mit sda sdb sdc angegeben bei mir erscheint dies nicht sonder direkt den disk Name

NAME STATE READ WRITE CKSUM
rpool DEGRADED 0 0 0
raidz2-0 DEGRADED 0 0 0
ata-ST6000NM0115-1YZ110_ZAD9ATFR-part3 ONLINE 0 0 0
ata-TOSHIBA_HDWT360_8910A001FB1G-part3 ONLINE 0 0 0
ata-TOSHIBA_HDWE160_49PRK0P9FB8G-part3 ONLINE 0 0 0
3721057395899690472 UNAVAIL 0 0 0 was /dev/disk/by-id/ata-ST6000VN0033-2EE110_ZAD9Z7RQ-part3

errors: No known data errors
 
Du findest die Festplatten mit dem Namen unter /dev/disk/by-id/*
Die neue würde ich auch darüber einbinden. Der Vorteil ist, dass sie explizit angesprochen werden und du in den zpool status Infos auch gleich mehr Details zu den Festplatten siehst (Typ, Seriennummer).
 
@aaron danke für die Geduld, im GUI wird es mit dev/sda devsdb dev/sdc angegeben - also wird der Ersatz wohl auch wieder ein sdd werden wie vorher
---
muss ich die Disk explizit offline setzen wenn die alte schon als UNAVAIL markiert ist und ausgebaut ist?
 
Ja da wird sie als sdX auftauchen.
 
@aaron

ich folgte dem Link
https://pve.proxmox.com/wiki/ZFS:_Tips_and_Tricks#Replacing_a_failed_disk_in_the_root_pool

und /dev/sdd ist die neue/ersetzte Disk


# sgdisk --replicate=/dev/sdd /dev/sda
The operation has completed successfully.

# sgdisk --randomize-guids /dev/sdd
The operation has completed successfully.

# grub-install /dev/sdd
Installing for i386-pc platform.
Installation finished. No error reported.

# zpool replace rpool /dev/sdd
cannot replace /dev/sdd with /dev/sdd: no such device in pool

aber
# zpool status -v
pool: rpool
state: DEGRADED
status: One or more devices could not be used because the label is missing or
invalid. Sufficient replicas exist for the pool to continue
functioning in a degraded state.
action: Replace the device using 'zpool replace'.
see: http://zfsonlinux.org/msg/ZFS-8000-4J
scan: scrub repaired 0B in 0 days 00:07:40 with 0 errors on Sun Feb 9 00:31:41 2020
config:

NAME STATE READ WRITE CKSUM
rpool DEGRADED 0 0 0
raidz2-0 DEGRADED 0 0 0
ata-ST6000NM0115-1YZ110_ZAD9ATFR-part3 ONLINE 0 0 0
ata-TOSHIBA_HDWT360_8910A001FB1G-part3 ONLINE 0 0 0
ata-TOSHIBA_HDWE160_49PRK0P9FB8G-part3 ONLINE 0 0 0
3721057395899690472 UNAVAIL 0 0 0 was /dev/disk/by-id/ata-ST6000VN0033-2EE110_ZAD9Z7RQ-part3

errors: No known data errors

so die frage welcher befehlt fehlt noch?
 
Der Pool hat die Festplatte nie als /dev/sdd gekannt.

Was du probieren kannst ist
Bash:
zpool replace rpool /dev/disk/by-id/ata-ST6000VN0033-2EE110_ZAD9Z7RQ-part3 /dev/disk/by-id/<neue festplatte>-part3

oder folgendes um die interne ID die ZFS für die fehlende Festplatte hat:
Bash:
zpool replace rpool 3721057395899690472 /dev/disk/by-id/<neue festplatte>-part3
 
@aaron für mich bleibt es verwirrend

root@pve-04:/dev/disk/by-id# ls ata-ST6000VN0033* -alth
lrwxrwxrwx 1 root root 10 Apr 27 18:54 ata-ST6000VN0033-2EE110_ZADAFYXN-part1 -> ../../sdd1
lrwxrwxrwx 1 root root 10 Apr 27 18:54 ata-ST6000VN0033-2EE110_ZADAFYXN-part9 -> ../../sdd9
lrwxrwxrwx 1 root root 9 Apr 27 18:54 ata-ST6000VN0033-2EE110_ZADAFYXN -> ../../sdd

ata-ST6000VN0033-2EE110 entspricht der neuen Disk wie auch im Proxmox GUI ersichtlich aber ein -part3 gibt es nicht!
 
In dem von die zu Beginn geposteten zpool Output sieht man folgendes:
Code:
NAME                                        STATE     READ WRITE CKSUM
       rpool                                       DEGRADED     0     0     0
         raidz2-0                                  DEGRADED     0     0     0
           ata-ST6000NM0115-1YZ110_ZAD9ATFR-part3  ONLINE       0     0     0
           ata-TOSHIBA_HDWT360_8910A001FB1G-part3  ONLINE       0     0     0
           ata-TOSHIBA_HDWE160_49PRK0P9FB8G-part3  ONLINE       0     0     0
           3721057395899690472                     UNAVAIL      0     0     0  was /dev/disk/by-id/ata-ST6000VN0033-2EE110_ZAD9Z7RQ-part3

Die ganzen Festplatten haben 3 Partitionen. Die erste ist für Grub, die zweite ist die EFI partition (damit man später auch mal von legacy auf UEFI boot wechseln kann) und die dritte ist die für ZFS.

Hast du wie in den Anleitungen die Partitionstabellen mit sgdisk geklont und die PartitionsIDs neu generiert? So wie die Partitionen jetzt auf der neuen Festplatte sind, schaut es nämlich nicht so aus.
 

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!